xref: /llvm-project/clang/test/Lexer/update_consecutive_macro_address_space.c (revision 72c373bfdc9860b3d75e72c219b2c81c90bc4364)
1 // RUN: %clang -cc1 -print-stats %s 2>&1 | FileCheck %s
2 // CHECK: 7 local SLocEntries allocated
3 //
4 // Verify that the macro arg expansion is split to two file ids, we have 7 file
5 // ids rather than 6:
6 //   0: invalid file id
7 //   1: main file
8 //   2: builtin file
9 //   3: scratch space for __GCC_[CON|DE]STRUCTIVE_SIZE macros
10 //   4: macro expansion for X
11 //   5: macro arg expansions for 1
12 //   6: macro arg expansions for == 2
13 #define X(x) (int)(x);
func()14 void func() {
15   X(1
16 /*************************************************************************************************/
17 /*************************************************************************************************/
18 /*************************************************************************************************/
19 /*************************************************************************************************/
20 /*************************************************************************************************/
21 /*************************************************************************************************/
22 /*************************************************************************************************/
23 /*************************************************************************************************/
24 /*************************************************************************************************/
25 /*************************************************************************************************/
26 /*************************************************************************************************/
27 /*************************************************************************************************/
28 /*************************************************************************************************/
29 /*************************************************************************************************/
30 /*************************************************************************************************/
31 /*************************************************************************************************/
32 /*************************************************************************************************/
33 /*************************************************************************************************/
34 /*************************************************************************************************/
35 /*************************************************************************************************/
36 == 2);
37 }
38