blob: 4ee7a41892b45ab9b066f5cfa61e1b07c870cb17 [file] [log] [blame]
Aaron Ballman2ce598a2019-05-13 21:39:55 +00001// RUN: %clang_cc1 -triple x86_64-pc-linux -std=c++17 -ast-dump=json %s | FileCheck %s
2
3enum {
4 One,
5 Two
6};
7
Aaron Ballman2ce598a2019-05-13 21:39:55 +00008enum E {
9 Three,
10 Four
11};
12
Aaron Ballman2ce598a2019-05-13 21:39:55 +000013enum F : short {
14 Five,
15 Six
16};
17
Aaron Ballman2ce598a2019-05-13 21:39:55 +000018enum struct G {
19 Seven,
20 Eight
21};
22
Aaron Ballman2ce598a2019-05-13 21:39:55 +000023enum class H {
24 Nine,
25 Ten
26};
27
Aaron Ballman2ce598a2019-05-13 21:39:55 +000028enum class I : int {
29 Eleven,
30 Twelve
31};
32
Aaron Ballman60294f92019-06-21 14:37:39 +000033// NOTE: CHECK lines have been autogenerated by gen_ast_dump_json_test.py
34// using --filters=EnumDecl
35
36
37// CHECK: "kind": "EnumDecl",
38// CHECK-NEXT: "loc": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +000039// CHECK-NEXT: "offset": 88,
Aaron Ballman60294f92019-06-21 14:37:39 +000040// CHECK-NEXT: "file": "{{.*}}",
Aaron Ballmana612e342019-06-24 20:07:11 +000041// CHECK-NEXT: "line": 3,
42// CHECK-NEXT: "col": 1,
43// CHECK-NEXT: "tokLen": 4
Aaron Ballman60294f92019-06-21 14:37:39 +000044// CHECK-NEXT: },
45// CHECK-NEXT: "range": {
46// CHECK-NEXT: "begin": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +000047// CHECK-NEXT: "offset": 88,
Aaron Ballman60294f92019-06-21 14:37:39 +000048// CHECK-NEXT: "col": 1,
Aaron Ballmana612e342019-06-24 20:07:11 +000049// CHECK-NEXT: "tokLen": 4
Aaron Ballman60294f92019-06-21 14:37:39 +000050// CHECK-NEXT: },
51// CHECK-NEXT: "end": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +000052// CHECK-NEXT: "offset": 108,
Aaron Ballmana612e342019-06-24 20:07:11 +000053// CHECK-NEXT: "line": 6,
Aaron Ballman60294f92019-06-21 14:37:39 +000054// CHECK-NEXT: "col": 1,
Aaron Ballmana612e342019-06-24 20:07:11 +000055// CHECK-NEXT: "tokLen": 1
Aaron Ballman60294f92019-06-21 14:37:39 +000056// CHECK-NEXT: }
57// CHECK-NEXT: },
58// CHECK-NEXT: "inner": [
59// CHECK-NEXT: {
60// CHECK-NEXT: "id": "0x{{.*}}",
61// CHECK-NEXT: "kind": "EnumConstantDecl",
62// CHECK-NEXT: "loc": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +000063// CHECK-NEXT: "offset": 97,
Aaron Ballmana612e342019-06-24 20:07:11 +000064// CHECK-NEXT: "line": 4,
Aaron Ballman60294f92019-06-21 14:37:39 +000065// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +000066// CHECK-NEXT: "tokLen": 3
Aaron Ballman60294f92019-06-21 14:37:39 +000067// CHECK-NEXT: },
68// CHECK-NEXT: "range": {
69// CHECK-NEXT: "begin": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +000070// CHECK-NEXT: "offset": 97,
Aaron Ballman60294f92019-06-21 14:37:39 +000071// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +000072// CHECK-NEXT: "tokLen": 3
Aaron Ballman60294f92019-06-21 14:37:39 +000073// CHECK-NEXT: },
74// CHECK-NEXT: "end": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +000075// CHECK-NEXT: "offset": 97,
Aaron Ballman60294f92019-06-21 14:37:39 +000076// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +000077// CHECK-NEXT: "tokLen": 3
Aaron Ballman60294f92019-06-21 14:37:39 +000078// CHECK-NEXT: }
79// CHECK-NEXT: },
80// CHECK-NEXT: "name": "One",
81// CHECK-NEXT: "type": {
82// CHECK-NEXT: "qualType": "(anonymous enum at {{.*}}:3:1)"
83// CHECK-NEXT: }
84// CHECK-NEXT: },
85// CHECK-NEXT: {
86// CHECK-NEXT: "id": "0x{{.*}}",
87// CHECK-NEXT: "kind": "EnumConstantDecl",
88// CHECK-NEXT: "loc": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +000089// CHECK-NEXT: "offset": 104,
Aaron Ballmana612e342019-06-24 20:07:11 +000090// CHECK-NEXT: "line": 5,
Aaron Ballman60294f92019-06-21 14:37:39 +000091// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +000092// CHECK-NEXT: "tokLen": 3
Aaron Ballman60294f92019-06-21 14:37:39 +000093// CHECK-NEXT: },
94// CHECK-NEXT: "range": {
95// CHECK-NEXT: "begin": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +000096// CHECK-NEXT: "offset": 104,
Aaron Ballman60294f92019-06-21 14:37:39 +000097// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +000098// CHECK-NEXT: "tokLen": 3
Aaron Ballman60294f92019-06-21 14:37:39 +000099// CHECK-NEXT: },
100// CHECK-NEXT: "end": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000101// CHECK-NEXT: "offset": 104,
Aaron Ballman60294f92019-06-21 14:37:39 +0000102// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000103// CHECK-NEXT: "tokLen": 3
Aaron Ballman60294f92019-06-21 14:37:39 +0000104// CHECK-NEXT: }
105// CHECK-NEXT: },
106// CHECK-NEXT: "name": "Two",
107// CHECK-NEXT: "type": {
108// CHECK-NEXT: "qualType": "(anonymous enum at {{.*}}:3:1)"
109// CHECK-NEXT: }
110// CHECK-NEXT: }
111// CHECK-NEXT: ]
Aaron Ballman2ce598a2019-05-13 21:39:55 +0000112// CHECK-NEXT: }
Aaron Ballman60294f92019-06-21 14:37:39 +0000113
114
115// CHECK: "kind": "EnumDecl",
116// CHECK-NEXT: "loc": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000117// CHECK-NEXT: "offset": 117,
Aaron Ballmana612e342019-06-24 20:07:11 +0000118// CHECK-NEXT: "line": 8,
Aaron Ballman60294f92019-06-21 14:37:39 +0000119// CHECK-NEXT: "col": 6,
Aaron Ballmana612e342019-06-24 20:07:11 +0000120// CHECK-NEXT: "tokLen": 1
Aaron Ballman60294f92019-06-21 14:37:39 +0000121// CHECK-NEXT: },
122// CHECK-NEXT: "range": {
123// CHECK-NEXT: "begin": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000124// CHECK-NEXT: "offset": 112,
Aaron Ballman60294f92019-06-21 14:37:39 +0000125// CHECK-NEXT: "col": 1,
Aaron Ballmana612e342019-06-24 20:07:11 +0000126// CHECK-NEXT: "tokLen": 4
Aaron Ballman60294f92019-06-21 14:37:39 +0000127// CHECK-NEXT: },
128// CHECK-NEXT: "end": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000129// CHECK-NEXT: "offset": 137,
Aaron Ballmana612e342019-06-24 20:07:11 +0000130// CHECK-NEXT: "line": 11,
Aaron Ballman60294f92019-06-21 14:37:39 +0000131// CHECK-NEXT: "col": 1,
Aaron Ballmana612e342019-06-24 20:07:11 +0000132// CHECK-NEXT: "tokLen": 1
Aaron Ballman60294f92019-06-21 14:37:39 +0000133// CHECK-NEXT: }
134// CHECK-NEXT: },
135// CHECK-NEXT: "name": "E",
136// CHECK-NEXT: "inner": [
137// CHECK-NEXT: {
138// CHECK-NEXT: "id": "0x{{.*}}",
139// CHECK-NEXT: "kind": "EnumConstantDecl",
140// CHECK-NEXT: "loc": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000141// CHECK-NEXT: "offset": 123,
Aaron Ballmana612e342019-06-24 20:07:11 +0000142// CHECK-NEXT: "line": 9,
Aaron Ballman60294f92019-06-21 14:37:39 +0000143// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000144// CHECK-NEXT: "tokLen": 5
Aaron Ballman60294f92019-06-21 14:37:39 +0000145// CHECK-NEXT: },
146// CHECK-NEXT: "range": {
147// CHECK-NEXT: "begin": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000148// CHECK-NEXT: "offset": 123,
Aaron Ballman60294f92019-06-21 14:37:39 +0000149// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000150// CHECK-NEXT: "tokLen": 5
Aaron Ballman60294f92019-06-21 14:37:39 +0000151// CHECK-NEXT: },
152// CHECK-NEXT: "end": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000153// CHECK-NEXT: "offset": 123,
Aaron Ballman60294f92019-06-21 14:37:39 +0000154// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000155// CHECK-NEXT: "tokLen": 5
Aaron Ballman60294f92019-06-21 14:37:39 +0000156// CHECK-NEXT: }
157// CHECK-NEXT: },
158// CHECK-NEXT: "name": "Three",
159// CHECK-NEXT: "type": {
160// CHECK-NEXT: "qualType": "E"
161// CHECK-NEXT: }
162// CHECK-NEXT: },
163// CHECK-NEXT: {
164// CHECK-NEXT: "id": "0x{{.*}}",
165// CHECK-NEXT: "kind": "EnumConstantDecl",
166// CHECK-NEXT: "loc": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000167// CHECK-NEXT: "offset": 132,
Aaron Ballmana612e342019-06-24 20:07:11 +0000168// CHECK-NEXT: "line": 10,
Aaron Ballman60294f92019-06-21 14:37:39 +0000169// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000170// CHECK-NEXT: "tokLen": 4
Aaron Ballman60294f92019-06-21 14:37:39 +0000171// CHECK-NEXT: },
172// CHECK-NEXT: "range": {
173// CHECK-NEXT: "begin": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000174// CHECK-NEXT: "offset": 132,
Aaron Ballman60294f92019-06-21 14:37:39 +0000175// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000176// CHECK-NEXT: "tokLen": 4
Aaron Ballman60294f92019-06-21 14:37:39 +0000177// CHECK-NEXT: },
178// CHECK-NEXT: "end": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000179// CHECK-NEXT: "offset": 132,
Aaron Ballman60294f92019-06-21 14:37:39 +0000180// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000181// CHECK-NEXT: "tokLen": 4
Aaron Ballman60294f92019-06-21 14:37:39 +0000182// CHECK-NEXT: }
183// CHECK-NEXT: },
184// CHECK-NEXT: "name": "Four",
185// CHECK-NEXT: "type": {
186// CHECK-NEXT: "qualType": "E"
187// CHECK-NEXT: }
188// CHECK-NEXT: }
189// CHECK-NEXT: ]
Aaron Ballman2ce598a2019-05-13 21:39:55 +0000190// CHECK-NEXT: }
Aaron Ballman60294f92019-06-21 14:37:39 +0000191
192
193// CHECK: "kind": "EnumDecl",
194// CHECK-NEXT: "loc": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000195// CHECK-NEXT: "offset": 146,
Aaron Ballmana612e342019-06-24 20:07:11 +0000196// CHECK-NEXT: "line": 13,
Aaron Ballman60294f92019-06-21 14:37:39 +0000197// CHECK-NEXT: "col": 6,
Aaron Ballmana612e342019-06-24 20:07:11 +0000198// CHECK-NEXT: "tokLen": 1
Aaron Ballman60294f92019-06-21 14:37:39 +0000199// CHECK-NEXT: },
200// CHECK-NEXT: "range": {
201// CHECK-NEXT: "begin": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000202// CHECK-NEXT: "offset": 141,
Aaron Ballman60294f92019-06-21 14:37:39 +0000203// CHECK-NEXT: "col": 1,
Aaron Ballmana612e342019-06-24 20:07:11 +0000204// CHECK-NEXT: "tokLen": 4
Aaron Ballman60294f92019-06-21 14:37:39 +0000205// CHECK-NEXT: },
206// CHECK-NEXT: "end": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000207// CHECK-NEXT: "offset": 172,
Aaron Ballmana612e342019-06-24 20:07:11 +0000208// CHECK-NEXT: "line": 16,
Aaron Ballman60294f92019-06-21 14:37:39 +0000209// CHECK-NEXT: "col": 1,
Aaron Ballmana612e342019-06-24 20:07:11 +0000210// CHECK-NEXT: "tokLen": 1
Aaron Ballman60294f92019-06-21 14:37:39 +0000211// CHECK-NEXT: }
212// CHECK-NEXT: },
213// CHECK-NEXT: "name": "F",
214// CHECK-NEXT: "fixedUnderlyingType": {
215// CHECK-NEXT: "qualType": "short"
216// CHECK-NEXT: },
217// CHECK-NEXT: "inner": [
218// CHECK-NEXT: {
219// CHECK-NEXT: "id": "0x{{.*}}",
220// CHECK-NEXT: "kind": "EnumConstantDecl",
221// CHECK-NEXT: "loc": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000222// CHECK-NEXT: "offset": 160,
Aaron Ballmana612e342019-06-24 20:07:11 +0000223// CHECK-NEXT: "line": 14,
Aaron Ballman60294f92019-06-21 14:37:39 +0000224// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000225// CHECK-NEXT: "tokLen": 4
Aaron Ballman60294f92019-06-21 14:37:39 +0000226// CHECK-NEXT: },
227// CHECK-NEXT: "range": {
228// CHECK-NEXT: "begin": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000229// CHECK-NEXT: "offset": 160,
Aaron Ballman60294f92019-06-21 14:37:39 +0000230// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000231// CHECK-NEXT: "tokLen": 4
Aaron Ballman60294f92019-06-21 14:37:39 +0000232// CHECK-NEXT: },
233// CHECK-NEXT: "end": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000234// CHECK-NEXT: "offset": 160,
Aaron Ballman60294f92019-06-21 14:37:39 +0000235// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000236// CHECK-NEXT: "tokLen": 4
Aaron Ballman60294f92019-06-21 14:37:39 +0000237// CHECK-NEXT: }
238// CHECK-NEXT: },
239// CHECK-NEXT: "name": "Five",
240// CHECK-NEXT: "type": {
241// CHECK-NEXT: "qualType": "F"
242// CHECK-NEXT: }
243// CHECK-NEXT: },
244// CHECK-NEXT: {
245// CHECK-NEXT: "id": "0x{{.*}}",
246// CHECK-NEXT: "kind": "EnumConstantDecl",
247// CHECK-NEXT: "loc": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000248// CHECK-NEXT: "offset": 168,
Aaron Ballmana612e342019-06-24 20:07:11 +0000249// CHECK-NEXT: "line": 15,
Aaron Ballman60294f92019-06-21 14:37:39 +0000250// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000251// CHECK-NEXT: "tokLen": 3
Aaron Ballman60294f92019-06-21 14:37:39 +0000252// CHECK-NEXT: },
253// CHECK-NEXT: "range": {
254// CHECK-NEXT: "begin": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000255// CHECK-NEXT: "offset": 168,
Aaron Ballman60294f92019-06-21 14:37:39 +0000256// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000257// CHECK-NEXT: "tokLen": 3
Aaron Ballman60294f92019-06-21 14:37:39 +0000258// CHECK-NEXT: },
259// CHECK-NEXT: "end": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000260// CHECK-NEXT: "offset": 168,
Aaron Ballman60294f92019-06-21 14:37:39 +0000261// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000262// CHECK-NEXT: "tokLen": 3
Aaron Ballman60294f92019-06-21 14:37:39 +0000263// CHECK-NEXT: }
264// CHECK-NEXT: },
265// CHECK-NEXT: "name": "Six",
266// CHECK-NEXT: "type": {
267// CHECK-NEXT: "qualType": "F"
268// CHECK-NEXT: }
269// CHECK-NEXT: }
270// CHECK-NEXT: ]
Aaron Ballman2ce598a2019-05-13 21:39:55 +0000271// CHECK-NEXT: }
Aaron Ballman60294f92019-06-21 14:37:39 +0000272
273
274// CHECK: "kind": "EnumDecl",
275// CHECK-NEXT: "loc": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000276// CHECK-NEXT: "offset": 188,
Aaron Ballmana612e342019-06-24 20:07:11 +0000277// CHECK-NEXT: "line": 18,
Aaron Ballman60294f92019-06-21 14:37:39 +0000278// CHECK-NEXT: "col": 13,
Aaron Ballmana612e342019-06-24 20:07:11 +0000279// CHECK-NEXT: "tokLen": 1
Aaron Ballman60294f92019-06-21 14:37:39 +0000280// CHECK-NEXT: },
281// CHECK-NEXT: "range": {
282// CHECK-NEXT: "begin": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000283// CHECK-NEXT: "offset": 176,
Aaron Ballman60294f92019-06-21 14:37:39 +0000284// CHECK-NEXT: "col": 1,
Aaron Ballmana612e342019-06-24 20:07:11 +0000285// CHECK-NEXT: "tokLen": 4
Aaron Ballman60294f92019-06-21 14:37:39 +0000286// CHECK-NEXT: },
287// CHECK-NEXT: "end": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000288// CHECK-NEXT: "offset": 209,
Aaron Ballmana612e342019-06-24 20:07:11 +0000289// CHECK-NEXT: "line": 21,
Aaron Ballman60294f92019-06-21 14:37:39 +0000290// CHECK-NEXT: "col": 1,
Aaron Ballmana612e342019-06-24 20:07:11 +0000291// CHECK-NEXT: "tokLen": 1
Aaron Ballman60294f92019-06-21 14:37:39 +0000292// CHECK-NEXT: }
293// CHECK-NEXT: },
294// CHECK-NEXT: "name": "G",
295// CHECK-NEXT: "fixedUnderlyingType": {
296// CHECK-NEXT: "qualType": "int"
297// CHECK-NEXT: },
298// CHECK-NEXT: "scopedEnumTag": "struct",
299// CHECK-NEXT: "inner": [
300// CHECK-NEXT: {
301// CHECK-NEXT: "id": "0x{{.*}}",
302// CHECK-NEXT: "kind": "EnumConstantDecl",
303// CHECK-NEXT: "loc": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000304// CHECK-NEXT: "offset": 194,
Aaron Ballmana612e342019-06-24 20:07:11 +0000305// CHECK-NEXT: "line": 19,
Aaron Ballman60294f92019-06-21 14:37:39 +0000306// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000307// CHECK-NEXT: "tokLen": 5
Aaron Ballman60294f92019-06-21 14:37:39 +0000308// CHECK-NEXT: },
309// CHECK-NEXT: "range": {
310// CHECK-NEXT: "begin": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000311// CHECK-NEXT: "offset": 194,
Aaron Ballman60294f92019-06-21 14:37:39 +0000312// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000313// CHECK-NEXT: "tokLen": 5
Aaron Ballman60294f92019-06-21 14:37:39 +0000314// CHECK-NEXT: },
315// CHECK-NEXT: "end": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000316// CHECK-NEXT: "offset": 194,
Aaron Ballman60294f92019-06-21 14:37:39 +0000317// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000318// CHECK-NEXT: "tokLen": 5
Aaron Ballman60294f92019-06-21 14:37:39 +0000319// CHECK-NEXT: }
320// CHECK-NEXT: },
321// CHECK-NEXT: "name": "Seven",
322// CHECK-NEXT: "type": {
323// CHECK-NEXT: "qualType": "G"
324// CHECK-NEXT: }
325// CHECK-NEXT: },
326// CHECK-NEXT: {
327// CHECK-NEXT: "id": "0x{{.*}}",
328// CHECK-NEXT: "kind": "EnumConstantDecl",
329// CHECK-NEXT: "loc": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000330// CHECK-NEXT: "offset": 203,
Aaron Ballmana612e342019-06-24 20:07:11 +0000331// CHECK-NEXT: "line": 20,
Aaron Ballman60294f92019-06-21 14:37:39 +0000332// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000333// CHECK-NEXT: "tokLen": 5
Aaron Ballman60294f92019-06-21 14:37:39 +0000334// CHECK-NEXT: },
335// CHECK-NEXT: "range": {
336// CHECK-NEXT: "begin": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000337// CHECK-NEXT: "offset": 203,
Aaron Ballman60294f92019-06-21 14:37:39 +0000338// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000339// CHECK-NEXT: "tokLen": 5
Aaron Ballman60294f92019-06-21 14:37:39 +0000340// CHECK-NEXT: },
341// CHECK-NEXT: "end": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000342// CHECK-NEXT: "offset": 203,
Aaron Ballman60294f92019-06-21 14:37:39 +0000343// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000344// CHECK-NEXT: "tokLen": 5
Aaron Ballman60294f92019-06-21 14:37:39 +0000345// CHECK-NEXT: }
346// CHECK-NEXT: },
347// CHECK-NEXT: "name": "Eight",
348// CHECK-NEXT: "type": {
349// CHECK-NEXT: "qualType": "G"
350// CHECK-NEXT: }
351// CHECK-NEXT: }
352// CHECK-NEXT: ]
Aaron Ballman2ce598a2019-05-13 21:39:55 +0000353// CHECK-NEXT: }
Aaron Ballman60294f92019-06-21 14:37:39 +0000354
355
356// CHECK: "kind": "EnumDecl",
357// CHECK-NEXT: "loc": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000358// CHECK-NEXT: "offset": 224,
Aaron Ballmana612e342019-06-24 20:07:11 +0000359// CHECK-NEXT: "line": 23,
Aaron Ballman60294f92019-06-21 14:37:39 +0000360// CHECK-NEXT: "col": 12,
Aaron Ballmana612e342019-06-24 20:07:11 +0000361// CHECK-NEXT: "tokLen": 1
Aaron Ballman60294f92019-06-21 14:37:39 +0000362// CHECK-NEXT: },
363// CHECK-NEXT: "range": {
364// CHECK-NEXT: "begin": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000365// CHECK-NEXT: "offset": 213,
Aaron Ballman60294f92019-06-21 14:37:39 +0000366// CHECK-NEXT: "col": 1,
Aaron Ballmana612e342019-06-24 20:07:11 +0000367// CHECK-NEXT: "tokLen": 4
Aaron Ballman60294f92019-06-21 14:37:39 +0000368// CHECK-NEXT: },
369// CHECK-NEXT: "end": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000370// CHECK-NEXT: "offset": 242,
Aaron Ballmana612e342019-06-24 20:07:11 +0000371// CHECK-NEXT: "line": 26,
Aaron Ballman60294f92019-06-21 14:37:39 +0000372// CHECK-NEXT: "col": 1,
Aaron Ballmana612e342019-06-24 20:07:11 +0000373// CHECK-NEXT: "tokLen": 1
Aaron Ballman60294f92019-06-21 14:37:39 +0000374// CHECK-NEXT: }
375// CHECK-NEXT: },
376// CHECK-NEXT: "name": "H",
377// CHECK-NEXT: "fixedUnderlyingType": {
378// CHECK-NEXT: "qualType": "int"
379// CHECK-NEXT: },
380// CHECK-NEXT: "scopedEnumTag": "class",
381// CHECK-NEXT: "inner": [
382// CHECK-NEXT: {
383// CHECK-NEXT: "id": "0x{{.*}}",
384// CHECK-NEXT: "kind": "EnumConstantDecl",
385// CHECK-NEXT: "loc": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000386// CHECK-NEXT: "offset": 230,
Aaron Ballmana612e342019-06-24 20:07:11 +0000387// CHECK-NEXT: "line": 24,
Aaron Ballman60294f92019-06-21 14:37:39 +0000388// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000389// CHECK-NEXT: "tokLen": 4
Aaron Ballman60294f92019-06-21 14:37:39 +0000390// CHECK-NEXT: },
391// CHECK-NEXT: "range": {
392// CHECK-NEXT: "begin": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000393// CHECK-NEXT: "offset": 230,
Aaron Ballman60294f92019-06-21 14:37:39 +0000394// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000395// CHECK-NEXT: "tokLen": 4
Aaron Ballman60294f92019-06-21 14:37:39 +0000396// CHECK-NEXT: },
397// CHECK-NEXT: "end": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000398// CHECK-NEXT: "offset": 230,
Aaron Ballman60294f92019-06-21 14:37:39 +0000399// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000400// CHECK-NEXT: "tokLen": 4
Aaron Ballman60294f92019-06-21 14:37:39 +0000401// CHECK-NEXT: }
402// CHECK-NEXT: },
403// CHECK-NEXT: "name": "Nine",
404// CHECK-NEXT: "type": {
405// CHECK-NEXT: "qualType": "H"
406// CHECK-NEXT: }
407// CHECK-NEXT: },
408// CHECK-NEXT: {
409// CHECK-NEXT: "id": "0x{{.*}}",
410// CHECK-NEXT: "kind": "EnumConstantDecl",
411// CHECK-NEXT: "loc": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000412// CHECK-NEXT: "offset": 238,
Aaron Ballmana612e342019-06-24 20:07:11 +0000413// CHECK-NEXT: "line": 25,
Aaron Ballman60294f92019-06-21 14:37:39 +0000414// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000415// CHECK-NEXT: "tokLen": 3
Aaron Ballman60294f92019-06-21 14:37:39 +0000416// CHECK-NEXT: },
417// CHECK-NEXT: "range": {
418// CHECK-NEXT: "begin": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000419// CHECK-NEXT: "offset": 238,
Aaron Ballman60294f92019-06-21 14:37:39 +0000420// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000421// CHECK-NEXT: "tokLen": 3
Aaron Ballman60294f92019-06-21 14:37:39 +0000422// CHECK-NEXT: },
423// CHECK-NEXT: "end": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000424// CHECK-NEXT: "offset": 238,
Aaron Ballman60294f92019-06-21 14:37:39 +0000425// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000426// CHECK-NEXT: "tokLen": 3
Aaron Ballman60294f92019-06-21 14:37:39 +0000427// CHECK-NEXT: }
428// CHECK-NEXT: },
429// CHECK-NEXT: "name": "Ten",
430// CHECK-NEXT: "type": {
431// CHECK-NEXT: "qualType": "H"
432// CHECK-NEXT: }
433// CHECK-NEXT: }
434// CHECK-NEXT: ]
Aaron Ballman2ce598a2019-05-13 21:39:55 +0000435// CHECK-NEXT: }
Aaron Ballman60294f92019-06-21 14:37:39 +0000436
437
438// CHECK: "kind": "EnumDecl",
439// CHECK-NEXT: "loc": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000440// CHECK-NEXT: "offset": 257,
Aaron Ballmana612e342019-06-24 20:07:11 +0000441// CHECK-NEXT: "line": 28,
Aaron Ballman60294f92019-06-21 14:37:39 +0000442// CHECK-NEXT: "col": 12,
Aaron Ballmana612e342019-06-24 20:07:11 +0000443// CHECK-NEXT: "tokLen": 1
Aaron Ballman60294f92019-06-21 14:37:39 +0000444// CHECK-NEXT: },
445// CHECK-NEXT: "range": {
446// CHECK-NEXT: "begin": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000447// CHECK-NEXT: "offset": 246,
Aaron Ballman60294f92019-06-21 14:37:39 +0000448// CHECK-NEXT: "col": 1,
Aaron Ballmana612e342019-06-24 20:07:11 +0000449// CHECK-NEXT: "tokLen": 4
Aaron Ballman60294f92019-06-21 14:37:39 +0000450// CHECK-NEXT: },
451// CHECK-NEXT: "end": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000452// CHECK-NEXT: "offset": 286,
Aaron Ballmana612e342019-06-24 20:07:11 +0000453// CHECK-NEXT: "line": 31,
Aaron Ballman60294f92019-06-21 14:37:39 +0000454// CHECK-NEXT: "col": 1,
Aaron Ballmana612e342019-06-24 20:07:11 +0000455// CHECK-NEXT: "tokLen": 1
Aaron Ballman60294f92019-06-21 14:37:39 +0000456// CHECK-NEXT: }
457// CHECK-NEXT: },
458// CHECK-NEXT: "name": "I",
459// CHECK-NEXT: "fixedUnderlyingType": {
460// CHECK-NEXT: "qualType": "int"
461// CHECK-NEXT: },
462// CHECK-NEXT: "scopedEnumTag": "class",
463// CHECK-NEXT: "inner": [
464// CHECK-NEXT: {
465// CHECK-NEXT: "id": "0x{{.*}}",
466// CHECK-NEXT: "kind": "EnumConstantDecl",
467// CHECK-NEXT: "loc": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000468// CHECK-NEXT: "offset": 269,
Aaron Ballmana612e342019-06-24 20:07:11 +0000469// CHECK-NEXT: "line": 29,
Aaron Ballman60294f92019-06-21 14:37:39 +0000470// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000471// CHECK-NEXT: "tokLen": 6
Aaron Ballman60294f92019-06-21 14:37:39 +0000472// CHECK-NEXT: },
473// CHECK-NEXT: "range": {
474// CHECK-NEXT: "begin": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000475// CHECK-NEXT: "offset": 269,
Aaron Ballman60294f92019-06-21 14:37:39 +0000476// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000477// CHECK-NEXT: "tokLen": 6
Aaron Ballman60294f92019-06-21 14:37:39 +0000478// CHECK-NEXT: },
479// CHECK-NEXT: "end": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000480// CHECK-NEXT: "offset": 269,
Aaron Ballman60294f92019-06-21 14:37:39 +0000481// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000482// CHECK-NEXT: "tokLen": 6
Aaron Ballman60294f92019-06-21 14:37:39 +0000483// CHECK-NEXT: }
484// CHECK-NEXT: },
485// CHECK-NEXT: "name": "Eleven",
486// CHECK-NEXT: "type": {
487// CHECK-NEXT: "qualType": "I"
488// CHECK-NEXT: }
489// CHECK-NEXT: },
490// CHECK-NEXT: {
491// CHECK-NEXT: "id": "0x{{.*}}",
492// CHECK-NEXT: "kind": "EnumConstantDecl",
493// CHECK-NEXT: "loc": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000494// CHECK-NEXT: "offset": 279,
Aaron Ballmana612e342019-06-24 20:07:11 +0000495// CHECK-NEXT: "line": 30,
Aaron Ballman60294f92019-06-21 14:37:39 +0000496// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000497// CHECK-NEXT: "tokLen": 6
Aaron Ballman60294f92019-06-21 14:37:39 +0000498// CHECK-NEXT: },
499// CHECK-NEXT: "range": {
500// CHECK-NEXT: "begin": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000501// CHECK-NEXT: "offset": 279,
Aaron Ballman60294f92019-06-21 14:37:39 +0000502// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000503// CHECK-NEXT: "tokLen": 6
Aaron Ballman60294f92019-06-21 14:37:39 +0000504// CHECK-NEXT: },
505// CHECK-NEXT: "end": {
Aaron Ballman27c7a9b2019-10-15 17:30:19 +0000506// CHECK-NEXT: "offset": 279,
Aaron Ballman60294f92019-06-21 14:37:39 +0000507// CHECK-NEXT: "col": 3,
Aaron Ballmana612e342019-06-24 20:07:11 +0000508// CHECK-NEXT: "tokLen": 6
Aaron Ballman60294f92019-06-21 14:37:39 +0000509// CHECK-NEXT: }
510// CHECK-NEXT: },
511// CHECK-NEXT: "name": "Twelve",
512// CHECK-NEXT: "type": {
513// CHECK-NEXT: "qualType": "I"
514// CHECK-NEXT: }
515// CHECK-NEXT: }
516// CHECK-NEXT: ]
Aaron Ballman2ce598a2019-05-13 21:39:55 +0000517// CHECK-NEXT: }