Subject: Re: __STDC__ in cdefs_elf.h
To: Alan Barrett <>
From: Garrett D'Amore <>
List: tech-kern
Date: 09/08/2006 13:14:27
I just found out why I can't clean this up.

The assembler (gas) we use doesn't support ANSI C style token pasting. 
Changing this busted builds of locore.S.

One could (probably quite reasonably) suggest that maybe the assembler
language should be converted to support the ANSI token pasting rules,
but I imagine there may be conflicts with prior uses  of the "#"
character in certain assembly languages.

Anyway, I withdraw the original suggestion.  Too bad we have to carry
that baggage around, though.

    - Garrett

Alan Barrett wrote:
> On Fri, 08 Sep 2006, Garrett D'Amore wrote:
>>>> There are a number of tests for __STDC__ in cdefs_elf.h.  [...]
>> So the only other concern, is if people want to use these in userland
>> code with gcc -traditional or some such.
> The only use of a K&R environment that I care about is in cross
> building: If somebody has a host environment with K&R C, then I want
> them to be able to run to get a NetBSD release.  I haven't
> tested this, though, and perhaps it's already a lost cause.
>> It probably wouldn't be a bad idea to do a sweep for other occurrences
>> of __STDC__ while we're at it.
> For all uses that are not involved with bootstrapping, I heartily
> endorse removing __P() and __STDC__ and similar cruft.
> --apb (Alan Barrett)

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