Attached is a simple .c file (not even a program, intended for input for the
preprocessor) and the output when run with the processors from the latest
RH7 errata GCC 2.96 and the RH7 KGCC 2.91.66 (egcs 1.1.2).  I included the
output from stderr of the newer preprocessor as well.

This should be a suitable simple testcase for a preprocessor.  Maybe it
would be good to see the results on other C preprocessors like Solaris C so
that we can get a good idea if gcc should continue to support this even
though I don't think it is specifically mentioned in any C standards.

-Dave

#define Bad VERY_Bad

#define A2(a) PREFIX_##a
#define A1(a) (A2(##a))

A1(Good);
A1(Bad);
A2(Bad);

#define B2(a) a
#define B1(a) (B2(##a))

B1(Good);
B1(Bad);
B2(Bad);

# 1 ""






(PREFIX_Good   ) ;
(PREFIX_Bad   ) ;
PREFIX_Bad  ;




( Good   ) ;
( VERY_Bad    ) ;
 VERY_Bad   ;

# 1 ""






(PREFIX_Good);
(PREFIX_VERY_Bad);
PREFIX_Bad;




(Good);
(VERY_Bad);
VERY_Bad;
<stdin>:5:18: warning: nothing can be pasted after this token
<stdin>:12:18: warning: nothing can be pasted after this token

Reply via email to