macro_fn_lparen_scan.c revision 5f016e2cb5d11daeb237544de1c5d59f20fe1a6e
1// RUN: clang -E %s | grep 'noexp: foo y' && 2// RUN: clang -E %s | grep 'expand: abc' && 3// RUN: clang -E %s | grep 'noexp2: foo nonexp' && 4// RUN: clang -E %s | grep 'expand2: abc' 5 6#define A foo 7#define foo() abc 8#define X A y 9 10// This should not expand to abc, because the foo macro isn't followed by (. 11noexp: X 12 13 14// This should expand to abc. 15#undef X 16#define X A () 17expand: X 18 19 20// This should be 'foo nonexp' 21noexp2: A nonexp 22 23// This should expand 24expand2: A ( 25) 26 27 28