New test; for odd case of token pasting
From-SVN: r27937
This commit is contained in:
parent
95bfd4834e
commit
e9edf69f94
24
gcc/testsuite/gcc.dg/990703-1.c
Normal file
24
gcc/testsuite/gcc.dg/990703-1.c
Normal file
@ -0,0 +1,24 @@
|
||||
/* { dg-do run } */
|
||||
|
||||
/* Test of obscure case in token pasting in the preprocessor.
|
||||
I can't think of any way to make this problem provoke a syntax error.
|
||||
Based on a bug report by Manfred Hollstein. */
|
||||
|
||||
#include <string.h>
|
||||
|
||||
#define SP1(x, y) SP2(x, y)
|
||||
#define SP2(x, y) SP3(x##y)
|
||||
#define SP3(x) #x
|
||||
#define MZ -0
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
char *x = SP1(0,MZ);
|
||||
char *y = "0-0" /* should be the expansion of SP1(0,MZ) */
|
||||
|
||||
if(strcmp(x, y))
|
||||
return 1;
|
||||
else
|
||||
return 0;
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user