1 # 1 "defined-syshdr.c" 1 2 /* { dg-do preprocess } */ 3 /* { dg-options "-Wexpansion-to-defined" } */ 4 5 #define defined_outside_sys_hdr defined FOO 6 7 # 36 "some-system-header.h" 1 3 8 9 #define defined_inside_sys_hdr defined FOO 10 11 /* In a system header, it's acceptable. */ 12 #if defined_outside_sys_hdr /* { dg-bogus "may not be portable" } */ 13 #endif 14 15 # 16 "defined-syshdr.c" 2 16 17 /* Back to _not_ in a system header */ 18 19 #if defined_outside_sys_hdr /* { dg-message "may not be portable" } */ 20 #endif 21 22 /* Currently we warn about this, but it is probably a good idea not to. */ 23 24 #if defined_inside_sys_hdr /* { dg-bogus "may not be portable" "" { xfail *-*-* } } */ 25 #endif 26 27 int x; 28