Home | History | Annotate | Download | only in Preprocessor
      1 // RUN: not %clang_cc1 -E %s 2>&1 | FileCheck %s
      2 // PR2220
      3 
      4 // CHECK: invalid token at start of a preprocessor expression
      5 #if 1 * * 2
      6 #endif
      7 
      8 // CHECK: token is not a valid binary operator in a preprocessor subexpression
      9 #if 4 [ 2
     10 #endif
     11 
     12 
     13 // PR2284 - The constant-expr production does not including comma.
     14 // CHECK: [[@LINE+1]]:14: error: expected end of line in preprocessor expression
     15 #if 1 ? 2 : 0, 1
     16 #endif
     17 
     18 // CHECK: [[@LINE+1]]:5: error: function-like macro 'FOO' is not defined
     19 #if FOO(1, 2, 3)
     20 #endif
     21 
     22 // CHECK: [[@LINE+1]]:9: error: function-like macro 'BAR' is not defined
     23 #if 1 + BAR(1, 2, 3)
     24 #endif
     25 
     26 // CHECK: [[@LINE+1]]:10: error: token is not a valid binary operator
     27 #if (FOO)(1, 2, 3)
     28 #endif
     29