On 29 March 2011 21:52, Jonathan Wakely wrote: >> >> error: missing binary operator before token "(" > > That's an error from the preprocessor, so -E is probably working (i.e. > it's not insisting on compiling) but it thinks the input is invalid so > it doesn't produce output. You could try using -E -fdirectives-only which disables macro expansion, but still processes directives such as #define and #if, to see if the results are what you expect.