This is the mail archive of the
libc-alpha@sources.redhat.com
mailing list for the glibc project.
Re: deprecated GNU ## extension used
- To: drepper at cygnus dot com (Ulrich Drepper)
- Subject: Re: deprecated GNU ## extension used
- From: Andreas Jaeger <aj at suse dot de>
- Date: 11 Jul 2000 18:03:41 +0200
- Cc: libc-alpha Mailinglist <libc-alpha at sourceware dot cygnus dot com>,Zack Weinberg <zack at wolery dot cumb dot org>,Neil Booth <NeilB at earthling dot net>
- References: <u88zv9j90q.fsf@gromit.rhein-neckar.de><m3hf9wk70z.fsf@otr.mynet.cygnus.com>
>>>>> Ulrich Drepper writes:
Uli> Andreas Jaeger <aj@suse.de> writes:
>> Compiling glibc with the current GCC I get e.g. this warning:
>> In file included from programs/ld-numeric.c:30:
>> programs/linereader.h:156:59: warning: deprecated GNU ## extension used
>>
>> This macro used is:
>> #define lr_error(lr, fmt, args...) \
>> error_at_line (0, 0, lr->fname, lr->lineno, fmt, ## args)
>>
>> in the following line:
>> lr_error (lr, _("trailing garbage at end of line"));
>>
>> Should we care about this?
Uli> No. The GNU syntax is not redundant. It is superior to the ISO C99
Uli> stuff and therefore cannot go away.
Uli> Zack, Neil, you have to remove this. How else will you write
Uli> something like the `eprintf' macro from the manual? The change
Uli> Andreas proposed will not work if no argument is provided.
You can only write the eprintf example with one argument less,
e.g. as:
eprintf (...)
with all my patches I had to remove one argument - in case that the
variable list was empty :-(
Uli> The GNU extension must exist in parallel since I don't think changing
Uli> the ISO C99 extension to allow this case is a good idea. You can
Uli> leave in the message about using this feature in programs compiled
Uli> with pedantic but even then there should be feature like __extension__
Uli> to disable it.
Andreas
--
Andreas Jaeger
SuSE Labs aj@suse.de
private aj@arthur.inka.de