/* { dg-do run } */ | |
/* Test for odd corner cases in stringizing/pasting. | |
Taken more or less verbatim from C99 section 6.10.3.3. */ | |
#include <stdlib.h> | |
#include <string.h> | |
#define hash_hash # ## # | |
#define mkstr(a) # a | |
#define in_between(a) mkstr(a) | |
#define join(c, d) in_between(c hash_hash d) | |
const char p[] = join(x, y); | |
const char q[] = "x ## y"; | |
int | |
main (void) | |
{ | |
if (strcmp (p, q)) | |
abort (); | |
return 0; | |
} |