Re: Preprocessed output in gcc 4.5.2

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 29 March 2011 21:38, Edward Diener wrote:
> On 3/29/2011 4:18 PM, Jonathan Wakely wrote:
>>
>> On 29 March 2011 21:10, Edward Diener wrote:
>>>
>>> According the the docs an "-E" parameter should produce preprocessed
>>> output.
>>
>> It does.
>>
>>> I add that to the beginning of the g++ or gcc command line but the progam
>>> does not produce the output and insists on compiling. What do I have to
>>> do
>>> to get just preprocessed output in gcc ?
>>
>> Are you still giving -c on the command line too? Use -E instead of
>> that, not in addition to it, otherwise if -c comes later it will
>> override the earlier -E option (which I am guessing is what's
>> happening if you're putting -E at the beginning.)
>>
>> Also be aware the preprocessed output will go into the file specified
>> by -o, so you might want to change "-c -o foo.o" to "-E -o foo.ii"
>
> It gives me a bunch of errors, such as:
>
> 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.

> but refuses to generate any output so that I can see what the preprocessor
> is seeing when I give it the -E option. Absolutely infuriating !

The preprocessor obviously sees the unpreprocessed input.

> Needless to say, using the Wave preprocessor in Boost shows no errors, but
> since gcc is not producing the same thing I don't know why gcc thinks the
> macros I am using is producing the errors it reports.

GCC is complaining about the macros themselves, not their results.


[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux