Many people thought they are wise enough not to do any such mistake, and they have been all proven wrong. Even such security paranoids as OpenBSD people.
We are using C code all the time, but this code have been checked by thousands of people, and despite this, stack and heap overflows are being found in it all the time.
Risk is too high, and benefit is too small.
Anyway, lex and yacc are available for almost all languages, that's no excuse for using C.
As I was saying, the code is already written in flex, which produces C anyways. In fact, I have gone out of my way to not allocate any string structures, instead relying on flex and its functions to jump around in the various strings. The only place where I actually do store strings in is the list code which is why it is taking so long and is so damned annoying.