diff options
Diffstat (limited to 'test/Preprocessor/macro_fn_lparen_scan.c')
-rw-r--r-- | test/Preprocessor/macro_fn_lparen_scan.c | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/test/Preprocessor/macro_fn_lparen_scan.c b/test/Preprocessor/macro_fn_lparen_scan.c new file mode 100644 index 000000000000..1056fd82341a --- /dev/null +++ b/test/Preprocessor/macro_fn_lparen_scan.c @@ -0,0 +1,27 @@ +// RUN: clang-cc -E %s | grep 'noexp: foo y' && +// RUN: clang-cc -E %s | grep 'expand: abc' && +// RUN: clang-cc -E %s | grep 'noexp2: foo nonexp' && +// RUN: clang-cc -E %s | grep 'expand2: abc' + +#define A foo +#define foo() abc +#define X A y + +// This should not expand to abc, because the foo macro isn't followed by (. +noexp: X + + +// This should expand to abc. +#undef X +#define X A () +expand: X + + +// This should be 'foo nonexp' +noexp2: A nonexp + +// This should expand +expand2: A ( +) + + |