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