-x assembler-with-cpp behavior different on different unixes.
Karel Gardas
gardask@gmail.com
Fri Aug 8 21:52:00 GMT 2014
Hi Rainer,
On Fri, Aug 8, 2014 at 11:04 PM, Rainer Orth
<ro@cebitec.uni-bielefeld.de> wrote:
> Hi Karel,
>
>> More information: It looks like gcc driver invokes cc1 with -P option
>> which switches off linemakers on Solaris. On Linux cc1 is invoked
>> without -P and so linemakers are presented. The question is why on
>> Solaris -P is added to the options since I don't use it myself. It's
>> inserted by gcc itself...
>
> you can find this explained in gcc/config/i386/sol2.h (so this
> behaviour is Solaris/x86-specific):
>
> /* Solaris 2/Intel as chokes on #line directives before Solaris 10. */
> #undef CPP_SPEC
> #define CPP_SPEC "%{,assembler-with-cpp:-P} %(cpp_subtarget)"
Thanks a lot for this reference! Hmm, I see I can't do with this
anything since I'd like to use as much as possible Solaris bundled GNU
C.
> With Solaris 9 support gone on mainline, this can be revisited now, but
> this won't change anything for released versions.
What shall I do for this to be at least considered?
> Apart from that, why are you invoking gcc with -x assembler-with-cpp
> when the input is clearly anything but assembler input? You're
> obviously lying to the compiler, and I'd go as far as claiming that you
> get what you deserve: garbage in, garbage out.
>
:-) fair enough, but GHC requires to use some CPP and GNU C's provided
one is very comfortable. Well, at least except on Solaris as you
see...
Thanks a lot for your help!
Karel
More information about the Gcc
mailing list