Subject: Re: __STDC__ in cdefs_elf.h
To: None <tls@rek.tjls.com>
From: Garrett D'Amore <garrett_damore@tadpole.com>
List: tech-toolchain
Date: 09/08/2006 14:09:46
Thor Lancelot Simon wrote:
> On Fri, Sep 08, 2006 at 01:44:11PM -0700, Jason Thorpe wrote:
>   
>> On Sep 8, 2006, at 1:24 PM, Thor Lancelot Simon wrote:
>>
>>     
>>> This is because of one of my least-favorite bogosities about the GNU
>>> compilers: they implement C token pasting and stringification in the
>>> C language frontend instead of in the C preprocessor.  This has
>>> annoyed me periodically for about a decade now; I wish it would annoy
>>> someone with more GCC clue sufficiently to fix it!  :-)
>>>       
>> What?  Nonsense.  Back when it had a separate C preprocessor, it was  
>> certainly implemented there.
>>     
>
> Nope.  I've been flummoxed by this problem with the GCC C preprocessor
> since approximately 1995.  Ask erh if you don't believe me, we spent
> most of a day scratching our heads until we suddenly realized why the
> header files for our C-like (but with a different actual compiler)
> language weren't being handled properly by GCC's cpp.
>
> Get an old version of GCC and try it, if you want -- cc will get pasting
> and stringification, but no other user of cpp does, which is because the
> code to do it is not _in_ cpp, AFAICT.
>
> Thor
>   

Certainly that gibes with what I've seen in the assembler.  Removing the
old K&R pasting (/**/) techniques breaks our assembler files.

I will file a gcc bug/complaint on it.

    -- Garrett

-- 
Garrett D'Amore, Principal Software Engineer
Tadpole Computer / Computing Technologies Division,
General Dynamics C4 Systems
http://www.tadpolecomputer.com/
Phone: 951 325-2134  Fax: 951 325-2191