Those are all things that could fix the problem. But let me ask this another way. Imagine that you travel into the future a decade or three and a computer scientist tells you "pretty much no one gets buffer overflows anymore because of X".
It seems unlikely to me that the answer is going to be ATS, or "we burned down x86".