This is the mail archive of the
libc-alpha@sources.redhat.com
mailing list for the glibc project.
Re: deprecated GNU ## extension used
- To: Andreas Jaeger <aj at suse dot de>
- Subject: Re: deprecated GNU ## extension used
- From: Ulrich Drepper <drepper at redhat dot com>
- Date: 11 Jul 2000 08:42:36 -0700
- 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>
- Reply-To: drepper at cygnus dot com (Ulrich Drepper)
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?
No. The GNU syntax is not redundant. It is superior to the ISO C99
stuff and therefore cannot go away.
Zack, Neil, you have to remove this. How else will you write
something like the `eprintf' macro from the manual? The change
Andreas proposed will not work if no argument is provided.
The GNU extension must exist in parallel since I don't think changing
the ISO C99 extension to allow this case is a good idea. You can
leave in the message about using this feature in programs compiled
with pedantic but even then there should be feature like __extension__
to disable it.
--
---------------. ,-. 1325 Chesapeake Terrace
Ulrich Drepper \ ,-------------------' \ Sunnyvale, CA 94089 USA
Red Hat `--' drepper at redhat.com `------------------------