Home | History | Annotate | Download | only in Preprocessor
      1 // RUN: %clang_cc1 -E %s | grep 'noexp: foo y'
      2 // RUN: %clang_cc1 -E %s | grep 'expand: abc'
      3 // RUN: %clang_cc1 -E %s | grep 'noexp2: foo nonexp'
      4 // RUN: %clang_cc1 -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 (.
     11 noexp: X
     12 
     13 
     14 // This should expand to abc.
     15 #undef X
     16 #define X A ()
     17 expand: X
     18 
     19 
     20 // This should be 'foo nonexp'
     21 noexp2: A nonexp
     22 
     23 // This should expand
     24 expand2: A (
     25 )
     26 
     27 
     28