the actual c9x patch

Ulrich Drepper drepper@cygnus.com
Tue Dec 1 10:14:00 GMT 1998


zack@rabi.columbia.edu (Zack Weinberg) writes:

> The patch makes __func__ identical with __FUNCTION__, but this is
> incorrect.  __FUNCTION__ is "" outside functions; __func__ is an
> undefined symbol outside functions.

This will hopefully change in the next draft.  And even if it does not
change in the draft it is too stupid to be followed.

> What are the intended semantics of -std=gnu?  In particular, is the
> library expected to define only C9x stuff when -std=c9x?

This is what you mean by adding -std and not -ansi.  I don't like the
idea to keep -ansi with the old meaning at all.  It should have been
implemented using -std=c89 or so in the first place.

I.e., -std=c89 in fact is what -ansi is in the moment.  You want to
express different versions of GNU C but Ireally don't understand why.
Let there be only one GNU C version.  This is how it always worked,
whenever gcc extended the language.  There always will be a gcc
version which cannot understand what all others can.

And to find out whether the ISO C9x functionality is implemented there
is (will be) the __STDC_VERSION__ symbol set to 199901L available.
I've not yet included it in the patch since some more functionality
from c9x should be implemented before compliance is signalled.

-- 
---------------.      drepper at gnu.org  ,-.   1325 Chesapeake Terrace
Ulrich Drepper  \    ,-------------------'   \  Sunnyvale, CA 94089 USA
Cygnus Solutions `--' drepper at cygnus.com   `------------------------



More information about the Gcc-patches mailing list