One of my classes this quarter is all about making C more safe (yep, back to Cyclone again). His basic premise seems to be: we're never going to get rid of C because at the OS level, we need to be able to manage data and memory at the byte level and we need to be fast. But there are still ways to improve C's reliability without increasing the cost.
From the reading list under "array-bounds checking":
...I'm sorry to be politically incorrect, but for the ACM to then laud "C" and its inventors as a major advance in computer science has to rank right up there with Chamberlain's appeasement of Hitler. http://www.ccs.neu.edu/home/matthias/cquotes.html