xref: /llvm-project/clang/test/AST/ast-dump-enum-json.cpp (revision 6d8e5c968538eff2c024d46d5715de0828a69407)
12ce598a4SAaron Ballman // RUN: %clang_cc1 -triple x86_64-pc-linux -std=c++17 -ast-dump=json %s | FileCheck %s
22ce598a4SAaron Ballman 
32ce598a4SAaron Ballman enum {
42ce598a4SAaron Ballman   One,
52ce598a4SAaron Ballman   Two
62ce598a4SAaron Ballman };
72ce598a4SAaron Ballman 
860294f9dSAaron Ballman enum E {
960294f9dSAaron Ballman   Three,
1060294f9dSAaron Ballman   Four
1160294f9dSAaron Ballman };
1260294f9dSAaron Ballman 
1360294f9dSAaron Ballman enum F : short {
1460294f9dSAaron Ballman   Five,
1560294f9dSAaron Ballman   Six
1660294f9dSAaron Ballman };
1760294f9dSAaron Ballman 
1860294f9dSAaron Ballman enum struct G {
1960294f9dSAaron Ballman   Seven,
2060294f9dSAaron Ballman   Eight
2160294f9dSAaron Ballman };
2260294f9dSAaron Ballman 
2360294f9dSAaron Ballman enum class H {
2460294f9dSAaron Ballman   Nine,
2560294f9dSAaron Ballman   Ten
2660294f9dSAaron Ballman };
2760294f9dSAaron Ballman 
2860294f9dSAaron Ballman enum class I : int {
2960294f9dSAaron Ballman   Eleven,
3060294f9dSAaron Ballman   Twelve
3160294f9dSAaron Ballman };
3260294f9dSAaron Ballman 
3360294f9dSAaron Ballman // NOTE: CHECK lines have been autogenerated by gen_ast_dump_json_test.py
3460294f9dSAaron Ballman // using --filters=EnumDecl
3560294f9dSAaron Ballman 
36451d0596Swilliam woodruff // CHECK-NOT: {{^}}Dumping
372ce598a4SAaron Ballman // CHECK:  "kind": "EnumDecl",
382ce598a4SAaron Ballman // CHECK-NEXT:  "loc": {
39*6d8e5c96SChris Bieneman // CHECK-NEXT:   "offset": {{[0-9]+}},
402ce598a4SAaron Ballman // CHECK-NEXT:   "file": "{{.*}}",
41a612e34cSAaron Ballman // CHECK-NEXT:   "line": 3,
42a612e34cSAaron Ballman // CHECK-NEXT:   "col": 1,
43a612e34cSAaron Ballman // CHECK-NEXT:   "tokLen": 4
442ce598a4SAaron Ballman // CHECK-NEXT:  },
452ce598a4SAaron Ballman // CHECK-NEXT:  "range": {
462ce598a4SAaron Ballman // CHECK-NEXT:   "begin": {
47*6d8e5c96SChris Bieneman // CHECK-NEXT:    "offset": {{[0-9]+}},
482ce598a4SAaron Ballman // CHECK-NEXT:    "col": 1,
49a612e34cSAaron Ballman // CHECK-NEXT:    "tokLen": 4
502ce598a4SAaron Ballman // CHECK-NEXT:   },
512ce598a4SAaron Ballman // CHECK-NEXT:   "end": {
52*6d8e5c96SChris Bieneman // CHECK-NEXT:    "offset": {{[0-9]+}},
53a612e34cSAaron Ballman // CHECK-NEXT:    "line": 6,
542ce598a4SAaron Ballman // CHECK-NEXT:    "col": 1,
55a612e34cSAaron Ballman // CHECK-NEXT:    "tokLen": 1
562ce598a4SAaron Ballman // CHECK-NEXT:   }
572ce598a4SAaron Ballman // CHECK-NEXT:  },
582ce598a4SAaron Ballman // CHECK-NEXT:  "inner": [
592ce598a4SAaron Ballman // CHECK-NEXT:   {
602ce598a4SAaron Ballman // CHECK-NEXT:    "id": "0x{{.*}}",
612ce598a4SAaron Ballman // CHECK-NEXT:    "kind": "EnumConstantDecl",
622ce598a4SAaron Ballman // CHECK-NEXT:    "loc": {
63*6d8e5c96SChris Bieneman // CHECK-NEXT:     "offset": {{[0-9]+}},
64a612e34cSAaron Ballman // CHECK-NEXT:     "line": 4,
652ce598a4SAaron Ballman // CHECK-NEXT:     "col": 3,
66a612e34cSAaron Ballman // CHECK-NEXT:     "tokLen": 3
672ce598a4SAaron Ballman // CHECK-NEXT:    },
682ce598a4SAaron Ballman // CHECK-NEXT:    "range": {
692ce598a4SAaron Ballman // CHECK-NEXT:     "begin": {
70*6d8e5c96SChris Bieneman // CHECK-NEXT:      "offset": {{[0-9]+}},
712ce598a4SAaron Ballman // CHECK-NEXT:      "col": 3,
72a612e34cSAaron Ballman // CHECK-NEXT:      "tokLen": 3
732ce598a4SAaron Ballman // CHECK-NEXT:     },
742ce598a4SAaron Ballman // CHECK-NEXT:     "end": {
75*6d8e5c96SChris Bieneman // CHECK-NEXT:      "offset": {{[0-9]+}},
762ce598a4SAaron Ballman // CHECK-NEXT:      "col": 3,
77a612e34cSAaron Ballman // CHECK-NEXT:      "tokLen": 3
782ce598a4SAaron Ballman // CHECK-NEXT:     }
792ce598a4SAaron Ballman // CHECK-NEXT:    },
802ce598a4SAaron Ballman // CHECK-NEXT:    "name": "One",
812ce598a4SAaron Ballman // CHECK-NEXT:    "type": {
8250542d50SShafik Yaghmour // CHECK-NEXT:     "qualType": "(unnamed enum at {{.*}}:3:1)"
832ce598a4SAaron Ballman // CHECK-NEXT:    }
842ce598a4SAaron Ballman // CHECK-NEXT:   },
852ce598a4SAaron Ballman // CHECK-NEXT:   {
862ce598a4SAaron Ballman // CHECK-NEXT:    "id": "0x{{.*}}",
872ce598a4SAaron Ballman // CHECK-NEXT:    "kind": "EnumConstantDecl",
882ce598a4SAaron Ballman // CHECK-NEXT:    "loc": {
89*6d8e5c96SChris Bieneman // CHECK-NEXT:     "offset": {{[0-9]+}},
90a612e34cSAaron Ballman // CHECK-NEXT:     "line": 5,
912ce598a4SAaron Ballman // CHECK-NEXT:     "col": 3,
92a612e34cSAaron Ballman // CHECK-NEXT:     "tokLen": 3
932ce598a4SAaron Ballman // CHECK-NEXT:    },
942ce598a4SAaron Ballman // CHECK-NEXT:    "range": {
952ce598a4SAaron Ballman // CHECK-NEXT:     "begin": {
96*6d8e5c96SChris Bieneman // CHECK-NEXT:      "offset": {{[0-9]+}},
972ce598a4SAaron Ballman // CHECK-NEXT:      "col": 3,
98a612e34cSAaron Ballman // CHECK-NEXT:      "tokLen": 3
992ce598a4SAaron Ballman // CHECK-NEXT:     },
1002ce598a4SAaron Ballman // CHECK-NEXT:     "end": {
101*6d8e5c96SChris Bieneman // CHECK-NEXT:      "offset": {{[0-9]+}},
1022ce598a4SAaron Ballman // CHECK-NEXT:      "col": 3,
103a612e34cSAaron Ballman // CHECK-NEXT:      "tokLen": 3
1042ce598a4SAaron Ballman // CHECK-NEXT:     }
1052ce598a4SAaron Ballman // CHECK-NEXT:    },
1062ce598a4SAaron Ballman // CHECK-NEXT:    "name": "Two",
1072ce598a4SAaron Ballman // CHECK-NEXT:    "type": {
10850542d50SShafik Yaghmour // CHECK-NEXT:     "qualType": "(unnamed enum at {{.*}}:3:1)"
1092ce598a4SAaron Ballman // CHECK-NEXT:    }
1102ce598a4SAaron Ballman // CHECK-NEXT:   }
1112ce598a4SAaron Ballman // CHECK-NEXT:  ]
11260294f9dSAaron Ballman // CHECK-NEXT: }
1132ce598a4SAaron Ballman 
114451d0596Swilliam woodruff // CHECK-NOT: {{^}}Dumping
1152ce598a4SAaron Ballman // CHECK:  "kind": "EnumDecl",
1162ce598a4SAaron Ballman // CHECK-NEXT:  "loc": {
117*6d8e5c96SChris Bieneman // CHECK-NEXT:   "offset": {{[0-9]+}},
118a612e34cSAaron Ballman // CHECK-NEXT:   "line": 8,
1192ce598a4SAaron Ballman // CHECK-NEXT:   "col": 6,
120a612e34cSAaron Ballman // CHECK-NEXT:   "tokLen": 1
1212ce598a4SAaron Ballman // CHECK-NEXT:  },
1222ce598a4SAaron Ballman // CHECK-NEXT:  "range": {
1232ce598a4SAaron Ballman // CHECK-NEXT:   "begin": {
124*6d8e5c96SChris Bieneman // CHECK-NEXT:    "offset": {{[0-9]+}},
1252ce598a4SAaron Ballman // CHECK-NEXT:    "col": 1,
126a612e34cSAaron Ballman // CHECK-NEXT:    "tokLen": 4
1272ce598a4SAaron Ballman // CHECK-NEXT:   },
1282ce598a4SAaron Ballman // CHECK-NEXT:   "end": {
129*6d8e5c96SChris Bieneman // CHECK-NEXT:    "offset": {{[0-9]+}},
130a612e34cSAaron Ballman // CHECK-NEXT:    "line": 11,
1312ce598a4SAaron Ballman // CHECK-NEXT:    "col": 1,
132a612e34cSAaron Ballman // CHECK-NEXT:    "tokLen": 1
1332ce598a4SAaron Ballman // CHECK-NEXT:   }
1342ce598a4SAaron Ballman // CHECK-NEXT:  },
1352ce598a4SAaron Ballman // CHECK-NEXT:  "name": "E",
1362ce598a4SAaron Ballman // CHECK-NEXT:  "inner": [
1372ce598a4SAaron Ballman // CHECK-NEXT:   {
1382ce598a4SAaron Ballman // CHECK-NEXT:    "id": "0x{{.*}}",
1392ce598a4SAaron Ballman // CHECK-NEXT:    "kind": "EnumConstantDecl",
1402ce598a4SAaron Ballman // CHECK-NEXT:    "loc": {
141*6d8e5c96SChris Bieneman // CHECK-NEXT:     "offset": {{[0-9]+}},
142a612e34cSAaron Ballman // CHECK-NEXT:     "line": 9,
1432ce598a4SAaron Ballman // CHECK-NEXT:     "col": 3,
144a612e34cSAaron Ballman // CHECK-NEXT:     "tokLen": 5
1452ce598a4SAaron Ballman // CHECK-NEXT:    },
1462ce598a4SAaron Ballman // CHECK-NEXT:    "range": {
1472ce598a4SAaron Ballman // CHECK-NEXT:     "begin": {
148*6d8e5c96SChris Bieneman // CHECK-NEXT:      "offset": {{[0-9]+}},
1492ce598a4SAaron Ballman // CHECK-NEXT:      "col": 3,
150a612e34cSAaron Ballman // CHECK-NEXT:      "tokLen": 5
1512ce598a4SAaron Ballman // CHECK-NEXT:     },
1522ce598a4SAaron Ballman // CHECK-NEXT:     "end": {
153*6d8e5c96SChris Bieneman // CHECK-NEXT:      "offset": {{[0-9]+}},
1542ce598a4SAaron Ballman // CHECK-NEXT:      "col": 3,
155a612e34cSAaron Ballman // CHECK-NEXT:      "tokLen": 5
1562ce598a4SAaron Ballman // CHECK-NEXT:     }
1572ce598a4SAaron Ballman // CHECK-NEXT:    },
1582ce598a4SAaron Ballman // CHECK-NEXT:    "name": "Three",
1592ce598a4SAaron Ballman // CHECK-NEXT:    "type": {
1602ce598a4SAaron Ballman // CHECK-NEXT:     "qualType": "E"
1612ce598a4SAaron Ballman // CHECK-NEXT:    }
1622ce598a4SAaron Ballman // CHECK-NEXT:   },
1632ce598a4SAaron Ballman // CHECK-NEXT:   {
1642ce598a4SAaron Ballman // CHECK-NEXT:    "id": "0x{{.*}}",
1652ce598a4SAaron Ballman // CHECK-NEXT:    "kind": "EnumConstantDecl",
1662ce598a4SAaron Ballman // CHECK-NEXT:    "loc": {
167*6d8e5c96SChris Bieneman // CHECK-NEXT:     "offset": {{[0-9]+}},
168a612e34cSAaron Ballman // CHECK-NEXT:     "line": 10,
1692ce598a4SAaron Ballman // CHECK-NEXT:     "col": 3,
170a612e34cSAaron Ballman // CHECK-NEXT:     "tokLen": 4
1712ce598a4SAaron Ballman // CHECK-NEXT:    },
1722ce598a4SAaron Ballman // CHECK-NEXT:    "range": {
1732ce598a4SAaron Ballman // CHECK-NEXT:     "begin": {
174*6d8e5c96SChris Bieneman // CHECK-NEXT:      "offset": {{[0-9]+}},
1752ce598a4SAaron Ballman // CHECK-NEXT:      "col": 3,
176a612e34cSAaron Ballman // CHECK-NEXT:      "tokLen": 4
1772ce598a4SAaron Ballman // CHECK-NEXT:     },
1782ce598a4SAaron Ballman // CHECK-NEXT:     "end": {
179*6d8e5c96SChris Bieneman // CHECK-NEXT:      "offset": {{[0-9]+}},
1802ce598a4SAaron Ballman // CHECK-NEXT:      "col": 3,
181a612e34cSAaron Ballman // CHECK-NEXT:      "tokLen": 4
1822ce598a4SAaron Ballman // CHECK-NEXT:     }
1832ce598a4SAaron Ballman // CHECK-NEXT:    },
1842ce598a4SAaron Ballman // CHECK-NEXT:    "name": "Four",
1852ce598a4SAaron Ballman // CHECK-NEXT:    "type": {
1862ce598a4SAaron Ballman // CHECK-NEXT:     "qualType": "E"
1872ce598a4SAaron Ballman // CHECK-NEXT:    }
1882ce598a4SAaron Ballman // CHECK-NEXT:   }
1892ce598a4SAaron Ballman // CHECK-NEXT:  ]
19060294f9dSAaron Ballman // CHECK-NEXT: }
1912ce598a4SAaron Ballman 
192451d0596Swilliam woodruff // CHECK-NOT: {{^}}Dumping
1932ce598a4SAaron Ballman // CHECK:  "kind": "EnumDecl",
1942ce598a4SAaron Ballman // CHECK-NEXT:  "loc": {
195*6d8e5c96SChris Bieneman // CHECK-NEXT:   "offset": {{[0-9]+}},
196a612e34cSAaron Ballman // CHECK-NEXT:   "line": 13,
1972ce598a4SAaron Ballman // CHECK-NEXT:   "col": 6,
198a612e34cSAaron Ballman // CHECK-NEXT:   "tokLen": 1
1992ce598a4SAaron Ballman // CHECK-NEXT:  },
2002ce598a4SAaron Ballman // CHECK-NEXT:  "range": {
2012ce598a4SAaron Ballman // CHECK-NEXT:   "begin": {
202*6d8e5c96SChris Bieneman // CHECK-NEXT:    "offset": {{[0-9]+}},
2032ce598a4SAaron Ballman // CHECK-NEXT:    "col": 1,
204a612e34cSAaron Ballman // CHECK-NEXT:    "tokLen": 4
2052ce598a4SAaron Ballman // CHECK-NEXT:   },
2062ce598a4SAaron Ballman // CHECK-NEXT:   "end": {
207*6d8e5c96SChris Bieneman // CHECK-NEXT:    "offset": {{[0-9]+}},
208a612e34cSAaron Ballman // CHECK-NEXT:    "line": 16,
2092ce598a4SAaron Ballman // CHECK-NEXT:    "col": 1,
210a612e34cSAaron Ballman // CHECK-NEXT:    "tokLen": 1
2112ce598a4SAaron Ballman // CHECK-NEXT:   }
2122ce598a4SAaron Ballman // CHECK-NEXT:  },
2132ce598a4SAaron Ballman // CHECK-NEXT:  "name": "F",
2142ce598a4SAaron Ballman // CHECK-NEXT:  "fixedUnderlyingType": {
2152ce598a4SAaron Ballman // CHECK-NEXT:   "qualType": "short"
2162ce598a4SAaron Ballman // CHECK-NEXT:  },
2172ce598a4SAaron Ballman // CHECK-NEXT:  "inner": [
2182ce598a4SAaron Ballman // CHECK-NEXT:   {
2192ce598a4SAaron Ballman // CHECK-NEXT:    "id": "0x{{.*}}",
2202ce598a4SAaron Ballman // CHECK-NEXT:    "kind": "EnumConstantDecl",
2212ce598a4SAaron Ballman // CHECK-NEXT:    "loc": {
222*6d8e5c96SChris Bieneman // CHECK-NEXT:     "offset": {{[0-9]+}},
223a612e34cSAaron Ballman // CHECK-NEXT:     "line": 14,
2242ce598a4SAaron Ballman // CHECK-NEXT:     "col": 3,
225a612e34cSAaron Ballman // CHECK-NEXT:     "tokLen": 4
2262ce598a4SAaron Ballman // CHECK-NEXT:    },
2272ce598a4SAaron Ballman // CHECK-NEXT:    "range": {
2282ce598a4SAaron Ballman // CHECK-NEXT:     "begin": {
229*6d8e5c96SChris Bieneman // CHECK-NEXT:      "offset": {{[0-9]+}},
2302ce598a4SAaron Ballman // CHECK-NEXT:      "col": 3,
231a612e34cSAaron Ballman // CHECK-NEXT:      "tokLen": 4
2322ce598a4SAaron Ballman // CHECK-NEXT:     },
2332ce598a4SAaron Ballman // CHECK-NEXT:     "end": {
234*6d8e5c96SChris Bieneman // CHECK-NEXT:      "offset": {{[0-9]+}},
2352ce598a4SAaron Ballman // CHECK-NEXT:      "col": 3,
236a612e34cSAaron Ballman // CHECK-NEXT:      "tokLen": 4
2372ce598a4SAaron Ballman // CHECK-NEXT:     }
2382ce598a4SAaron Ballman // CHECK-NEXT:    },
2392ce598a4SAaron Ballman // CHECK-NEXT:    "name": "Five",
2402ce598a4SAaron Ballman // CHECK-NEXT:    "type": {
2412ce598a4SAaron Ballman // CHECK-NEXT:     "qualType": "F"
2422ce598a4SAaron Ballman // CHECK-NEXT:    }
2432ce598a4SAaron Ballman // CHECK-NEXT:   },
2442ce598a4SAaron Ballman // CHECK-NEXT:   {
2452ce598a4SAaron Ballman // CHECK-NEXT:    "id": "0x{{.*}}",
2462ce598a4SAaron Ballman // CHECK-NEXT:    "kind": "EnumConstantDecl",
2472ce598a4SAaron Ballman // CHECK-NEXT:    "loc": {
248*6d8e5c96SChris Bieneman // CHECK-NEXT:     "offset": {{[0-9]+}},
249a612e34cSAaron Ballman // CHECK-NEXT:     "line": 15,
2502ce598a4SAaron Ballman // CHECK-NEXT:     "col": 3,
251a612e34cSAaron Ballman // CHECK-NEXT:     "tokLen": 3
2522ce598a4SAaron Ballman // CHECK-NEXT:    },
2532ce598a4SAaron Ballman // CHECK-NEXT:    "range": {
2542ce598a4SAaron Ballman // CHECK-NEXT:     "begin": {
255*6d8e5c96SChris Bieneman // CHECK-NEXT:      "offset": {{[0-9]+}},
2562ce598a4SAaron Ballman // CHECK-NEXT:      "col": 3,
257a612e34cSAaron Ballman // CHECK-NEXT:      "tokLen": 3
2582ce598a4SAaron Ballman // CHECK-NEXT:     },
2592ce598a4SAaron Ballman // CHECK-NEXT:     "end": {
260*6d8e5c96SChris Bieneman // CHECK-NEXT:      "offset": {{[0-9]+}},
2612ce598a4SAaron Ballman // CHECK-NEXT:      "col": 3,
262a612e34cSAaron Ballman // CHECK-NEXT:      "tokLen": 3
2632ce598a4SAaron Ballman // CHECK-NEXT:     }
2642ce598a4SAaron Ballman // CHECK-NEXT:    },
2652ce598a4SAaron Ballman // CHECK-NEXT:    "name": "Six",
2662ce598a4SAaron Ballman // CHECK-NEXT:    "type": {
2672ce598a4SAaron Ballman // CHECK-NEXT:     "qualType": "F"
2682ce598a4SAaron Ballman // CHECK-NEXT:    }
2692ce598a4SAaron Ballman // CHECK-NEXT:   }
2702ce598a4SAaron Ballman // CHECK-NEXT:  ]
27160294f9dSAaron Ballman // CHECK-NEXT: }
2722ce598a4SAaron Ballman 
273451d0596Swilliam woodruff // CHECK-NOT: {{^}}Dumping
2742ce598a4SAaron Ballman // CHECK:  "kind": "EnumDecl",
2752ce598a4SAaron Ballman // CHECK-NEXT:  "loc": {
276*6d8e5c96SChris Bieneman // CHECK-NEXT:   "offset": {{[0-9]+}},
277a612e34cSAaron Ballman // CHECK-NEXT:   "line": 18,
2782ce598a4SAaron Ballman // CHECK-NEXT:   "col": 13,
279a612e34cSAaron Ballman // CHECK-NEXT:   "tokLen": 1
2802ce598a4SAaron Ballman // CHECK-NEXT:  },
2812ce598a4SAaron Ballman // CHECK-NEXT:  "range": {
2822ce598a4SAaron Ballman // CHECK-NEXT:   "begin": {
283*6d8e5c96SChris Bieneman // CHECK-NEXT:    "offset": {{[0-9]+}},
2842ce598a4SAaron Ballman // CHECK-NEXT:    "col": 1,
285a612e34cSAaron Ballman // CHECK-NEXT:    "tokLen": 4
2862ce598a4SAaron Ballman // CHECK-NEXT:   },
2872ce598a4SAaron Ballman // CHECK-NEXT:   "end": {
288*6d8e5c96SChris Bieneman // CHECK-NEXT:    "offset": {{[0-9]+}},
289a612e34cSAaron Ballman // CHECK-NEXT:    "line": 21,
2902ce598a4SAaron Ballman // CHECK-NEXT:    "col": 1,
291a612e34cSAaron Ballman // CHECK-NEXT:    "tokLen": 1
2922ce598a4SAaron Ballman // CHECK-NEXT:   }
2932ce598a4SAaron Ballman // CHECK-NEXT:  },
2942ce598a4SAaron Ballman // CHECK-NEXT:  "name": "G",
2952ce598a4SAaron Ballman // CHECK-NEXT:  "fixedUnderlyingType": {
2962ce598a4SAaron Ballman // CHECK-NEXT:   "qualType": "int"
2972ce598a4SAaron Ballman // CHECK-NEXT:  },
2982ce598a4SAaron Ballman // CHECK-NEXT:  "scopedEnumTag": "struct",
2992ce598a4SAaron Ballman // CHECK-NEXT:  "inner": [
3002ce598a4SAaron Ballman // CHECK-NEXT:   {
3012ce598a4SAaron Ballman // CHECK-NEXT:    "id": "0x{{.*}}",
3022ce598a4SAaron Ballman // CHECK-NEXT:    "kind": "EnumConstantDecl",
3032ce598a4SAaron Ballman // CHECK-NEXT:    "loc": {
304*6d8e5c96SChris Bieneman // CHECK-NEXT:     "offset": {{[0-9]+}},
305a612e34cSAaron Ballman // CHECK-NEXT:     "line": 19,
3062ce598a4SAaron Ballman // CHECK-NEXT:     "col": 3,
307a612e34cSAaron Ballman // CHECK-NEXT:     "tokLen": 5
3082ce598a4SAaron Ballman // CHECK-NEXT:    },
3092ce598a4SAaron Ballman // CHECK-NEXT:    "range": {
3102ce598a4SAaron Ballman // CHECK-NEXT:     "begin": {
311*6d8e5c96SChris Bieneman // CHECK-NEXT:      "offset": {{[0-9]+}},
3122ce598a4SAaron Ballman // CHECK-NEXT:      "col": 3,
313a612e34cSAaron Ballman // CHECK-NEXT:      "tokLen": 5
3142ce598a4SAaron Ballman // CHECK-NEXT:     },
3152ce598a4SAaron Ballman // CHECK-NEXT:     "end": {
316*6d8e5c96SChris Bieneman // CHECK-NEXT:      "offset": {{[0-9]+}},
3172ce598a4SAaron Ballman // CHECK-NEXT:      "col": 3,
318a612e34cSAaron Ballman // CHECK-NEXT:      "tokLen": 5
3192ce598a4SAaron Ballman // CHECK-NEXT:     }
3202ce598a4SAaron Ballman // CHECK-NEXT:    },
3212ce598a4SAaron Ballman // CHECK-NEXT:    "name": "Seven",
3222ce598a4SAaron Ballman // CHECK-NEXT:    "type": {
3232ce598a4SAaron Ballman // CHECK-NEXT:     "qualType": "G"
3242ce598a4SAaron Ballman // CHECK-NEXT:    }
3252ce598a4SAaron Ballman // CHECK-NEXT:   },
3262ce598a4SAaron Ballman // CHECK-NEXT:   {
3272ce598a4SAaron Ballman // CHECK-NEXT:    "id": "0x{{.*}}",
3282ce598a4SAaron Ballman // CHECK-NEXT:    "kind": "EnumConstantDecl",
3292ce598a4SAaron Ballman // CHECK-NEXT:    "loc": {
330*6d8e5c96SChris Bieneman // CHECK-NEXT:     "offset": {{[0-9]+}},
331a612e34cSAaron Ballman // CHECK-NEXT:     "line": 20,
3322ce598a4SAaron Ballman // CHECK-NEXT:     "col": 3,
333a612e34cSAaron Ballman // CHECK-NEXT:     "tokLen": 5
3342ce598a4SAaron Ballman // CHECK-NEXT:    },
3352ce598a4SAaron Ballman // CHECK-NEXT:    "range": {
3362ce598a4SAaron Ballman // CHECK-NEXT:     "begin": {
337*6d8e5c96SChris Bieneman // CHECK-NEXT:      "offset": {{[0-9]+}},
3382ce598a4SAaron Ballman // CHECK-NEXT:      "col": 3,
339a612e34cSAaron Ballman // CHECK-NEXT:      "tokLen": 5
3402ce598a4SAaron Ballman // CHECK-NEXT:     },
3412ce598a4SAaron Ballman // CHECK-NEXT:     "end": {
342*6d8e5c96SChris Bieneman // CHECK-NEXT:      "offset": {{[0-9]+}},
3432ce598a4SAaron Ballman // CHECK-NEXT:      "col": 3,
344a612e34cSAaron Ballman // CHECK-NEXT:      "tokLen": 5
3452ce598a4SAaron Ballman // CHECK-NEXT:     }
3462ce598a4SAaron Ballman // CHECK-NEXT:    },
3472ce598a4SAaron Ballman // CHECK-NEXT:    "name": "Eight",
3482ce598a4SAaron Ballman // CHECK-NEXT:    "type": {
3492ce598a4SAaron Ballman // CHECK-NEXT:     "qualType": "G"
3502ce598a4SAaron Ballman // CHECK-NEXT:    }
3512ce598a4SAaron Ballman // CHECK-NEXT:   }
3522ce598a4SAaron Ballman // CHECK-NEXT:  ]
35360294f9dSAaron Ballman // CHECK-NEXT: }
3542ce598a4SAaron Ballman 
355451d0596Swilliam woodruff // CHECK-NOT: {{^}}Dumping
3562ce598a4SAaron Ballman // CHECK:  "kind": "EnumDecl",
3572ce598a4SAaron Ballman // CHECK-NEXT:  "loc": {
358*6d8e5c96SChris Bieneman // CHECK-NEXT:   "offset": {{[0-9]+}},
359a612e34cSAaron Ballman // CHECK-NEXT:   "line": 23,
3602ce598a4SAaron Ballman // CHECK-NEXT:   "col": 12,
361a612e34cSAaron Ballman // CHECK-NEXT:   "tokLen": 1
3622ce598a4SAaron Ballman // CHECK-NEXT:  },
3632ce598a4SAaron Ballman // CHECK-NEXT:  "range": {
3642ce598a4SAaron Ballman // CHECK-NEXT:   "begin": {
365*6d8e5c96SChris Bieneman // CHECK-NEXT:    "offset": {{[0-9]+}},
3662ce598a4SAaron Ballman // CHECK-NEXT:    "col": 1,
367a612e34cSAaron Ballman // CHECK-NEXT:    "tokLen": 4
3682ce598a4SAaron Ballman // CHECK-NEXT:   },
3692ce598a4SAaron Ballman // CHECK-NEXT:   "end": {
370*6d8e5c96SChris Bieneman // CHECK-NEXT:    "offset": {{[0-9]+}},
371a612e34cSAaron Ballman // CHECK-NEXT:    "line": 26,
3722ce598a4SAaron Ballman // CHECK-NEXT:    "col": 1,
373a612e34cSAaron Ballman // CHECK-NEXT:    "tokLen": 1
3742ce598a4SAaron Ballman // CHECK-NEXT:   }
3752ce598a4SAaron Ballman // CHECK-NEXT:  },
3762ce598a4SAaron Ballman // CHECK-NEXT:  "name": "H",
3772ce598a4SAaron Ballman // CHECK-NEXT:  "fixedUnderlyingType": {
3782ce598a4SAaron Ballman // CHECK-NEXT:   "qualType": "int"
3792ce598a4SAaron Ballman // CHECK-NEXT:  },
3802ce598a4SAaron Ballman // CHECK-NEXT:  "scopedEnumTag": "class",
3812ce598a4SAaron Ballman // CHECK-NEXT:  "inner": [
3822ce598a4SAaron Ballman // CHECK-NEXT:   {
3832ce598a4SAaron Ballman // CHECK-NEXT:    "id": "0x{{.*}}",
3842ce598a4SAaron Ballman // CHECK-NEXT:    "kind": "EnumConstantDecl",
3852ce598a4SAaron Ballman // CHECK-NEXT:    "loc": {
386*6d8e5c96SChris Bieneman // CHECK-NEXT:     "offset": {{[0-9]+}},
387a612e34cSAaron Ballman // CHECK-NEXT:     "line": 24,
3882ce598a4SAaron Ballman // CHECK-NEXT:     "col": 3,
389a612e34cSAaron Ballman // CHECK-NEXT:     "tokLen": 4
3902ce598a4SAaron Ballman // CHECK-NEXT:    },
3912ce598a4SAaron Ballman // CHECK-NEXT:    "range": {
3922ce598a4SAaron Ballman // CHECK-NEXT:     "begin": {
393*6d8e5c96SChris Bieneman // CHECK-NEXT:      "offset": {{[0-9]+}},
3942ce598a4SAaron Ballman // CHECK-NEXT:      "col": 3,
395a612e34cSAaron Ballman // CHECK-NEXT:      "tokLen": 4
3962ce598a4SAaron Ballman // CHECK-NEXT:     },
3972ce598a4SAaron Ballman // CHECK-NEXT:     "end": {
398*6d8e5c96SChris Bieneman // CHECK-NEXT:      "offset": {{[0-9]+}},
3992ce598a4SAaron Ballman // CHECK-NEXT:      "col": 3,
400a612e34cSAaron Ballman // CHECK-NEXT:      "tokLen": 4
4012ce598a4SAaron Ballman // CHECK-NEXT:     }
4022ce598a4SAaron Ballman // CHECK-NEXT:    },
4032ce598a4SAaron Ballman // CHECK-NEXT:    "name": "Nine",
4042ce598a4SAaron Ballman // CHECK-NEXT:    "type": {
4052ce598a4SAaron Ballman // CHECK-NEXT:     "qualType": "H"
4062ce598a4SAaron Ballman // CHECK-NEXT:    }
4072ce598a4SAaron Ballman // CHECK-NEXT:   },
4082ce598a4SAaron Ballman // CHECK-NEXT:   {
4092ce598a4SAaron Ballman // CHECK-NEXT:    "id": "0x{{.*}}",
4102ce598a4SAaron Ballman // CHECK-NEXT:    "kind": "EnumConstantDecl",
4112ce598a4SAaron Ballman // CHECK-NEXT:    "loc": {
412*6d8e5c96SChris Bieneman // CHECK-NEXT:     "offset": {{[0-9]+}},
413a612e34cSAaron Ballman // CHECK-NEXT:     "line": 25,
4142ce598a4SAaron Ballman // CHECK-NEXT:     "col": 3,
415a612e34cSAaron Ballman // CHECK-NEXT:     "tokLen": 3
4162ce598a4SAaron Ballman // CHECK-NEXT:    },
4172ce598a4SAaron Ballman // CHECK-NEXT:    "range": {
4182ce598a4SAaron Ballman // CHECK-NEXT:     "begin": {
419*6d8e5c96SChris Bieneman // CHECK-NEXT:      "offset": {{[0-9]+}},
4202ce598a4SAaron Ballman // CHECK-NEXT:      "col": 3,
421a612e34cSAaron Ballman // CHECK-NEXT:      "tokLen": 3
4222ce598a4SAaron Ballman // CHECK-NEXT:     },
4232ce598a4SAaron Ballman // CHECK-NEXT:     "end": {
424*6d8e5c96SChris Bieneman // CHECK-NEXT:      "offset": {{[0-9]+}},
4252ce598a4SAaron Ballman // CHECK-NEXT:      "col": 3,
426a612e34cSAaron Ballman // CHECK-NEXT:      "tokLen": 3
4272ce598a4SAaron Ballman // CHECK-NEXT:     }
4282ce598a4SAaron Ballman // CHECK-NEXT:    },
4292ce598a4SAaron Ballman // CHECK-NEXT:    "name": "Ten",
4302ce598a4SAaron Ballman // CHECK-NEXT:    "type": {
4312ce598a4SAaron Ballman // CHECK-NEXT:     "qualType": "H"
4322ce598a4SAaron Ballman // CHECK-NEXT:    }
4332ce598a4SAaron Ballman // CHECK-NEXT:   }
4342ce598a4SAaron Ballman // CHECK-NEXT:  ]
43560294f9dSAaron Ballman // CHECK-NEXT: }
4362ce598a4SAaron Ballman 
437451d0596Swilliam woodruff // CHECK-NOT: {{^}}Dumping
4382ce598a4SAaron Ballman // CHECK:  "kind": "EnumDecl",
4392ce598a4SAaron Ballman // CHECK-NEXT:  "loc": {
440*6d8e5c96SChris Bieneman // CHECK-NEXT:   "offset": {{[0-9]+}},
441a612e34cSAaron Ballman // CHECK-NEXT:   "line": 28,
4422ce598a4SAaron Ballman // CHECK-NEXT:   "col": 12,
443a612e34cSAaron Ballman // CHECK-NEXT:   "tokLen": 1
4442ce598a4SAaron Ballman // CHECK-NEXT:  },
4452ce598a4SAaron Ballman // CHECK-NEXT:  "range": {
4462ce598a4SAaron Ballman // CHECK-NEXT:   "begin": {
447*6d8e5c96SChris Bieneman // CHECK-NEXT:    "offset": {{[0-9]+}},
4482ce598a4SAaron Ballman // CHECK-NEXT:    "col": 1,
449a612e34cSAaron Ballman // CHECK-NEXT:    "tokLen": 4
4502ce598a4SAaron Ballman // CHECK-NEXT:   },
4512ce598a4SAaron Ballman // CHECK-NEXT:   "end": {
452*6d8e5c96SChris Bieneman // CHECK-NEXT:    "offset": {{[0-9]+}},
453a612e34cSAaron Ballman // CHECK-NEXT:    "line": 31,
4542ce598a4SAaron Ballman // CHECK-NEXT:    "col": 1,
455a612e34cSAaron Ballman // CHECK-NEXT:    "tokLen": 1
4562ce598a4SAaron Ballman // CHECK-NEXT:   }
4572ce598a4SAaron Ballman // CHECK-NEXT:  },
4582ce598a4SAaron Ballman // CHECK-NEXT:  "name": "I",
4592ce598a4SAaron Ballman // CHECK-NEXT:  "fixedUnderlyingType": {
4602ce598a4SAaron Ballman // CHECK-NEXT:   "qualType": "int"
4612ce598a4SAaron Ballman // CHECK-NEXT:  },
4622ce598a4SAaron Ballman // CHECK-NEXT:  "scopedEnumTag": "class",
4632ce598a4SAaron Ballman // CHECK-NEXT:  "inner": [
4642ce598a4SAaron Ballman // CHECK-NEXT:   {
4652ce598a4SAaron Ballman // CHECK-NEXT:    "id": "0x{{.*}}",
4662ce598a4SAaron Ballman // CHECK-NEXT:    "kind": "EnumConstantDecl",
4672ce598a4SAaron Ballman // CHECK-NEXT:    "loc": {
468*6d8e5c96SChris Bieneman // CHECK-NEXT:     "offset": {{[0-9]+}},
469a612e34cSAaron Ballman // CHECK-NEXT:     "line": 29,
4702ce598a4SAaron Ballman // CHECK-NEXT:     "col": 3,
471a612e34cSAaron Ballman // CHECK-NEXT:     "tokLen": 6
4722ce598a4SAaron Ballman // CHECK-NEXT:    },
4732ce598a4SAaron Ballman // CHECK-NEXT:    "range": {
4742ce598a4SAaron Ballman // CHECK-NEXT:     "begin": {
475*6d8e5c96SChris Bieneman // CHECK-NEXT:      "offset": {{[0-9]+}},
4762ce598a4SAaron Ballman // CHECK-NEXT:      "col": 3,
477a612e34cSAaron Ballman // CHECK-NEXT:      "tokLen": 6
4782ce598a4SAaron Ballman // CHECK-NEXT:     },
4792ce598a4SAaron Ballman // CHECK-NEXT:     "end": {
480*6d8e5c96SChris Bieneman // CHECK-NEXT:      "offset": {{[0-9]+}},
4812ce598a4SAaron Ballman // CHECK-NEXT:      "col": 3,
482a612e34cSAaron Ballman // CHECK-NEXT:      "tokLen": 6
4832ce598a4SAaron Ballman // CHECK-NEXT:     }
4842ce598a4SAaron Ballman // CHECK-NEXT:    },
4852ce598a4SAaron Ballman // CHECK-NEXT:    "name": "Eleven",
4862ce598a4SAaron Ballman // CHECK-NEXT:    "type": {
4872ce598a4SAaron Ballman // CHECK-NEXT:     "qualType": "I"
4882ce598a4SAaron Ballman // CHECK-NEXT:    }
4892ce598a4SAaron Ballman // CHECK-NEXT:   },
4902ce598a4SAaron Ballman // CHECK-NEXT:   {
4912ce598a4SAaron Ballman // CHECK-NEXT:    "id": "0x{{.*}}",
4922ce598a4SAaron Ballman // CHECK-NEXT:    "kind": "EnumConstantDecl",
4932ce598a4SAaron Ballman // CHECK-NEXT:    "loc": {
494*6d8e5c96SChris Bieneman // CHECK-NEXT:     "offset": {{[0-9]+}},
495a612e34cSAaron Ballman // CHECK-NEXT:     "line": 30,
4962ce598a4SAaron Ballman // CHECK-NEXT:     "col": 3,
497a612e34cSAaron Ballman // CHECK-NEXT:     "tokLen": 6
4982ce598a4SAaron Ballman // CHECK-NEXT:    },
4992ce598a4SAaron Ballman // CHECK-NEXT:    "range": {
5002ce598a4SAaron Ballman // CHECK-NEXT:     "begin": {
501*6d8e5c96SChris Bieneman // CHECK-NEXT:      "offset": {{[0-9]+}},
5022ce598a4SAaron Ballman // CHECK-NEXT:      "col": 3,
503a612e34cSAaron Ballman // CHECK-NEXT:      "tokLen": 6
5042ce598a4SAaron Ballman // CHECK-NEXT:     },
5052ce598a4SAaron Ballman // CHECK-NEXT:     "end": {
506*6d8e5c96SChris Bieneman // CHECK-NEXT:      "offset": {{[0-9]+}},
5072ce598a4SAaron Ballman // CHECK-NEXT:      "col": 3,
508a612e34cSAaron Ballman // CHECK-NEXT:      "tokLen": 6
5092ce598a4SAaron Ballman // CHECK-NEXT:     }
5102ce598a4SAaron Ballman // CHECK-NEXT:    },
5112ce598a4SAaron Ballman // CHECK-NEXT:    "name": "Twelve",
5122ce598a4SAaron Ballman // CHECK-NEXT:    "type": {
5132ce598a4SAaron Ballman // CHECK-NEXT:     "qualType": "I"
5142ce598a4SAaron Ballman // CHECK-NEXT:    }
5152ce598a4SAaron Ballman // CHECK-NEXT:   }
5162ce598a4SAaron Ballman // CHECK-NEXT:  ]
5172ce598a4SAaron Ballman // CHECK-NEXT: }
518