/* Test for proper disabling of macros within their own expansions. */ | |
/* { dg-do compile } */ | |
/* The following is a trick to evaluate a complex boolean expression | |
at compile time, inspired by autoconf 2.13's sizeof-detection. */ | |
enum { a = 4, f = 3 }; | |
#define a1(y) (y+2) | |
#define a2(y) a1(y)+1 | |
#define f a+f | |
char array[(a2(f)) == 10 ? 1 : -1]; |