|  | // RUN: %clang_cc1 -std=gnu11 -triple x86_64-unknown-unknown -ast-dump=json %s | FileCheck %s | 
|  |  | 
|  | int TestLocation = 0; | 
|  | int TestIndent = 1 + (1); | 
|  |  | 
|  | void TestDeclStmt(void) { | 
|  | int x = 0; | 
|  | int y, z; | 
|  | } | 
|  |  | 
|  | int TestOpaqueValueExpr = 0 ?: 1; | 
|  |  | 
|  | void TestUnaryOperatorExpr(void) { | 
|  | char T1 = 1; | 
|  | int T2 = 1; | 
|  |  | 
|  | T1++; | 
|  | T2++; | 
|  |  | 
|  | -T1; | 
|  | -T2; | 
|  |  | 
|  | ~T1; | 
|  | ~T2; | 
|  | } | 
|  |  | 
|  | void TestGenericSelectionExpressions(int i) { | 
|  | _Generic(i, int : 12); | 
|  | _Generic(i, int : 12, default : 0); | 
|  | _Generic(i, default : 0, int : 12); | 
|  | _Generic(i, int : 12, float : 10, default : 100); | 
|  |  | 
|  | int j = _Generic(i, int : 12); | 
|  | } | 
|  |  | 
|  | void TestLabelsAndGoto(void) { | 
|  | // Note: case and default labels are handled by TestSwitch(). | 
|  |  | 
|  | label1: | 
|  | ; | 
|  |  | 
|  | goto label2; | 
|  |  | 
|  | label2: | 
|  | 0; | 
|  |  | 
|  | void *ptr = &&label1; | 
|  |  | 
|  | goto *ptr; | 
|  | } | 
|  |  | 
|  | void TestSwitch(int i) { | 
|  | switch (i) { | 
|  | case 0: | 
|  | break; | 
|  | case 1: | 
|  | case 2: | 
|  | break; | 
|  | default: | 
|  | break; | 
|  | case 3 ... 5: | 
|  | break; | 
|  | } | 
|  | } | 
|  |  | 
|  | void TestIf(_Bool b) { | 
|  | if (b) | 
|  | ; | 
|  |  | 
|  | if (b) {} | 
|  |  | 
|  | if (b) | 
|  | ; | 
|  | else | 
|  | ; | 
|  |  | 
|  | if (b) {} | 
|  | else {} | 
|  |  | 
|  | if (b) | 
|  | ; | 
|  | else if (b) | 
|  | ; | 
|  |  | 
|  | if (b) | 
|  | ; | 
|  | else if (b) | 
|  | ; | 
|  | else | 
|  | ; | 
|  | } | 
|  |  | 
|  | void TestIteration(_Bool b) { | 
|  | while (b) | 
|  | ; | 
|  |  | 
|  | do | 
|  | ; | 
|  | while (b); | 
|  |  | 
|  | for (int i = 0; i < 10; ++i) | 
|  | ; | 
|  |  | 
|  | for (b; b; b) | 
|  | ; | 
|  |  | 
|  | for (; b; b = !b) | 
|  | ; | 
|  |  | 
|  | for (; b;) | 
|  | ; | 
|  |  | 
|  | for (;; b = !b) | 
|  | ; | 
|  |  | 
|  | for (;;) | 
|  | ; | 
|  | } | 
|  |  | 
|  | void TestJumps(void) { | 
|  | // goto and computed goto was tested in TestLabelsAndGoto(). | 
|  |  | 
|  | while (1) { | 
|  | continue; | 
|  | break; | 
|  | } | 
|  | return; | 
|  |  | 
|  | return TestSwitch(1); | 
|  | } | 
|  |  | 
|  | void TestMiscStmts(void) { | 
|  | ({int a = 10; a;}); | 
|  | } | 
|  |  | 
|  | void TestLineNumbers(void) { | 
|  | int a; | 
|  |  | 
|  | #define FOO(x) x | 
|  |  | 
|  | #line 100000 | 
|  | int b; | 
|  |  | 
|  | #line 200000 | 
|  | FOO(1); | 
|  |  | 
|  | #undef FOO | 
|  | } | 
|  |  | 
|  | void TestVLA(int n) { | 
|  | double vla[n]; | 
|  | } | 
|  |  | 
|  | // NOTE: CHECK lines have been autogenerated by gen_ast_dump_json_test.py | 
|  | // using --filters=VarDecl,CompoundStmt | 
|  |  | 
|  |  | 
|  | // CHECK-NOT: {{^}}Dumping | 
|  | // CHECK:  "kind": "VarDecl", | 
|  | // CHECK-NEXT:  "loc": { | 
|  | // CHECK-NEXT:   "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:   "file": "{{.*}}", | 
|  | // CHECK-NEXT:   "line": 3, | 
|  | // CHECK-NEXT:   "col": 5, | 
|  | // CHECK-NEXT:   "tokLen": 12 | 
|  | // CHECK-NEXT:  }, | 
|  | // CHECK-NEXT:  "range": { | 
|  | // CHECK-NEXT:   "begin": { | 
|  | // CHECK-NEXT:    "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:    "col": 1, | 
|  | // CHECK-NEXT:    "tokLen": 3 | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   "end": { | 
|  | // CHECK-NEXT:    "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:    "col": 20, | 
|  | // CHECK-NEXT:    "tokLen": 1 | 
|  | // CHECK-NEXT:   } | 
|  | // CHECK-NEXT:  }, | 
|  | // CHECK-NEXT:  "name": "TestLocation", | 
|  | // CHECK-NEXT:  "mangledName": "TestLocation", | 
|  | // CHECK-NEXT:  "type": { | 
|  | // CHECK-NEXT:   "qualType": "int" | 
|  | // CHECK-NEXT:  }, | 
|  | // CHECK-NEXT:  "init": "c", | 
|  | // CHECK-NEXT:  "inner": [ | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 20, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 20, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "type": { | 
|  | // CHECK-NEXT:     "qualType": "int" | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:    "value": "0" | 
|  | // CHECK-NEXT:   } | 
|  | // CHECK-NEXT:  ] | 
|  | // CHECK-NEXT: } | 
|  |  | 
|  |  | 
|  | // CHECK-NOT: {{^}}Dumping | 
|  | // CHECK:  "kind": "VarDecl", | 
|  | // CHECK-NEXT:  "loc": { | 
|  | // CHECK-NEXT:   "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:   "line": 4, | 
|  | // CHECK-NEXT:   "col": 5, | 
|  | // CHECK-NEXT:   "tokLen": 10 | 
|  | // CHECK-NEXT:  }, | 
|  | // CHECK-NEXT:  "range": { | 
|  | // CHECK-NEXT:   "begin": { | 
|  | // CHECK-NEXT:    "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:    "col": 1, | 
|  | // CHECK-NEXT:    "tokLen": 3 | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   "end": { | 
|  | // CHECK-NEXT:    "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:    "col": 24, | 
|  | // CHECK-NEXT:    "tokLen": 1 | 
|  | // CHECK-NEXT:   } | 
|  | // CHECK-NEXT:  }, | 
|  | // CHECK-NEXT:  "name": "TestIndent", | 
|  | // CHECK-NEXT:  "mangledName": "TestIndent", | 
|  | // CHECK-NEXT:  "type": { | 
|  | // CHECK-NEXT:   "qualType": "int" | 
|  | // CHECK-NEXT:  }, | 
|  | // CHECK-NEXT:  "init": "c", | 
|  | // CHECK-NEXT:  "inner": [ | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "BinaryOperator", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 18, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 24, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "type": { | 
|  | // CHECK-NEXT:     "qualType": "int" | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:    "opcode": "+", | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 18, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 18, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "value": "1" | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "ParenExpr", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 22, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 24, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 23, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 23, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:        "value": "1" | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   } | 
|  | // CHECK-NEXT:  ] | 
|  | // CHECK-NEXT: } | 
|  |  | 
|  |  | 
|  | // CHECK-NOT: {{^}}Dumping | 
|  | // CHECK:  "kind": "CompoundStmt", | 
|  | // CHECK-NEXT:  "range": { | 
|  | // CHECK-NEXT:   "begin": { | 
|  | // CHECK-NEXT:    "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:    "line": 6, | 
|  | // CHECK-NEXT:    "col": 25, | 
|  | // CHECK-NEXT:    "tokLen": 1 | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   "end": { | 
|  | // CHECK-NEXT:    "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:    "line": 9, | 
|  | // CHECK-NEXT:    "col": 1, | 
|  | // CHECK-NEXT:    "tokLen": 1 | 
|  | // CHECK-NEXT:   } | 
|  | // CHECK-NEXT:  }, | 
|  | // CHECK-NEXT:  "inner": [ | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "DeclStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 7, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 3 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 12, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "VarDecl", | 
|  | // CHECK-NEXT:      "loc": { | 
|  | // CHECK-NEXT:       "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:       "col": 7, | 
|  | // CHECK-NEXT:       "tokLen": 1 | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 3, | 
|  | // CHECK-NEXT:        "tokLen": 3 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 11, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "name": "x", | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "init": "c", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 11, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 11, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:        "value": "0" | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "DeclStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 8, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 3 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 11, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "VarDecl", | 
|  | // CHECK-NEXT:      "loc": { | 
|  | // CHECK-NEXT:       "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:       "col": 7, | 
|  | // CHECK-NEXT:       "tokLen": 1 | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 3, | 
|  | // CHECK-NEXT:        "tokLen": 3 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 7, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "name": "y", | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "VarDecl", | 
|  | // CHECK-NEXT:      "loc": { | 
|  | // CHECK-NEXT:       "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:       "col": 10, | 
|  | // CHECK-NEXT:       "tokLen": 1 | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 3, | 
|  | // CHECK-NEXT:        "tokLen": 3 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 10, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "name": "z", | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   } | 
|  | // CHECK-NEXT:  ] | 
|  | // CHECK-NEXT: } | 
|  |  | 
|  |  | 
|  | // CHECK-NOT: {{^}}Dumping | 
|  | // CHECK:  "kind": "VarDecl", | 
|  | // CHECK-NEXT:  "loc": { | 
|  | // CHECK-NEXT:   "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:   "line": 11, | 
|  | // CHECK-NEXT:   "col": 5, | 
|  | // CHECK-NEXT:   "tokLen": 19 | 
|  | // CHECK-NEXT:  }, | 
|  | // CHECK-NEXT:  "range": { | 
|  | // CHECK-NEXT:   "begin": { | 
|  | // CHECK-NEXT:    "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:    "col": 1, | 
|  | // CHECK-NEXT:    "tokLen": 3 | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   "end": { | 
|  | // CHECK-NEXT:    "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:    "col": 32, | 
|  | // CHECK-NEXT:    "tokLen": 1 | 
|  | // CHECK-NEXT:   } | 
|  | // CHECK-NEXT:  }, | 
|  | // CHECK-NEXT:  "name": "TestOpaqueValueExpr", | 
|  | // CHECK-NEXT:  "mangledName": "TestOpaqueValueExpr", | 
|  | // CHECK-NEXT:  "type": { | 
|  | // CHECK-NEXT:   "qualType": "int" | 
|  | // CHECK-NEXT:  }, | 
|  | // CHECK-NEXT:  "init": "c", | 
|  | // CHECK-NEXT:  "inner": [ | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "BinaryConditionalOperator", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 27, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 32, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "type": { | 
|  | // CHECK-NEXT:     "qualType": "int" | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 27, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 27, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "value": "0" | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "OpaqueValueExpr", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 27, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 27, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 27, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 27, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:        "value": "0" | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "OpaqueValueExpr", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 27, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 27, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 27, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 27, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:        "value": "0" | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 32, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 32, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "value": "1" | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   } | 
|  | // CHECK-NEXT:  ] | 
|  | // CHECK-NEXT: } | 
|  |  | 
|  |  | 
|  | // CHECK-NOT: {{^}}Dumping | 
|  | // CHECK:  "kind": "CompoundStmt", | 
|  | // CHECK-NEXT:  "range": { | 
|  | // CHECK-NEXT:   "begin": { | 
|  | // CHECK-NEXT:    "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:    "line": 13, | 
|  | // CHECK-NEXT:    "col": 34, | 
|  | // CHECK-NEXT:    "tokLen": 1 | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   "end": { | 
|  | // CHECK-NEXT:    "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:    "line": 25, | 
|  | // CHECK-NEXT:    "col": 1, | 
|  | // CHECK-NEXT:    "tokLen": 1 | 
|  | // CHECK-NEXT:   } | 
|  | // CHECK-NEXT:  }, | 
|  | // CHECK-NEXT:  "inner": [ | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "DeclStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 14, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 4 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 14, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "VarDecl", | 
|  | // CHECK-NEXT:      "loc": { | 
|  | // CHECK-NEXT:       "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:       "col": 8, | 
|  | // CHECK-NEXT:       "tokLen": 2 | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 3, | 
|  | // CHECK-NEXT:        "tokLen": 4 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 13, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "isUsed": true, | 
|  | // CHECK-NEXT:      "name": "T1", | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "char" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "init": "c", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 13, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 13, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "char" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:        "castKind": "IntegralCast", | 
|  | // CHECK-NEXT:        "inner": [ | 
|  | // CHECK-NEXT:         { | 
|  | // CHECK-NEXT:          "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:          "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:          "range": { | 
|  | // CHECK-NEXT:           "begin": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 13, | 
|  | // CHECK-NEXT:            "tokLen": 1 | 
|  | // CHECK-NEXT:           }, | 
|  | // CHECK-NEXT:           "end": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 13, | 
|  | // CHECK-NEXT:            "tokLen": 1 | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "type": { | 
|  | // CHECK-NEXT:           "qualType": "int" | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:          "value": "1" | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        ] | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "DeclStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 15, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 3 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 13, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "VarDecl", | 
|  | // CHECK-NEXT:      "loc": { | 
|  | // CHECK-NEXT:       "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:       "col": 7, | 
|  | // CHECK-NEXT:       "tokLen": 2 | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 3, | 
|  | // CHECK-NEXT:        "tokLen": 3 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 12, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "isUsed": true, | 
|  | // CHECK-NEXT:      "name": "T2", | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "init": "c", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 12, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 12, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:        "value": "1" | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "UnaryOperator", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 17, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 2 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 5, | 
|  | // CHECK-NEXT:      "tokLen": 2 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "type": { | 
|  | // CHECK-NEXT:     "qualType": "char" | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:    "isPostfix": true, | 
|  | // CHECK-NEXT:    "opcode": "++", | 
|  | // CHECK-NEXT:    "canOverflow": false, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 3, | 
|  | // CHECK-NEXT:        "tokLen": 2 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 3, | 
|  | // CHECK-NEXT:        "tokLen": 2 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "char" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:      "referencedDecl": { | 
|  | // CHECK-NEXT:       "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:       "kind": "VarDecl", | 
|  | // CHECK-NEXT:       "name": "T1", | 
|  | // CHECK-NEXT:       "type": { | 
|  | // CHECK-NEXT:        "qualType": "char" | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "UnaryOperator", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 18, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 2 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 5, | 
|  | // CHECK-NEXT:      "tokLen": 2 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "type": { | 
|  | // CHECK-NEXT:     "qualType": "int" | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:    "isPostfix": true, | 
|  | // CHECK-NEXT:    "opcode": "++", | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 3, | 
|  | // CHECK-NEXT:        "tokLen": 2 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 3, | 
|  | // CHECK-NEXT:        "tokLen": 2 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:      "referencedDecl": { | 
|  | // CHECK-NEXT:       "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:       "kind": "VarDecl", | 
|  | // CHECK-NEXT:       "name": "T2", | 
|  | // CHECK-NEXT:       "type": { | 
|  | // CHECK-NEXT:        "qualType": "int" | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "UnaryOperator", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 20, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 4, | 
|  | // CHECK-NEXT:      "tokLen": 2 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "type": { | 
|  | // CHECK-NEXT:     "qualType": "int" | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:    "isPostfix": false, | 
|  | // CHECK-NEXT:    "opcode": "-", | 
|  | // CHECK-NEXT:    "canOverflow": false, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 4, | 
|  | // CHECK-NEXT:        "tokLen": 2 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 4, | 
|  | // CHECK-NEXT:        "tokLen": 2 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "castKind": "IntegralCast", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 4, | 
|  | // CHECK-NEXT:          "tokLen": 2 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 4, | 
|  | // CHECK-NEXT:          "tokLen": 2 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "char" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:        "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:        "inner": [ | 
|  | // CHECK-NEXT:         { | 
|  | // CHECK-NEXT:          "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:          "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:          "range": { | 
|  | // CHECK-NEXT:           "begin": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 4, | 
|  | // CHECK-NEXT:            "tokLen": 2 | 
|  | // CHECK-NEXT:           }, | 
|  | // CHECK-NEXT:           "end": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 4, | 
|  | // CHECK-NEXT:            "tokLen": 2 | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "type": { | 
|  | // CHECK-NEXT:           "qualType": "char" | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:          "referencedDecl": { | 
|  | // CHECK-NEXT:           "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:           "kind": "VarDecl", | 
|  | // CHECK-NEXT:           "name": "T1", | 
|  | // CHECK-NEXT:           "type": { | 
|  | // CHECK-NEXT:            "qualType": "char" | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          } | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        ] | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "UnaryOperator", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 21, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 4, | 
|  | // CHECK-NEXT:      "tokLen": 2 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "type": { | 
|  | // CHECK-NEXT:     "qualType": "int" | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:    "isPostfix": false, | 
|  | // CHECK-NEXT:    "opcode": "-", | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 4, | 
|  | // CHECK-NEXT:        "tokLen": 2 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 4, | 
|  | // CHECK-NEXT:        "tokLen": 2 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 4, | 
|  | // CHECK-NEXT:          "tokLen": 2 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 4, | 
|  | // CHECK-NEXT:          "tokLen": 2 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:        "referencedDecl": { | 
|  | // CHECK-NEXT:         "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:         "kind": "VarDecl", | 
|  | // CHECK-NEXT:         "name": "T2", | 
|  | // CHECK-NEXT:         "type": { | 
|  | // CHECK-NEXT:          "qualType": "int" | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        } | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "UnaryOperator", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 23, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 4, | 
|  | // CHECK-NEXT:      "tokLen": 2 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "type": { | 
|  | // CHECK-NEXT:     "qualType": "int" | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:    "isPostfix": false, | 
|  | // CHECK-NEXT:    "opcode": "~", | 
|  | // CHECK-NEXT:    "canOverflow": false, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 4, | 
|  | // CHECK-NEXT:        "tokLen": 2 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 4, | 
|  | // CHECK-NEXT:        "tokLen": 2 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "castKind": "IntegralCast", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 4, | 
|  | // CHECK-NEXT:          "tokLen": 2 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 4, | 
|  | // CHECK-NEXT:          "tokLen": 2 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "char" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:        "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:        "inner": [ | 
|  | // CHECK-NEXT:         { | 
|  | // CHECK-NEXT:          "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:          "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:          "range": { | 
|  | // CHECK-NEXT:           "begin": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 4, | 
|  | // CHECK-NEXT:            "tokLen": 2 | 
|  | // CHECK-NEXT:           }, | 
|  | // CHECK-NEXT:           "end": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 4, | 
|  | // CHECK-NEXT:            "tokLen": 2 | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "type": { | 
|  | // CHECK-NEXT:           "qualType": "char" | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:          "referencedDecl": { | 
|  | // CHECK-NEXT:           "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:           "kind": "VarDecl", | 
|  | // CHECK-NEXT:           "name": "T1", | 
|  | // CHECK-NEXT:           "type": { | 
|  | // CHECK-NEXT:            "qualType": "char" | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          } | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        ] | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "UnaryOperator", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 24, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 4, | 
|  | // CHECK-NEXT:      "tokLen": 2 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "type": { | 
|  | // CHECK-NEXT:     "qualType": "int" | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:    "isPostfix": false, | 
|  | // CHECK-NEXT:    "opcode": "~", | 
|  | // CHECK-NEXT:    "canOverflow": false, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 4, | 
|  | // CHECK-NEXT:        "tokLen": 2 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 4, | 
|  | // CHECK-NEXT:        "tokLen": 2 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 4, | 
|  | // CHECK-NEXT:          "tokLen": 2 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 4, | 
|  | // CHECK-NEXT:          "tokLen": 2 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:        "referencedDecl": { | 
|  | // CHECK-NEXT:         "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:         "kind": "VarDecl", | 
|  | // CHECK-NEXT:         "name": "T2", | 
|  | // CHECK-NEXT:         "type": { | 
|  | // CHECK-NEXT:          "qualType": "int" | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        } | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   } | 
|  | // CHECK-NEXT:  ] | 
|  | // CHECK-NEXT: } | 
|  |  | 
|  |  | 
|  | // CHECK-NOT: {{^}}Dumping | 
|  | // CHECK:  "kind": "CompoundStmt", | 
|  | // CHECK-NEXT:  "range": { | 
|  | // CHECK-NEXT:   "begin": { | 
|  | // CHECK-NEXT:    "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:    "col": 45, | 
|  | // CHECK-NEXT:    "tokLen": 1 | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   "end": { | 
|  | // CHECK-NEXT:    "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:    "line": 34, | 
|  | // CHECK-NEXT:    "col": 1, | 
|  | // CHECK-NEXT:    "tokLen": 1 | 
|  | // CHECK-NEXT:   } | 
|  | // CHECK-NEXT:  }, | 
|  | // CHECK-NEXT:  "inner": [ | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "GenericSelectionExpr", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 28, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 8 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 23, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "type": { | 
|  | // CHECK-NEXT:     "qualType": "int" | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 12, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 12, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 12, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 12, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:        "referencedDecl": { | 
|  | // CHECK-NEXT:         "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:         "kind": "ParmVarDecl", | 
|  | // CHECK-NEXT:         "name": "i", | 
|  | // CHECK-NEXT:         "type": { | 
|  | // CHECK-NEXT:          "qualType": "int" | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "nonOdrUseReason": "unevaluated" | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "BuiltinType", | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "associationKind": "case", | 
|  | // CHECK-NEXT:      "selected": true, | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "BuiltinType", | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        } | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 21, | 
|  | // CHECK-NEXT:          "tokLen": 2 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 21, | 
|  | // CHECK-NEXT:          "tokLen": 2 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:        "value": "12" | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "GenericSelectionExpr", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 29, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 8 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 36, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "type": { | 
|  | // CHECK-NEXT:     "qualType": "int" | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 12, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 12, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 12, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 12, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:        "referencedDecl": { | 
|  | // CHECK-NEXT:         "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:         "kind": "ParmVarDecl", | 
|  | // CHECK-NEXT:         "name": "i", | 
|  | // CHECK-NEXT:         "type": { | 
|  | // CHECK-NEXT:          "qualType": "int" | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "nonOdrUseReason": "unevaluated" | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "BuiltinType", | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "associationKind": "case", | 
|  | // CHECK-NEXT:      "selected": true, | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "BuiltinType", | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        } | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 21, | 
|  | // CHECK-NEXT:          "tokLen": 2 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 21, | 
|  | // CHECK-NEXT:          "tokLen": 2 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:        "value": "12" | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "associationKind": "default", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 35, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 35, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:        "value": "0" | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "GenericSelectionExpr", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 30, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 8 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 36, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "type": { | 
|  | // CHECK-NEXT:     "qualType": "int" | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 12, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 12, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 12, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 12, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:        "referencedDecl": { | 
|  | // CHECK-NEXT:         "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:         "kind": "ParmVarDecl", | 
|  | // CHECK-NEXT:         "name": "i", | 
|  | // CHECK-NEXT:         "type": { | 
|  | // CHECK-NEXT:          "qualType": "int" | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "nonOdrUseReason": "unevaluated" | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "BuiltinType", | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "associationKind": "default", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 25, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 25, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:        "value": "0" | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "associationKind": "case", | 
|  | // CHECK-NEXT:      "selected": true, | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "BuiltinType", | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        } | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 34, | 
|  | // CHECK-NEXT:          "tokLen": 2 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 34, | 
|  | // CHECK-NEXT:          "tokLen": 2 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:        "value": "12" | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "GenericSelectionExpr", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 31, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 8 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 50, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "type": { | 
|  | // CHECK-NEXT:     "qualType": "int" | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 12, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 12, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 12, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 12, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:        "referencedDecl": { | 
|  | // CHECK-NEXT:         "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:         "kind": "ParmVarDecl", | 
|  | // CHECK-NEXT:         "name": "i", | 
|  | // CHECK-NEXT:         "type": { | 
|  | // CHECK-NEXT:          "qualType": "int" | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "nonOdrUseReason": "unevaluated" | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "BuiltinType", | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "associationKind": "case", | 
|  | // CHECK-NEXT:      "selected": true, | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "BuiltinType", | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        } | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 21, | 
|  | // CHECK-NEXT:          "tokLen": 2 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 21, | 
|  | // CHECK-NEXT:          "tokLen": 2 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:        "value": "12" | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "associationKind": "case", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "BuiltinType", | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "float" | 
|  | // CHECK-NEXT:        } | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 33, | 
|  | // CHECK-NEXT:          "tokLen": 2 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 33, | 
|  | // CHECK-NEXT:          "tokLen": 2 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:        "value": "10" | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "associationKind": "default", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 47, | 
|  | // CHECK-NEXT:          "tokLen": 3 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 47, | 
|  | // CHECK-NEXT:          "tokLen": 3 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:        "value": "100" | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "DeclStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 33, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 3 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 32, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "VarDecl", | 
|  | // CHECK-NEXT:      "loc": { | 
|  | // CHECK-NEXT:       "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:       "col": 7, | 
|  | // CHECK-NEXT:       "tokLen": 1 | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 3, | 
|  | // CHECK-NEXT:        "tokLen": 3 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 31, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "name": "j", | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "init": "c", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "GenericSelectionExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 11, | 
|  | // CHECK-NEXT:          "tokLen": 8 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 31, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:        "inner": [ | 
|  | // CHECK-NEXT:         { | 
|  | // CHECK-NEXT:          "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:          "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:          "range": { | 
|  | // CHECK-NEXT:           "begin": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 20, | 
|  | // CHECK-NEXT:            "tokLen": 1 | 
|  | // CHECK-NEXT:           }, | 
|  | // CHECK-NEXT:           "end": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 20, | 
|  | // CHECK-NEXT:            "tokLen": 1 | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "type": { | 
|  | // CHECK-NEXT:           "qualType": "int" | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:          "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:          "inner": [ | 
|  | // CHECK-NEXT:           { | 
|  | // CHECK-NEXT:            "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:            "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:            "range": { | 
|  | // CHECK-NEXT:             "begin": { | 
|  | // CHECK-NEXT:              "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:              "col": 20, | 
|  | // CHECK-NEXT:              "tokLen": 1 | 
|  | // CHECK-NEXT:             }, | 
|  | // CHECK-NEXT:             "end": { | 
|  | // CHECK-NEXT:              "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:              "col": 20, | 
|  | // CHECK-NEXT:              "tokLen": 1 | 
|  | // CHECK-NEXT:             } | 
|  | // CHECK-NEXT:            }, | 
|  | // CHECK-NEXT:            "type": { | 
|  | // CHECK-NEXT:             "qualType": "int" | 
|  | // CHECK-NEXT:            }, | 
|  | // CHECK-NEXT:            "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:            "referencedDecl": { | 
|  | // CHECK-NEXT:             "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:             "kind": "ParmVarDecl", | 
|  | // CHECK-NEXT:             "name": "i", | 
|  | // CHECK-NEXT:             "type": { | 
|  | // CHECK-NEXT:              "qualType": "int" | 
|  | // CHECK-NEXT:             } | 
|  | // CHECK-NEXT:            }, | 
|  | // CHECK-NEXT:            "nonOdrUseReason": "unevaluated" | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          ] | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         { | 
|  | // CHECK-NEXT:          "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:          "kind": "BuiltinType", | 
|  | // CHECK-NEXT:          "type": { | 
|  | // CHECK-NEXT:           "qualType": "int" | 
|  | // CHECK-NEXT:          } | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         { | 
|  | // CHECK-NEXT:          "associationKind": "case", | 
|  | // CHECK-NEXT:          "selected": true, | 
|  | // CHECK-NEXT:          "inner": [ | 
|  | // CHECK-NEXT:           { | 
|  | // CHECK-NEXT:            "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:            "kind": "BuiltinType", | 
|  | // CHECK-NEXT:            "type": { | 
|  | // CHECK-NEXT:             "qualType": "int" | 
|  | // CHECK-NEXT:            } | 
|  | // CHECK-NEXT:           }, | 
|  | // CHECK-NEXT:           { | 
|  | // CHECK-NEXT:            "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:            "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:            "range": { | 
|  | // CHECK-NEXT:             "begin": { | 
|  | // CHECK-NEXT:              "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:              "col": 29, | 
|  | // CHECK-NEXT:              "tokLen": 2 | 
|  | // CHECK-NEXT:             }, | 
|  | // CHECK-NEXT:             "end": { | 
|  | // CHECK-NEXT:              "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:              "col": 29, | 
|  | // CHECK-NEXT:              "tokLen": 2 | 
|  | // CHECK-NEXT:             } | 
|  | // CHECK-NEXT:            }, | 
|  | // CHECK-NEXT:            "type": { | 
|  | // CHECK-NEXT:             "qualType": "int" | 
|  | // CHECK-NEXT:            }, | 
|  | // CHECK-NEXT:            "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:            "value": "12" | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          ] | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        ] | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   } | 
|  | // CHECK-NEXT:  ] | 
|  | // CHECK-NEXT: } | 
|  |  | 
|  |  | 
|  | // CHECK-NOT: {{^}}Dumping | 
|  | // CHECK:  "kind": "CompoundStmt", | 
|  | // CHECK-NEXT:  "range": { | 
|  | // CHECK-NEXT:   "begin": { | 
|  | // CHECK-NEXT:    "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:    "line": 36, | 
|  | // CHECK-NEXT:    "col": 30, | 
|  | // CHECK-NEXT:    "tokLen": 1 | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   "end": { | 
|  | // CHECK-NEXT:    "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:    "line": 50, | 
|  | // CHECK-NEXT:    "col": 1, | 
|  | // CHECK-NEXT:    "tokLen": 1 | 
|  | // CHECK-NEXT:   } | 
|  | // CHECK-NEXT:  }, | 
|  | // CHECK-NEXT:  "inner": [ | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "LabelStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 39, | 
|  | // CHECK-NEXT:      "col": 1, | 
|  | // CHECK-NEXT:      "tokLen": 6 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 40, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "name": "label1", | 
|  | // CHECK-NEXT:    "declId": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "NullStmt", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 3, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 3, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "GotoStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 42, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 4 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 8, | 
|  | // CHECK-NEXT:      "tokLen": 6 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "targetLabelDeclId": "0x{{.*}}" | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "LabelStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 44, | 
|  | // CHECK-NEXT:      "col": 1, | 
|  | // CHECK-NEXT:      "tokLen": 6 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 45, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "name": "label2", | 
|  | // CHECK-NEXT:    "declId": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 3, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 3, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "value": "0" | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "DeclStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 47, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 4 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 23, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "VarDecl", | 
|  | // CHECK-NEXT:      "loc": { | 
|  | // CHECK-NEXT:       "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:       "col": 9, | 
|  | // CHECK-NEXT:       "tokLen": 3 | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 3, | 
|  | // CHECK-NEXT:        "tokLen": 4 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 17, | 
|  | // CHECK-NEXT:        "tokLen": 6 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "isUsed": true, | 
|  | // CHECK-NEXT:      "name": "ptr", | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "void *" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "init": "c", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "AddrLabelExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 15, | 
|  | // CHECK-NEXT:          "tokLen": 2 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 17, | 
|  | // CHECK-NEXT:          "tokLen": 6 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "void *" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:        "name": "label1", | 
|  | // CHECK-NEXT:        "labelDeclId": "0x{{.*}}" | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "IndirectGotoStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 49, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 4 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 9, | 
|  | // CHECK-NEXT:      "tokLen": 3 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 9, | 
|  | // CHECK-NEXT:        "tokLen": 3 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 9, | 
|  | // CHECK-NEXT:        "tokLen": 3 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "const void *" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "castKind": "NoOp", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 9, | 
|  | // CHECK-NEXT:          "tokLen": 3 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 9, | 
|  | // CHECK-NEXT:          "tokLen": 3 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "void *" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:        "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:        "inner": [ | 
|  | // CHECK-NEXT:         { | 
|  | // CHECK-NEXT:          "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:          "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:          "range": { | 
|  | // CHECK-NEXT:           "begin": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 9, | 
|  | // CHECK-NEXT:            "tokLen": 3 | 
|  | // CHECK-NEXT:           }, | 
|  | // CHECK-NEXT:           "end": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 9, | 
|  | // CHECK-NEXT:            "tokLen": 3 | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "type": { | 
|  | // CHECK-NEXT:           "qualType": "void *" | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:          "referencedDecl": { | 
|  | // CHECK-NEXT:           "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:           "kind": "VarDecl", | 
|  | // CHECK-NEXT:           "name": "ptr", | 
|  | // CHECK-NEXT:           "type": { | 
|  | // CHECK-NEXT:            "qualType": "void *" | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          } | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        ] | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   } | 
|  | // CHECK-NEXT:  ] | 
|  | // CHECK-NEXT: } | 
|  |  | 
|  |  | 
|  | // CHECK-NOT: {{^}}Dumping | 
|  | // CHECK:  "kind": "CompoundStmt", | 
|  | // CHECK-NEXT:  "range": { | 
|  | // CHECK-NEXT:   "begin": { | 
|  | // CHECK-NEXT:    "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:    "col": 24, | 
|  | // CHECK-NEXT:    "tokLen": 1 | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   "end": { | 
|  | // CHECK-NEXT:    "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:    "line": 64, | 
|  | // CHECK-NEXT:    "col": 1, | 
|  | // CHECK-NEXT:    "tokLen": 1 | 
|  | // CHECK-NEXT:   } | 
|  | // CHECK-NEXT:  }, | 
|  | // CHECK-NEXT:  "inner": [ | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "SwitchStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 53, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 6 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 63, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 53, | 
|  | // CHECK-NEXT:        "col": 11, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 11, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 11, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 11, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:        "referencedDecl": { | 
|  | // CHECK-NEXT:         "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:         "kind": "ParmVarDecl", | 
|  | // CHECK-NEXT:         "name": "i", | 
|  | // CHECK-NEXT:         "type": { | 
|  | // CHECK-NEXT:          "qualType": "int" | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        } | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "CompoundStmt", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 14, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 63, | 
|  | // CHECK-NEXT:        "col": 3, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "CaseStmt", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "line": 54, | 
|  | // CHECK-NEXT:          "col": 3, | 
|  | // CHECK-NEXT:          "tokLen": 4 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "line": 55, | 
|  | // CHECK-NEXT:          "col": 5, | 
|  | // CHECK-NEXT:          "tokLen": 5 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "inner": [ | 
|  | // CHECK-NEXT:         { | 
|  | // CHECK-NEXT:          "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:          "kind": "ConstantExpr", | 
|  | // CHECK-NEXT:          "range": { | 
|  | // CHECK-NEXT:           "begin": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "line": 54, | 
|  | // CHECK-NEXT:            "col": 8, | 
|  | // CHECK-NEXT:            "tokLen": 1 | 
|  | // CHECK-NEXT:           }, | 
|  | // CHECK-NEXT:           "end": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 8, | 
|  | // CHECK-NEXT:            "tokLen": 1 | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "type": { | 
|  | // CHECK-NEXT:           "qualType": "int" | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:          "inner": [ | 
|  | // CHECK-NEXT:           { | 
|  | // CHECK-NEXT:            "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:            "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:            "range": { | 
|  | // CHECK-NEXT:             "begin": { | 
|  | // CHECK-NEXT:              "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:              "col": 8, | 
|  | // CHECK-NEXT:              "tokLen": 1 | 
|  | // CHECK-NEXT:             }, | 
|  | // CHECK-NEXT:             "end": { | 
|  | // CHECK-NEXT:              "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:              "col": 8, | 
|  | // CHECK-NEXT:              "tokLen": 1 | 
|  | // CHECK-NEXT:             } | 
|  | // CHECK-NEXT:            }, | 
|  | // CHECK-NEXT:            "type": { | 
|  | // CHECK-NEXT:             "qualType": "int" | 
|  | // CHECK-NEXT:            }, | 
|  | // CHECK-NEXT:            "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:            "value": "0" | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          ] | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         { | 
|  | // CHECK-NEXT:          "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:          "kind": "BreakStmt", | 
|  | // CHECK-NEXT:          "range": { | 
|  | // CHECK-NEXT:           "begin": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "line": 55, | 
|  | // CHECK-NEXT:            "col": 5, | 
|  | // CHECK-NEXT:            "tokLen": 5 | 
|  | // CHECK-NEXT:           }, | 
|  | // CHECK-NEXT:           "end": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 5, | 
|  | // CHECK-NEXT:            "tokLen": 5 | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          } | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        ] | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "CaseStmt", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "line": 56, | 
|  | // CHECK-NEXT:          "col": 3, | 
|  | // CHECK-NEXT:          "tokLen": 4 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "line": 58, | 
|  | // CHECK-NEXT:          "col": 5, | 
|  | // CHECK-NEXT:          "tokLen": 5 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "inner": [ | 
|  | // CHECK-NEXT:         { | 
|  | // CHECK-NEXT:          "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:          "kind": "ConstantExpr", | 
|  | // CHECK-NEXT:          "range": { | 
|  | // CHECK-NEXT:           "begin": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "line": 56, | 
|  | // CHECK-NEXT:            "col": 8, | 
|  | // CHECK-NEXT:            "tokLen": 1 | 
|  | // CHECK-NEXT:           }, | 
|  | // CHECK-NEXT:           "end": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 8, | 
|  | // CHECK-NEXT:            "tokLen": 1 | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "type": { | 
|  | // CHECK-NEXT:           "qualType": "int" | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:          "inner": [ | 
|  | // CHECK-NEXT:           { | 
|  | // CHECK-NEXT:            "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:            "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:            "range": { | 
|  | // CHECK-NEXT:             "begin": { | 
|  | // CHECK-NEXT:              "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:              "col": 8, | 
|  | // CHECK-NEXT:              "tokLen": 1 | 
|  | // CHECK-NEXT:             }, | 
|  | // CHECK-NEXT:             "end": { | 
|  | // CHECK-NEXT:              "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:              "col": 8, | 
|  | // CHECK-NEXT:              "tokLen": 1 | 
|  | // CHECK-NEXT:             } | 
|  | // CHECK-NEXT:            }, | 
|  | // CHECK-NEXT:            "type": { | 
|  | // CHECK-NEXT:             "qualType": "int" | 
|  | // CHECK-NEXT:            }, | 
|  | // CHECK-NEXT:            "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:            "value": "1" | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          ] | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         { | 
|  | // CHECK-NEXT:          "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:          "kind": "CaseStmt", | 
|  | // CHECK-NEXT:          "range": { | 
|  | // CHECK-NEXT:           "begin": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "line": 57, | 
|  | // CHECK-NEXT:            "col": 3, | 
|  | // CHECK-NEXT:            "tokLen": 4 | 
|  | // CHECK-NEXT:           }, | 
|  | // CHECK-NEXT:           "end": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "line": 58, | 
|  | // CHECK-NEXT:            "col": 5, | 
|  | // CHECK-NEXT:            "tokLen": 5 | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "inner": [ | 
|  | // CHECK-NEXT:           { | 
|  | // CHECK-NEXT:            "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:            "kind": "ConstantExpr", | 
|  | // CHECK-NEXT:            "range": { | 
|  | // CHECK-NEXT:             "begin": { | 
|  | // CHECK-NEXT:              "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:              "line": 57, | 
|  | // CHECK-NEXT:              "col": 8, | 
|  | // CHECK-NEXT:              "tokLen": 1 | 
|  | // CHECK-NEXT:             }, | 
|  | // CHECK-NEXT:             "end": { | 
|  | // CHECK-NEXT:              "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:              "col": 8, | 
|  | // CHECK-NEXT:              "tokLen": 1 | 
|  | // CHECK-NEXT:             } | 
|  | // CHECK-NEXT:            }, | 
|  | // CHECK-NEXT:            "type": { | 
|  | // CHECK-NEXT:             "qualType": "int" | 
|  | // CHECK-NEXT:            }, | 
|  | // CHECK-NEXT:            "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:            "inner": [ | 
|  | // CHECK-NEXT:             { | 
|  | // CHECK-NEXT:              "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:              "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:              "range": { | 
|  | // CHECK-NEXT:               "begin": { | 
|  | // CHECK-NEXT:                "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:                "col": 8, | 
|  | // CHECK-NEXT:                "tokLen": 1 | 
|  | // CHECK-NEXT:               }, | 
|  | // CHECK-NEXT:               "end": { | 
|  | // CHECK-NEXT:                "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:                "col": 8, | 
|  | // CHECK-NEXT:                "tokLen": 1 | 
|  | // CHECK-NEXT:               } | 
|  | // CHECK-NEXT:              }, | 
|  | // CHECK-NEXT:              "type": { | 
|  | // CHECK-NEXT:               "qualType": "int" | 
|  | // CHECK-NEXT:              }, | 
|  | // CHECK-NEXT:              "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:              "value": "2" | 
|  | // CHECK-NEXT:             } | 
|  | // CHECK-NEXT:            ] | 
|  | // CHECK-NEXT:           }, | 
|  | // CHECK-NEXT:           { | 
|  | // CHECK-NEXT:            "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:            "kind": "BreakStmt", | 
|  | // CHECK-NEXT:            "range": { | 
|  | // CHECK-NEXT:             "begin": { | 
|  | // CHECK-NEXT:              "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:              "line": 58, | 
|  | // CHECK-NEXT:              "col": 5, | 
|  | // CHECK-NEXT:              "tokLen": 5 | 
|  | // CHECK-NEXT:             }, | 
|  | // CHECK-NEXT:             "end": { | 
|  | // CHECK-NEXT:              "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:              "col": 5, | 
|  | // CHECK-NEXT:              "tokLen": 5 | 
|  | // CHECK-NEXT:             } | 
|  | // CHECK-NEXT:            } | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          ] | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        ] | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "DefaultStmt", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "line": 59, | 
|  | // CHECK-NEXT:          "col": 3, | 
|  | // CHECK-NEXT:          "tokLen": 7 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "line": 60, | 
|  | // CHECK-NEXT:          "col": 5, | 
|  | // CHECK-NEXT:          "tokLen": 5 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "inner": [ | 
|  | // CHECK-NEXT:         { | 
|  | // CHECK-NEXT:          "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:          "kind": "BreakStmt", | 
|  | // CHECK-NEXT:          "range": { | 
|  | // CHECK-NEXT:           "begin": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 5, | 
|  | // CHECK-NEXT:            "tokLen": 5 | 
|  | // CHECK-NEXT:           }, | 
|  | // CHECK-NEXT:           "end": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 5, | 
|  | // CHECK-NEXT:            "tokLen": 5 | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          } | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        ] | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "CaseStmt", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "line": 61, | 
|  | // CHECK-NEXT:          "col": 3, | 
|  | // CHECK-NEXT:          "tokLen": 4 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "line": 62, | 
|  | // CHECK-NEXT:          "col": 5, | 
|  | // CHECK-NEXT:          "tokLen": 5 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "isGNURange": true, | 
|  | // CHECK-NEXT:        "inner": [ | 
|  | // CHECK-NEXT:         { | 
|  | // CHECK-NEXT:          "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:          "kind": "ConstantExpr", | 
|  | // CHECK-NEXT:          "range": { | 
|  | // CHECK-NEXT:           "begin": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "line": 61, | 
|  | // CHECK-NEXT:            "col": 8, | 
|  | // CHECK-NEXT:            "tokLen": 1 | 
|  | // CHECK-NEXT:           }, | 
|  | // CHECK-NEXT:           "end": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 8, | 
|  | // CHECK-NEXT:            "tokLen": 1 | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "type": { | 
|  | // CHECK-NEXT:           "qualType": "int" | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:          "inner": [ | 
|  | // CHECK-NEXT:           { | 
|  | // CHECK-NEXT:            "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:            "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:            "range": { | 
|  | // CHECK-NEXT:             "begin": { | 
|  | // CHECK-NEXT:              "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:              "col": 8, | 
|  | // CHECK-NEXT:              "tokLen": 1 | 
|  | // CHECK-NEXT:             }, | 
|  | // CHECK-NEXT:             "end": { | 
|  | // CHECK-NEXT:              "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:              "col": 8, | 
|  | // CHECK-NEXT:              "tokLen": 1 | 
|  | // CHECK-NEXT:             } | 
|  | // CHECK-NEXT:            }, | 
|  | // CHECK-NEXT:            "type": { | 
|  | // CHECK-NEXT:             "qualType": "int" | 
|  | // CHECK-NEXT:            }, | 
|  | // CHECK-NEXT:            "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:            "value": "3" | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          ] | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         { | 
|  | // CHECK-NEXT:          "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:          "kind": "ConstantExpr", | 
|  | // CHECK-NEXT:          "range": { | 
|  | // CHECK-NEXT:           "begin": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 14, | 
|  | // CHECK-NEXT:            "tokLen": 1 | 
|  | // CHECK-NEXT:           }, | 
|  | // CHECK-NEXT:           "end": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 14, | 
|  | // CHECK-NEXT:            "tokLen": 1 | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "type": { | 
|  | // CHECK-NEXT:           "qualType": "int" | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:          "inner": [ | 
|  | // CHECK-NEXT:           { | 
|  | // CHECK-NEXT:            "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:            "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:            "range": { | 
|  | // CHECK-NEXT:             "begin": { | 
|  | // CHECK-NEXT:              "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:              "col": 14, | 
|  | // CHECK-NEXT:              "tokLen": 1 | 
|  | // CHECK-NEXT:             }, | 
|  | // CHECK-NEXT:             "end": { | 
|  | // CHECK-NEXT:              "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:              "col": 14, | 
|  | // CHECK-NEXT:              "tokLen": 1 | 
|  | // CHECK-NEXT:             } | 
|  | // CHECK-NEXT:            }, | 
|  | // CHECK-NEXT:            "type": { | 
|  | // CHECK-NEXT:             "qualType": "int" | 
|  | // CHECK-NEXT:            }, | 
|  | // CHECK-NEXT:            "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:            "value": "5" | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          ] | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         { | 
|  | // CHECK-NEXT:          "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:          "kind": "BreakStmt", | 
|  | // CHECK-NEXT:          "range": { | 
|  | // CHECK-NEXT:           "begin": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "line": 62, | 
|  | // CHECK-NEXT:            "col": 5, | 
|  | // CHECK-NEXT:            "tokLen": 5 | 
|  | // CHECK-NEXT:           }, | 
|  | // CHECK-NEXT:           "end": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 5, | 
|  | // CHECK-NEXT:            "tokLen": 5 | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          } | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        ] | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   } | 
|  | // CHECK-NEXT:  ] | 
|  | // CHECK-NEXT: } | 
|  |  | 
|  |  | 
|  | // CHECK-NOT: {{^}}Dumping | 
|  | // CHECK:  "kind": "CompoundStmt", | 
|  | // CHECK-NEXT:  "range": { | 
|  | // CHECK-NEXT:   "begin": { | 
|  | // CHECK-NEXT:    "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:    "col": 22, | 
|  | // CHECK-NEXT:    "tokLen": 1 | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   "end": { | 
|  | // CHECK-NEXT:    "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:    "line": 91, | 
|  | // CHECK-NEXT:    "col": 1, | 
|  | // CHECK-NEXT:    "tokLen": 1 | 
|  | // CHECK-NEXT:   } | 
|  | // CHECK-NEXT:  }, | 
|  | // CHECK-NEXT:  "inner": [ | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "IfStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 67, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 2 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 68, | 
|  | // CHECK-NEXT:      "col": 5, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 67, | 
|  | // CHECK-NEXT:        "col": 7, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 7, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "_Bool" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 7, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 7, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "_Bool" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:        "referencedDecl": { | 
|  | // CHECK-NEXT:         "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:         "kind": "ParmVarDecl", | 
|  | // CHECK-NEXT:         "name": "b", | 
|  | // CHECK-NEXT:         "type": { | 
|  | // CHECK-NEXT:          "qualType": "_Bool" | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        } | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "NullStmt", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 68, | 
|  | // CHECK-NEXT:        "col": 5, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 5, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "IfStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 70, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 2 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 11, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 7, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 7, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "_Bool" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 7, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 7, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "_Bool" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:        "referencedDecl": { | 
|  | // CHECK-NEXT:         "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:         "kind": "ParmVarDecl", | 
|  | // CHECK-NEXT:         "name": "b", | 
|  | // CHECK-NEXT:         "type": { | 
|  | // CHECK-NEXT:          "qualType": "_Bool" | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        } | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "CompoundStmt", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 10, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 11, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "IfStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 72, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 2 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 75, | 
|  | // CHECK-NEXT:      "col": 5, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "hasElse": true, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 72, | 
|  | // CHECK-NEXT:        "col": 7, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 7, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "_Bool" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 7, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 7, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "_Bool" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:        "referencedDecl": { | 
|  | // CHECK-NEXT:         "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:         "kind": "ParmVarDecl", | 
|  | // CHECK-NEXT:         "name": "b", | 
|  | // CHECK-NEXT:         "type": { | 
|  | // CHECK-NEXT:          "qualType": "_Bool" | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        } | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "NullStmt", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 73, | 
|  | // CHECK-NEXT:        "col": 5, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 5, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "NullStmt", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 75, | 
|  | // CHECK-NEXT:        "col": 5, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 5, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "IfStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 77, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 2 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 78, | 
|  | // CHECK-NEXT:      "col": 9, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "hasElse": true, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 77, | 
|  | // CHECK-NEXT:        "col": 7, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 7, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "_Bool" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 7, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 7, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "_Bool" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:        "referencedDecl": { | 
|  | // CHECK-NEXT:         "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:         "kind": "ParmVarDecl", | 
|  | // CHECK-NEXT:         "name": "b", | 
|  | // CHECK-NEXT:         "type": { | 
|  | // CHECK-NEXT:          "qualType": "_Bool" | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        } | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "CompoundStmt", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 10, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 11, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "CompoundStmt", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 78, | 
|  | // CHECK-NEXT:        "col": 8, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 9, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "IfStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 80, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 2 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 83, | 
|  | // CHECK-NEXT:      "col": 5, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "hasElse": true, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 80, | 
|  | // CHECK-NEXT:        "col": 7, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 7, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "_Bool" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 7, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 7, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "_Bool" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:        "referencedDecl": { | 
|  | // CHECK-NEXT:         "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:         "kind": "ParmVarDecl", | 
|  | // CHECK-NEXT:         "name": "b", | 
|  | // CHECK-NEXT:         "type": { | 
|  | // CHECK-NEXT:          "qualType": "_Bool" | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        } | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "NullStmt", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 81, | 
|  | // CHECK-NEXT:        "col": 5, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 5, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "IfStmt", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 82, | 
|  | // CHECK-NEXT:        "col": 8, | 
|  | // CHECK-NEXT:        "tokLen": 2 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 83, | 
|  | // CHECK-NEXT:        "col": 5, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "line": 82, | 
|  | // CHECK-NEXT:          "col": 12, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 12, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "_Bool" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:        "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:        "inner": [ | 
|  | // CHECK-NEXT:         { | 
|  | // CHECK-NEXT:          "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:          "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:          "range": { | 
|  | // CHECK-NEXT:           "begin": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 12, | 
|  | // CHECK-NEXT:            "tokLen": 1 | 
|  | // CHECK-NEXT:           }, | 
|  | // CHECK-NEXT:           "end": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 12, | 
|  | // CHECK-NEXT:            "tokLen": 1 | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "type": { | 
|  | // CHECK-NEXT:           "qualType": "_Bool" | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:          "referencedDecl": { | 
|  | // CHECK-NEXT:           "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:           "kind": "ParmVarDecl", | 
|  | // CHECK-NEXT:           "name": "b", | 
|  | // CHECK-NEXT:           "type": { | 
|  | // CHECK-NEXT:            "qualType": "_Bool" | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          } | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        ] | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "NullStmt", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "line": 83, | 
|  | // CHECK-NEXT:          "col": 5, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 5, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        } | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "IfStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 85, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 2 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 90, | 
|  | // CHECK-NEXT:      "col": 5, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "hasElse": true, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 85, | 
|  | // CHECK-NEXT:        "col": 7, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 7, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "_Bool" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 7, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 7, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "_Bool" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:        "referencedDecl": { | 
|  | // CHECK-NEXT:         "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:         "kind": "ParmVarDecl", | 
|  | // CHECK-NEXT:         "name": "b", | 
|  | // CHECK-NEXT:         "type": { | 
|  | // CHECK-NEXT:          "qualType": "_Bool" | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        } | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "NullStmt", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 86, | 
|  | // CHECK-NEXT:        "col": 5, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 5, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "IfStmt", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 87, | 
|  | // CHECK-NEXT:        "col": 8, | 
|  | // CHECK-NEXT:        "tokLen": 2 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 90, | 
|  | // CHECK-NEXT:        "col": 5, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "hasElse": true, | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "line": 87, | 
|  | // CHECK-NEXT:          "col": 12, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 12, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "_Bool" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:        "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:        "inner": [ | 
|  | // CHECK-NEXT:         { | 
|  | // CHECK-NEXT:          "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:          "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:          "range": { | 
|  | // CHECK-NEXT:           "begin": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 12, | 
|  | // CHECK-NEXT:            "tokLen": 1 | 
|  | // CHECK-NEXT:           }, | 
|  | // CHECK-NEXT:           "end": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 12, | 
|  | // CHECK-NEXT:            "tokLen": 1 | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "type": { | 
|  | // CHECK-NEXT:           "qualType": "_Bool" | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:          "referencedDecl": { | 
|  | // CHECK-NEXT:           "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:           "kind": "ParmVarDecl", | 
|  | // CHECK-NEXT:           "name": "b", | 
|  | // CHECK-NEXT:           "type": { | 
|  | // CHECK-NEXT:            "qualType": "_Bool" | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          } | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        ] | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "NullStmt", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "line": 88, | 
|  | // CHECK-NEXT:          "col": 5, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 5, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        } | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "NullStmt", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "line": 90, | 
|  | // CHECK-NEXT:          "col": 5, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 5, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        } | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   } | 
|  | // CHECK-NEXT:  ] | 
|  | // CHECK-NEXT: } | 
|  |  | 
|  |  | 
|  | // CHECK-NOT: {{^}}Dumping | 
|  | // CHECK:  "kind": "CompoundStmt", | 
|  | // CHECK-NEXT:  "range": { | 
|  | // CHECK-NEXT:   "begin": { | 
|  | // CHECK-NEXT:    "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:    "col": 29, | 
|  | // CHECK-NEXT:    "tokLen": 1 | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   "end": { | 
|  | // CHECK-NEXT:    "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:    "line": 118, | 
|  | // CHECK-NEXT:    "col": 1, | 
|  | // CHECK-NEXT:    "tokLen": 1 | 
|  | // CHECK-NEXT:   } | 
|  | // CHECK-NEXT:  }, | 
|  | // CHECK-NEXT:  "inner": [ | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "WhileStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 94, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 5 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 95, | 
|  | // CHECK-NEXT:      "col": 5, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 94, | 
|  | // CHECK-NEXT:        "col": 10, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 10, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "_Bool" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 10, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 10, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "_Bool" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:        "referencedDecl": { | 
|  | // CHECK-NEXT:         "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:         "kind": "ParmVarDecl", | 
|  | // CHECK-NEXT:         "name": "b", | 
|  | // CHECK-NEXT:         "type": { | 
|  | // CHECK-NEXT:          "qualType": "_Bool" | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        } | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "NullStmt", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 95, | 
|  | // CHECK-NEXT:        "col": 5, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 5, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "DoStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 97, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 2 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 99, | 
|  | // CHECK-NEXT:      "col": 11, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "NullStmt", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 98, | 
|  | // CHECK-NEXT:        "col": 5, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 5, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 99, | 
|  | // CHECK-NEXT:        "col": 10, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 10, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "_Bool" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 10, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 10, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "_Bool" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:        "referencedDecl": { | 
|  | // CHECK-NEXT:         "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:         "kind": "ParmVarDecl", | 
|  | // CHECK-NEXT:         "name": "b", | 
|  | // CHECK-NEXT:         "type": { | 
|  | // CHECK-NEXT:          "qualType": "_Bool" | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        } | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "ForStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 101, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 3 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 102, | 
|  | // CHECK-NEXT:      "col": 5, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "DeclStmt", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 101, | 
|  | // CHECK-NEXT:        "col": 8, | 
|  | // CHECK-NEXT:        "tokLen": 3 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 17, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "VarDecl", | 
|  | // CHECK-NEXT:        "loc": { | 
|  | // CHECK-NEXT:         "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:         "col": 12, | 
|  | // CHECK-NEXT:         "tokLen": 1 | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 8, | 
|  | // CHECK-NEXT:          "tokLen": 3 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 16, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "isUsed": true, | 
|  | // CHECK-NEXT:        "name": "i", | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "init": "c", | 
|  | // CHECK-NEXT:        "inner": [ | 
|  | // CHECK-NEXT:         { | 
|  | // CHECK-NEXT:          "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:          "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:          "range": { | 
|  | // CHECK-NEXT:           "begin": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 16, | 
|  | // CHECK-NEXT:            "tokLen": 1 | 
|  | // CHECK-NEXT:           }, | 
|  | // CHECK-NEXT:           "end": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 16, | 
|  | // CHECK-NEXT:            "tokLen": 1 | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "type": { | 
|  | // CHECK-NEXT:           "qualType": "int" | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:          "value": "0" | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        ] | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     {}, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "BinaryOperator", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 19, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 23, | 
|  | // CHECK-NEXT:        "tokLen": 2 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "opcode": "<", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 19, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 19, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:        "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:        "inner": [ | 
|  | // CHECK-NEXT:         { | 
|  | // CHECK-NEXT:          "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:          "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:          "range": { | 
|  | // CHECK-NEXT:           "begin": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 19, | 
|  | // CHECK-NEXT:            "tokLen": 1 | 
|  | // CHECK-NEXT:           }, | 
|  | // CHECK-NEXT:           "end": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 19, | 
|  | // CHECK-NEXT:            "tokLen": 1 | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "type": { | 
|  | // CHECK-NEXT:           "qualType": "int" | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:          "referencedDecl": { | 
|  | // CHECK-NEXT:           "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:           "kind": "VarDecl", | 
|  | // CHECK-NEXT:           "name": "i", | 
|  | // CHECK-NEXT:           "type": { | 
|  | // CHECK-NEXT:            "qualType": "int" | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          } | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        ] | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 23, | 
|  | // CHECK-NEXT:          "tokLen": 2 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 23, | 
|  | // CHECK-NEXT:          "tokLen": 2 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:        "value": "10" | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "UnaryOperator", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 27, | 
|  | // CHECK-NEXT:        "tokLen": 2 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 29, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "isPostfix": false, | 
|  | // CHECK-NEXT:      "opcode": "++", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 29, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 29, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:        "referencedDecl": { | 
|  | // CHECK-NEXT:         "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:         "kind": "VarDecl", | 
|  | // CHECK-NEXT:         "name": "i", | 
|  | // CHECK-NEXT:         "type": { | 
|  | // CHECK-NEXT:          "qualType": "int" | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        } | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "NullStmt", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 102, | 
|  | // CHECK-NEXT:        "col": 5, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 5, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "ForStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 104, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 3 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 105, | 
|  | // CHECK-NEXT:      "col": 5, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 104, | 
|  | // CHECK-NEXT:        "col": 8, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 8, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "_Bool" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 8, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 8, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "_Bool" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:        "referencedDecl": { | 
|  | // CHECK-NEXT:         "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:         "kind": "ParmVarDecl", | 
|  | // CHECK-NEXT:         "name": "b", | 
|  | // CHECK-NEXT:         "type": { | 
|  | // CHECK-NEXT:          "qualType": "_Bool" | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        } | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     {}, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 11, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 11, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "_Bool" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 11, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 11, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "_Bool" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:        "referencedDecl": { | 
|  | // CHECK-NEXT:         "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:         "kind": "ParmVarDecl", | 
|  | // CHECK-NEXT:         "name": "b", | 
|  | // CHECK-NEXT:         "type": { | 
|  | // CHECK-NEXT:          "qualType": "_Bool" | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        } | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 14, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 14, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "_Bool" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 14, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 14, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "_Bool" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:        "referencedDecl": { | 
|  | // CHECK-NEXT:         "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:         "kind": "ParmVarDecl", | 
|  | // CHECK-NEXT:         "name": "b", | 
|  | // CHECK-NEXT:         "type": { | 
|  | // CHECK-NEXT:          "qualType": "_Bool" | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        } | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "NullStmt", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 105, | 
|  | // CHECK-NEXT:        "col": 5, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 5, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "ForStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 107, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 3 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 108, | 
|  | // CHECK-NEXT:      "col": 5, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     {}, | 
|  | // CHECK-NEXT:     {}, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 107, | 
|  | // CHECK-NEXT:        "col": 10, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 10, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "_Bool" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 10, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 10, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "_Bool" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:        "referencedDecl": { | 
|  | // CHECK-NEXT:         "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:         "kind": "ParmVarDecl", | 
|  | // CHECK-NEXT:         "name": "b", | 
|  | // CHECK-NEXT:         "type": { | 
|  | // CHECK-NEXT:          "qualType": "_Bool" | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        } | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "BinaryOperator", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 13, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 18, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "_Bool" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "opcode": "=", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 13, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 13, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "_Bool" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:        "referencedDecl": { | 
|  | // CHECK-NEXT:         "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:         "kind": "ParmVarDecl", | 
|  | // CHECK-NEXT:         "name": "b", | 
|  | // CHECK-NEXT:         "type": { | 
|  | // CHECK-NEXT:          "qualType": "_Bool" | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        } | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 17, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 18, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "_Bool" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:        "castKind": "IntegralToBoolean", | 
|  | // CHECK-NEXT:        "inner": [ | 
|  | // CHECK-NEXT:         { | 
|  | // CHECK-NEXT:          "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:          "kind": "UnaryOperator", | 
|  | // CHECK-NEXT:          "range": { | 
|  | // CHECK-NEXT:           "begin": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 17, | 
|  | // CHECK-NEXT:            "tokLen": 1 | 
|  | // CHECK-NEXT:           }, | 
|  | // CHECK-NEXT:           "end": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 18, | 
|  | // CHECK-NEXT:            "tokLen": 1 | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "type": { | 
|  | // CHECK-NEXT:           "qualType": "int" | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:          "isPostfix": false, | 
|  | // CHECK-NEXT:          "opcode": "!", | 
|  | // CHECK-NEXT:          "canOverflow": false, | 
|  | // CHECK-NEXT:          "inner": [ | 
|  | // CHECK-NEXT:           { | 
|  | // CHECK-NEXT:            "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:            "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:            "range": { | 
|  | // CHECK-NEXT:             "begin": { | 
|  | // CHECK-NEXT:              "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:              "col": 18, | 
|  | // CHECK-NEXT:              "tokLen": 1 | 
|  | // CHECK-NEXT:             }, | 
|  | // CHECK-NEXT:             "end": { | 
|  | // CHECK-NEXT:              "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:              "col": 18, | 
|  | // CHECK-NEXT:              "tokLen": 1 | 
|  | // CHECK-NEXT:             } | 
|  | // CHECK-NEXT:            }, | 
|  | // CHECK-NEXT:            "type": { | 
|  | // CHECK-NEXT:             "qualType": "_Bool" | 
|  | // CHECK-NEXT:            }, | 
|  | // CHECK-NEXT:            "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:            "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:            "inner": [ | 
|  | // CHECK-NEXT:             { | 
|  | // CHECK-NEXT:              "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:              "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:              "range": { | 
|  | // CHECK-NEXT:               "begin": { | 
|  | // CHECK-NEXT:                "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:                "col": 18, | 
|  | // CHECK-NEXT:                "tokLen": 1 | 
|  | // CHECK-NEXT:               }, | 
|  | // CHECK-NEXT:               "end": { | 
|  | // CHECK-NEXT:                "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:                "col": 18, | 
|  | // CHECK-NEXT:                "tokLen": 1 | 
|  | // CHECK-NEXT:               } | 
|  | // CHECK-NEXT:              }, | 
|  | // CHECK-NEXT:              "type": { | 
|  | // CHECK-NEXT:               "qualType": "_Bool" | 
|  | // CHECK-NEXT:              }, | 
|  | // CHECK-NEXT:              "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:              "referencedDecl": { | 
|  | // CHECK-NEXT:               "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:               "kind": "ParmVarDecl", | 
|  | // CHECK-NEXT:               "name": "b", | 
|  | // CHECK-NEXT:               "type": { | 
|  | // CHECK-NEXT:                "qualType": "_Bool" | 
|  | // CHECK-NEXT:               } | 
|  | // CHECK-NEXT:              } | 
|  | // CHECK-NEXT:             } | 
|  | // CHECK-NEXT:            ] | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          ] | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        ] | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "NullStmt", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 108, | 
|  | // CHECK-NEXT:        "col": 5, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 5, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "ForStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 110, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 3 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 111, | 
|  | // CHECK-NEXT:      "col": 5, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     {}, | 
|  | // CHECK-NEXT:     {}, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 110, | 
|  | // CHECK-NEXT:        "col": 10, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 10, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "_Bool" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 10, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 10, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "_Bool" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:        "referencedDecl": { | 
|  | // CHECK-NEXT:         "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:         "kind": "ParmVarDecl", | 
|  | // CHECK-NEXT:         "name": "b", | 
|  | // CHECK-NEXT:         "type": { | 
|  | // CHECK-NEXT:          "qualType": "_Bool" | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        } | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     {}, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "NullStmt", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 111, | 
|  | // CHECK-NEXT:        "col": 5, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 5, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "ForStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 113, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 3 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 114, | 
|  | // CHECK-NEXT:      "col": 5, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     {}, | 
|  | // CHECK-NEXT:     {}, | 
|  | // CHECK-NEXT:     {}, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "BinaryOperator", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 113, | 
|  | // CHECK-NEXT:        "col": 11, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 16, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "_Bool" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "opcode": "=", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 11, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 11, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "_Bool" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:        "referencedDecl": { | 
|  | // CHECK-NEXT:         "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:         "kind": "ParmVarDecl", | 
|  | // CHECK-NEXT:         "name": "b", | 
|  | // CHECK-NEXT:         "type": { | 
|  | // CHECK-NEXT:          "qualType": "_Bool" | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        } | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 15, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 16, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "_Bool" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:        "castKind": "IntegralToBoolean", | 
|  | // CHECK-NEXT:        "inner": [ | 
|  | // CHECK-NEXT:         { | 
|  | // CHECK-NEXT:          "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:          "kind": "UnaryOperator", | 
|  | // CHECK-NEXT:          "range": { | 
|  | // CHECK-NEXT:           "begin": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 15, | 
|  | // CHECK-NEXT:            "tokLen": 1 | 
|  | // CHECK-NEXT:           }, | 
|  | // CHECK-NEXT:           "end": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 16, | 
|  | // CHECK-NEXT:            "tokLen": 1 | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "type": { | 
|  | // CHECK-NEXT:           "qualType": "int" | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:          "isPostfix": false, | 
|  | // CHECK-NEXT:          "opcode": "!", | 
|  | // CHECK-NEXT:          "canOverflow": false, | 
|  | // CHECK-NEXT:          "inner": [ | 
|  | // CHECK-NEXT:           { | 
|  | // CHECK-NEXT:            "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:            "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:            "range": { | 
|  | // CHECK-NEXT:             "begin": { | 
|  | // CHECK-NEXT:              "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:              "col": 16, | 
|  | // CHECK-NEXT:              "tokLen": 1 | 
|  | // CHECK-NEXT:             }, | 
|  | // CHECK-NEXT:             "end": { | 
|  | // CHECK-NEXT:              "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:              "col": 16, | 
|  | // CHECK-NEXT:              "tokLen": 1 | 
|  | // CHECK-NEXT:             } | 
|  | // CHECK-NEXT:            }, | 
|  | // CHECK-NEXT:            "type": { | 
|  | // CHECK-NEXT:             "qualType": "_Bool" | 
|  | // CHECK-NEXT:            }, | 
|  | // CHECK-NEXT:            "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:            "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:            "inner": [ | 
|  | // CHECK-NEXT:             { | 
|  | // CHECK-NEXT:              "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:              "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:              "range": { | 
|  | // CHECK-NEXT:               "begin": { | 
|  | // CHECK-NEXT:                "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:                "col": 16, | 
|  | // CHECK-NEXT:                "tokLen": 1 | 
|  | // CHECK-NEXT:               }, | 
|  | // CHECK-NEXT:               "end": { | 
|  | // CHECK-NEXT:                "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:                "col": 16, | 
|  | // CHECK-NEXT:                "tokLen": 1 | 
|  | // CHECK-NEXT:               } | 
|  | // CHECK-NEXT:              }, | 
|  | // CHECK-NEXT:              "type": { | 
|  | // CHECK-NEXT:               "qualType": "_Bool" | 
|  | // CHECK-NEXT:              }, | 
|  | // CHECK-NEXT:              "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:              "referencedDecl": { | 
|  | // CHECK-NEXT:               "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:               "kind": "ParmVarDecl", | 
|  | // CHECK-NEXT:               "name": "b", | 
|  | // CHECK-NEXT:               "type": { | 
|  | // CHECK-NEXT:                "qualType": "_Bool" | 
|  | // CHECK-NEXT:               } | 
|  | // CHECK-NEXT:              } | 
|  | // CHECK-NEXT:             } | 
|  | // CHECK-NEXT:            ] | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          ] | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        ] | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "NullStmt", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 114, | 
|  | // CHECK-NEXT:        "col": 5, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 5, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "ForStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 116, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 3 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 117, | 
|  | // CHECK-NEXT:      "col": 5, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     {}, | 
|  | // CHECK-NEXT:     {}, | 
|  | // CHECK-NEXT:     {}, | 
|  | // CHECK-NEXT:     {}, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "NullStmt", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 5, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 5, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   } | 
|  | // CHECK-NEXT:  ] | 
|  | // CHECK-NEXT: } | 
|  |  | 
|  |  | 
|  | // CHECK-NOT: {{^}}Dumping | 
|  | // CHECK:  "kind": "CompoundStmt", | 
|  | // CHECK-NEXT:  "range": { | 
|  | // CHECK-NEXT:   "begin": { | 
|  | // CHECK-NEXT:    "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:    "line": 120, | 
|  | // CHECK-NEXT:    "col": 22, | 
|  | // CHECK-NEXT:    "tokLen": 1 | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   "end": { | 
|  | // CHECK-NEXT:    "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:    "line": 130, | 
|  | // CHECK-NEXT:    "col": 1, | 
|  | // CHECK-NEXT:    "tokLen": 1 | 
|  | // CHECK-NEXT:   } | 
|  | // CHECK-NEXT:  }, | 
|  | // CHECK-NEXT:  "inner": [ | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "WhileStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 123, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 5 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 126, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 123, | 
|  | // CHECK-NEXT:        "col": 10, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 10, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "value": "1" | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "CompoundStmt", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 13, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "line": 126, | 
|  | // CHECK-NEXT:        "col": 3, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "ContinueStmt", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "line": 124, | 
|  | // CHECK-NEXT:          "col": 5, | 
|  | // CHECK-NEXT:          "tokLen": 8 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 5, | 
|  | // CHECK-NEXT:          "tokLen": 8 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        } | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "BreakStmt", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "line": 125, | 
|  | // CHECK-NEXT:          "col": 5, | 
|  | // CHECK-NEXT:          "tokLen": 5 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 5, | 
|  | // CHECK-NEXT:          "tokLen": 5 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        } | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "ReturnStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 127, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 6 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 6 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    } | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "ReturnStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 129, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 6 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 22, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "CallExpr", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 10, | 
|  | // CHECK-NEXT:        "tokLen": 10 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 22, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "void" | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 10, | 
|  | // CHECK-NEXT:          "tokLen": 10 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 10, | 
|  | // CHECK-NEXT:          "tokLen": 10 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "void (*)(int)" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:        "castKind": "FunctionToPointerDecay", | 
|  | // CHECK-NEXT:        "inner": [ | 
|  | // CHECK-NEXT:         { | 
|  | // CHECK-NEXT:          "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:          "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:          "range": { | 
|  | // CHECK-NEXT:           "begin": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 10, | 
|  | // CHECK-NEXT:            "tokLen": 10 | 
|  | // CHECK-NEXT:           }, | 
|  | // CHECK-NEXT:           "end": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 10, | 
|  | // CHECK-NEXT:            "tokLen": 10 | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "type": { | 
|  | // CHECK-NEXT:           "qualType": "void (int)" | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:          "referencedDecl": { | 
|  | // CHECK-NEXT:           "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:           "kind": "FunctionDecl", | 
|  | // CHECK-NEXT:           "name": "TestSwitch", | 
|  | // CHECK-NEXT:           "type": { | 
|  | // CHECK-NEXT:            "qualType": "void (int)" | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          } | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        ] | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 21, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 21, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:        "value": "1" | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   } | 
|  | // CHECK-NEXT:  ] | 
|  | // CHECK-NEXT: } | 
|  |  | 
|  |  | 
|  | // CHECK-NOT: {{^}}Dumping | 
|  | // CHECK:  "kind": "CompoundStmt", | 
|  | // CHECK-NEXT:  "range": { | 
|  | // CHECK-NEXT:   "begin": { | 
|  | // CHECK-NEXT:    "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:    "line": 132, | 
|  | // CHECK-NEXT:    "col": 26, | 
|  | // CHECK-NEXT:    "tokLen": 1 | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   "end": { | 
|  | // CHECK-NEXT:    "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:    "line": 134, | 
|  | // CHECK-NEXT:    "col": 1, | 
|  | // CHECK-NEXT:    "tokLen": 1 | 
|  | // CHECK-NEXT:   } | 
|  | // CHECK-NEXT:  }, | 
|  | // CHECK-NEXT:  "inner": [ | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "StmtExpr", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 133, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 20, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "type": { | 
|  | // CHECK-NEXT:     "qualType": "int" | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "CompoundStmt", | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 4, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 19, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "inner": [ | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "DeclStmt", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 5, | 
|  | // CHECK-NEXT:          "tokLen": 3 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 15, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "inner": [ | 
|  | // CHECK-NEXT:         { | 
|  | // CHECK-NEXT:          "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:          "kind": "VarDecl", | 
|  | // CHECK-NEXT:          "loc": { | 
|  | // CHECK-NEXT:           "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:           "col": 9, | 
|  | // CHECK-NEXT:           "tokLen": 1 | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "range": { | 
|  | // CHECK-NEXT:           "begin": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 5, | 
|  | // CHECK-NEXT:            "tokLen": 3 | 
|  | // CHECK-NEXT:           }, | 
|  | // CHECK-NEXT:           "end": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 13, | 
|  | // CHECK-NEXT:            "tokLen": 2 | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "isUsed": true, | 
|  | // CHECK-NEXT:          "name": "a", | 
|  | // CHECK-NEXT:          "type": { | 
|  | // CHECK-NEXT:           "qualType": "int" | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "init": "c", | 
|  | // CHECK-NEXT:          "inner": [ | 
|  | // CHECK-NEXT:           { | 
|  | // CHECK-NEXT:            "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:            "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:            "range": { | 
|  | // CHECK-NEXT:             "begin": { | 
|  | // CHECK-NEXT:              "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:              "col": 13, | 
|  | // CHECK-NEXT:              "tokLen": 2 | 
|  | // CHECK-NEXT:             }, | 
|  | // CHECK-NEXT:             "end": { | 
|  | // CHECK-NEXT:              "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:              "col": 13, | 
|  | // CHECK-NEXT:              "tokLen": 2 | 
|  | // CHECK-NEXT:             } | 
|  | // CHECK-NEXT:            }, | 
|  | // CHECK-NEXT:            "type": { | 
|  | // CHECK-NEXT:             "qualType": "int" | 
|  | // CHECK-NEXT:            }, | 
|  | // CHECK-NEXT:            "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:            "value": "10" | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          ] | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        ] | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       { | 
|  | // CHECK-NEXT:        "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:        "kind": "ImplicitCastExpr", | 
|  | // CHECK-NEXT:        "range": { | 
|  | // CHECK-NEXT:         "begin": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 17, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         }, | 
|  | // CHECK-NEXT:         "end": { | 
|  | // CHECK-NEXT:          "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:          "col": 17, | 
|  | // CHECK-NEXT:          "tokLen": 1 | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "type": { | 
|  | // CHECK-NEXT:         "qualType": "int" | 
|  | // CHECK-NEXT:        }, | 
|  | // CHECK-NEXT:        "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:        "castKind": "LValueToRValue", | 
|  | // CHECK-NEXT:        "inner": [ | 
|  | // CHECK-NEXT:         { | 
|  | // CHECK-NEXT:          "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:          "kind": "DeclRefExpr", | 
|  | // CHECK-NEXT:          "range": { | 
|  | // CHECK-NEXT:           "begin": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 17, | 
|  | // CHECK-NEXT:            "tokLen": 1 | 
|  | // CHECK-NEXT:           }, | 
|  | // CHECK-NEXT:           "end": { | 
|  | // CHECK-NEXT:            "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:            "col": 17, | 
|  | // CHECK-NEXT:            "tokLen": 1 | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "type": { | 
|  | // CHECK-NEXT:           "qualType": "int" | 
|  | // CHECK-NEXT:          }, | 
|  | // CHECK-NEXT:          "valueCategory": "lvalue", | 
|  | // CHECK-NEXT:          "referencedDecl": { | 
|  | // CHECK-NEXT:           "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:           "kind": "VarDecl", | 
|  | // CHECK-NEXT:           "name": "a", | 
|  | // CHECK-NEXT:           "type": { | 
|  | // CHECK-NEXT:            "qualType": "int" | 
|  | // CHECK-NEXT:           } | 
|  | // CHECK-NEXT:          } | 
|  | // CHECK-NEXT:         } | 
|  | // CHECK-NEXT:        ] | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      ] | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   } | 
|  | // CHECK-NEXT:  ] | 
|  | // CHECK-NEXT: } | 
|  |  | 
|  |  | 
|  | // CHECK-NOT: {{^}}Dumping | 
|  | // CHECK:  "kind": "CompoundStmt", | 
|  | // CHECK-NEXT:  "range": { | 
|  | // CHECK-NEXT:   "begin": { | 
|  | // CHECK-NEXT:    "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:    "line": 136, | 
|  | // CHECK-NEXT:    "col": 28, | 
|  | // CHECK-NEXT:    "tokLen": 1 | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   "end": { | 
|  | // CHECK-NEXT:    "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:    "line": 148, | 
|  | // CHECK-NEXT:    "presumedLine": 200003, | 
|  | // CHECK-NEXT:    "col": 1, | 
|  | // CHECK-NEXT:    "tokLen": 1 | 
|  | // CHECK-NEXT:   } | 
|  | // CHECK-NEXT:  }, | 
|  | // CHECK-NEXT:  "inner": [ | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "DeclStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 137, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 3 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 8, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "VarDecl", | 
|  | // CHECK-NEXT:      "loc": { | 
|  | // CHECK-NEXT:       "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:       "col": 7, | 
|  | // CHECK-NEXT:       "tokLen": 1 | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 3, | 
|  | // CHECK-NEXT:        "tokLen": 3 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 7, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "name": "a", | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "DeclStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 142, | 
|  | // CHECK-NEXT:      "presumedLine": 100000, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 3 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 8, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "VarDecl", | 
|  | // CHECK-NEXT:      "loc": { | 
|  | // CHECK-NEXT:       "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:       "col": 7, | 
|  | // CHECK-NEXT:       "tokLen": 1 | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 3, | 
|  | // CHECK-NEXT:        "tokLen": 3 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 7, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "name": "b", | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "int" | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "IntegerLiteral", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "spellingLoc": { | 
|  | // CHECK-NEXT:       "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:       "line": 145, | 
|  | // CHECK-NEXT:       "presumedLine": 200000, | 
|  | // CHECK-NEXT:       "col": 7, | 
|  | // CHECK-NEXT:       "tokLen": 1 | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "expansionLoc": { | 
|  | // CHECK-NEXT:       "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:       "col": 3, | 
|  | // CHECK-NEXT:       "tokLen": 3, | 
|  | // CHECK-NEXT:       "isMacroArgExpansion": true | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "spellingLoc": { | 
|  | // CHECK-NEXT:       "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:       "col": 7, | 
|  | // CHECK-NEXT:       "tokLen": 1 | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "expansionLoc": { | 
|  | // CHECK-NEXT:       "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:       "col": 3, | 
|  | // CHECK-NEXT:       "tokLen": 3, | 
|  | // CHECK-NEXT:       "isMacroArgExpansion": true | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "type": { | 
|  | // CHECK-NEXT:     "qualType": "int" | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "valueCategory": "prvalue", | 
|  | // CHECK-NEXT:    "value": "1" | 
|  | // CHECK-NEXT:   } | 
|  | // CHECK-NEXT:  ] | 
|  | // CHECK-NEXT: } | 
|  |  | 
|  |  | 
|  | // CHECK-NOT: {{^}}Dumping | 
|  | // CHECK:  "kind": "CompoundStmt", | 
|  | // CHECK-NEXT:  "range": { | 
|  | // CHECK-NEXT:   "begin": { | 
|  | // CHECK-NEXT:    "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:    "col": 21, | 
|  | // CHECK-NEXT:    "tokLen": 1 | 
|  | // CHECK-NEXT:   }, | 
|  | // CHECK-NEXT:   "end": { | 
|  | // CHECK-NEXT:    "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:    "line": 152, | 
|  | // CHECK-NEXT:    "presumedLine": 200007, | 
|  | // CHECK-NEXT:    "col": 1, | 
|  | // CHECK-NEXT:    "tokLen": 1 | 
|  | // CHECK-NEXT:   } | 
|  | // CHECK-NEXT:  }, | 
|  | // CHECK-NEXT:  "inner": [ | 
|  | // CHECK-NEXT:   { | 
|  | // CHECK-NEXT:    "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:    "kind": "DeclStmt", | 
|  | // CHECK-NEXT:    "range": { | 
|  | // CHECK-NEXT:     "begin": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "line": 151, | 
|  | // CHECK-NEXT:      "presumedLine": 200006, | 
|  | // CHECK-NEXT:      "col": 3, | 
|  | // CHECK-NEXT:      "tokLen": 6 | 
|  | // CHECK-NEXT:     }, | 
|  | // CHECK-NEXT:     "end": { | 
|  | // CHECK-NEXT:      "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:      "col": 16, | 
|  | // CHECK-NEXT:      "tokLen": 1 | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    }, | 
|  | // CHECK-NEXT:    "inner": [ | 
|  | // CHECK-NEXT:     { | 
|  | // CHECK-NEXT:      "id": "0x{{.*}}", | 
|  | // CHECK-NEXT:      "kind": "VarDecl", | 
|  | // CHECK-NEXT:      "loc": { | 
|  | // CHECK-NEXT:       "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:       "col": 10, | 
|  | // CHECK-NEXT:       "tokLen": 3 | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "range": { | 
|  | // CHECK-NEXT:       "begin": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 3, | 
|  | // CHECK-NEXT:        "tokLen": 6 | 
|  | // CHECK-NEXT:       }, | 
|  | // CHECK-NEXT:       "end": { | 
|  | // CHECK-NEXT:        "offset": {{[0-9]+}}, | 
|  | // CHECK-NEXT:        "col": 15, | 
|  | // CHECK-NEXT:        "tokLen": 1 | 
|  | // CHECK-NEXT:       } | 
|  | // CHECK-NEXT:      }, | 
|  | // CHECK-NEXT:      "name": "vla", | 
|  | // CHECK-NEXT:      "type": { | 
|  | // CHECK-NEXT:       "qualType": "double[n]" | 
|  | // CHECK-NEXT:      } | 
|  | // CHECK-NEXT:     } | 
|  | // CHECK-NEXT:    ] | 
|  | // CHECK-NEXT:   } | 
|  | // CHECK-NEXT:  ] | 
|  | // CHECK-NEXT: } |