deprecated GNU ## extension used
Andreas Jaeger
aj@suse.de
Tue Jul 11 09:05:00 GMT 2000
>>>>> 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
More information about the Libc-alpha
mailing list