I know that I can kick the the preprocessor to spit out output with the -E
option in my particular circumstance. For generated code this preprocessor output is
Consider looking at "Son of Unifdef", cited in the answer to Is there a C pre-processor which eliminates #ifdef blocks based on values defined/undefined?. This isn't a visual editor - it would, however, take C code (or code with C preprocessor directives in it) and generate a modified file which you could then compare with the original.
I'm curious about the mention of Informix 4GL (I4GL). The C code it generates is not, AFAIK, laced with #ifdef
constructs. At least, the output was not allowed to contain any when I was in charge of it. (Which version of I4GL are you using?) There are lots of #line
entries; those permit you to chase the generated code back to the corresponding I4GL source. I have a script that converts those into simple C comments so that I can use a debugger (gdb
or dbx
or ... perish the thought, sdb
or adb
) on the compiled code. And I have also seen preprocessors (both cpp
and m4
) used to generate I4GL source code for submission to the I4GL compiler.