This is the mail archive of the libc-alpha@sources.redhat.com mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: deprecated GNU ## extension used


   Date: Wed, 12 Jul 2000 20:55:56 +0900
   From: Neil Booth <NeilB@earthling.net>

   How about:-

   i) The effect of pasting a comma and the placemarker token of a
   variable argument is a placemarker token.

That is incompatible with C99, which requires that concatenating a
comma to a placemarker is a comma.

But if you change "variable argument" to "GNU C rest argument" then
this rule sounds correct.

   ii) The effect of pasting a comma and any other token from a
   variable argument is the two separate tokens.

That sounds correct.  (Surely GCC already does this.)

   iii) For i) and ii) we only warn under -pedantic, otherwise we warn
   normally.

Which warnings are you talking about here?  If you're talking about
the "deprecated ## extension used" warnings, then I disagree.  These
warnings should never be issued, even if -pedantic.  The GNU C macro
varargs extension cannot possibly be used unless the source code
contains a GNU C macro varargs definition, and that macro definition
will cause GCC to issue a diagnostic if -pedantic.  That diagnostic is
enough to satisfy the standard.

The "deprecated GNU ## extension used" warnings are counterproductive,
since they detract from real, useful warnings.  Let's omit them entirely.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]