1// RUN: %clang_cc1 -std=c99 -E %s -o - | FileCheck --check-prefix=CHECK-NONE %s
2
3// RUN: %clang_cc1 -std=gnu89 -E %s -o - \
4// RUN:     | FileCheck --check-prefix=CHECK-GNU-KEYWORDS %s
5// RUN: %clang_cc1 -std=c99 -fgnu-keywords -E %s -o - \
6// RUN:     | FileCheck --check-prefix=CHECK-GNU-KEYWORDS %s
7// RUN: %clang_cc1 -std=gnu89 -fno-gnu-keywords -E %s -o - \
8// RUN:     | FileCheck --check-prefix=CHECK-NONE %s
9
10// RUN: %clang_cc1 -std=c99 -fms-extensions -E %s -o - \
11// RUN:     | FileCheck --check-prefix=CHECK-MS-KEYWORDS %s
12
13void f() {
14// CHECK-NONE: int asm
15// CHECK-GNU-KEYWORDS: asm ("ret" : :)
16#if __is_identifier(asm)
17  int asm;
18#else
19  asm ("ret" : :);
20#endif
21}
22
23// CHECK-NONE: no_ms_wchar
24// CHECK-MS-KEYWORDS: has_ms_wchar
25#if __is_identifier(__wchar_t)
26void no_ms_wchar();
27#else
28void has_ms_wchar();
29#endif
30