I wrote a translation framework for C and GCC with the help of John Mitchell and Jim Coker. Included is a complete ANSI C lexer, GNU C lexer, ANSI C parser, GNU C parser, GNU C tree parser and GNU C tree emitter. Everything you would need to create a complete C code transformation system. The reason there is not a specific ANSI C tree parser and tree emitter is that since ANSI C is a proper subset of GNU C, the same tree parser and emitter will work for both. If you wanted to have only an ANSI C tree parser it would be pretty easy to just cut out the GCC extensions.
I've heard of Intel using it to transform the GCC extensions used in the Linux kernel to straight C so they could benchmark various C compilers for the Itanium architecture. It was originally developed for Cisco to instrument code. Possible applications include extending the C language with type safe pointers, instrumenting code, implementing an Aspect Oriented compiler, source code analysis, or generating specialized debugging and profiling code. It's like having a compiler without the executable generations.
Browse the GCC translation framework at http://www.antlr.org/grammar/cgram or download it at http://www.antlr.org/grammar/cgram/cgram.tgz.
Please let me know if you are using it for something interesting!
And of course, I am available as a consultant to help you build tools based on this framework.