This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


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

Re: 2.4.0-test7 spurious '##' patches


On Thu, 31 Aug 2000 21:44:16 -0700, 
Richard Henderson <rth@twiddle.net> wrote:
>On Thu, Aug 31, 2000 at 07:09:00PM +1100, Keith Owens wrote:
>> Compiling 2.4.0-test7 with the latest IA64 toolchain, gcc version
>> 2.96-ia64-000717 snap 000828.  It complained about various include
>> files, "pasting would not give a valid preprocessing token", this
>> version of gcc is a bit more paranoid about the use of '##'.
>
>> -#define dprintk(args...)	dfprintk(FACILITY, ## args)
>> +#define dprintk(args...)	dfprintk(FACILITY, args)
>
>This one isn't.  This is a gcc extension to remove the previous token
>if "args" is empty.  So you'd get
>
>	dfprintk(FACILITY);
>instead of
>	dfprintk(FACILITY, );

I know about that extension and I originally tried
dfprintk(FACILITY , ##args) which is what gcc info recommends, but that
still gave a warning message.  Since this particular macro requires at
least one argument (dprintk() and dfprintk(FACILITY) are meaningless),
it was easier to remove the '##'.


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