Is there an option that the GCC preprocessor could generate C source code and filter out irrelevant source code?
For example, a .c
file has a #def
While the -E
option will perform all pre-processing, it also produces some very 'raw' output that might not be what you want (depending on what you want).
If you need to debug a macro expansion that's not doing what you expect, E
is a good way to go. If you simply want to filter out the 'inactive code', but leave the remaining code in more-or-less original form, you might want to look at the answers to the following Stack Overflow question:
It sounds like you want unifdef, not the GCC preprocessor.
Yes. Use the -E
option:
gcc -E foo.c