(a);\r
}\r
\r
-// NOTE: CHECK lines have been autogenerated by gen_ast_dump_json_test.py\r
-// using --filters=FunctionDecl\r
-\r
-\r
-// CHECK: "kind": "FunctionDecl",\r
-// CHECK-NEXT: "loc": {\r
-// CHECK-NEXT: "offset": 120,\r
-// CHECK-NEXT: "file": "{{.*}}",\r
-// CHECK-NEXT: "line": 3,\r
-// CHECK-NEXT: "col": 6,\r
-// CHECK-NEXT: "tokLen": 5\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 115,\r
-// CHECK-NEXT: "col": 1,\r
-// CHECK-NEXT: "tokLen": 4\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 147,\r
-// CHECK-NEXT: "line": 5,\r
-// CHECK-NEXT: "col": 1,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "name": "Comma",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "void (void)"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "CompoundStmt",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 132,\r
-// CHECK-NEXT: "line": 3,\r
-// CHECK-NEXT: "col": 18,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 147,\r
-// CHECK-NEXT: "line": 5,\r
-// CHECK-NEXT: "col": 1,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "BinaryOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 137,\r
-// CHECK-NEXT: "line": 4,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 143,\r
-// CHECK-NEXT: "col": 9,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "opcode": ",",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "BinaryOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 137,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 140,\r
-// CHECK-NEXT: "col": 6,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "opcode": ",",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "IntegerLiteral",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 137,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 137,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "value": "1"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "IntegerLiteral",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 140,\r
-// CHECK-NEXT: "col": 6,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 140,\r
-// CHECK-NEXT: "col": 6,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "value": "2"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "IntegerLiteral",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 143,\r
-// CHECK-NEXT: "col": 9,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 143,\r
-// CHECK-NEXT: "col": 9,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "value": "3"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-\r
-\r
-// CHECK: "kind": "FunctionDecl",\r
-// CHECK-NEXT: "loc": {\r
-// CHECK-NEXT: "offset": 157,\r
-// CHECK-NEXT: "line": 7,\r
-// CHECK-NEXT: "col": 6,\r
-// CHECK-NEXT: "tokLen": 10\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 152,\r
-// CHECK-NEXT: "col": 1,\r
-// CHECK-NEXT: "tokLen": 4\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 200,\r
-// CHECK-NEXT: "line": 10,\r
-// CHECK-NEXT: "col": 1,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "name": "Assignment",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "void (int)"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "loc": {\r
-// CHECK-NEXT: "offset": 172,\r
-// CHECK-NEXT: "line": 7,\r
-// CHECK-NEXT: "col": 21,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 168,\r
-// CHECK-NEXT: "col": 17,\r
-// CHECK-NEXT: "tokLen": 3\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 172,\r
-// CHECK-NEXT: "col": 21,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "isUsed": true,\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "CompoundStmt",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 175,\r
-// CHECK-NEXT: "col": 24,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 200,\r
-// CHECK-NEXT: "line": 10,\r
-// CHECK-NEXT: "col": 1,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "BinaryOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 180,\r
-// CHECK-NEXT: "line": 8,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 184,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 2\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "opcode": "=",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 180,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 180,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "IntegerLiteral",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 184,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 2\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 184,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 2\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "value": "12"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "CompoundAssignOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 191,\r
-// CHECK-NEXT: "line": 9,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 196,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "opcode": "+=",\r
-// CHECK-NEXT: "computeLHSType": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "computeResultType": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 191,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 191,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 196,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 196,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 196,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 196,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-\r
-\r
-// CHECK: "kind": "FunctionDecl",\r
-// CHECK-NEXT: "loc": {\r
-// CHECK-NEXT: "offset": 210,\r
-// CHECK-NEXT: "line": 12,\r
-// CHECK-NEXT: "col": 6,\r
-// CHECK-NEXT: "tokLen": 12\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 205,\r
-// CHECK-NEXT: "col": 1,\r
-// CHECK-NEXT: "tokLen": 4\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 258,\r
-// CHECK-NEXT: "line": 15,\r
-// CHECK-NEXT: "col": 1,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "name": "Conditionals",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "void (int)"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "loc": {\r
-// CHECK-NEXT: "offset": 227,\r
-// CHECK-NEXT: "line": 12,\r
-// CHECK-NEXT: "col": 23,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 223,\r
-// CHECK-NEXT: "col": 19,\r
-// CHECK-NEXT: "tokLen": 3\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 227,\r
-// CHECK-NEXT: "col": 23,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "isUsed": true,\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "CompoundStmt",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 230,\r
-// CHECK-NEXT: "col": 26,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 258,\r
-// CHECK-NEXT: "line": 15,\r
-// CHECK-NEXT: "col": 1,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ConditionalOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 235,\r
-// CHECK-NEXT: "line": 13,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 243,\r
-// CHECK-NEXT: "col": 11,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 235,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 235,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 235,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 235,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "IntegerLiteral",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 239,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 239,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "value": "0"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "IntegerLiteral",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 243,\r
-// CHECK-NEXT: "col": 11,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 243,\r
-// CHECK-NEXT: "col": 11,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "value": "1"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "BinaryConditionalOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 249,\r
-// CHECK-NEXT: "line": 14,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 254,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 249,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 249,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 249,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 249,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "OpaqueValueExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 249,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 249,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 249,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 249,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 249,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 249,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "OpaqueValueExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 249,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 249,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 249,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 249,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 249,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 249,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "IntegerLiteral",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 254,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 254,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "value": "0"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-\r
-\r
-// CHECK: "kind": "FunctionDecl",\r
-// CHECK-NEXT: "loc": {\r
-// CHECK-NEXT: "offset": 268,\r
-// CHECK-NEXT: "line": 17,\r
-// CHECK-NEXT: "col": 6,\r
-// CHECK-NEXT: "tokLen": 15\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 263,\r
-// CHECK-NEXT: "col": 1,\r
-// CHECK-NEXT: "tokLen": 4\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 686,\r
-// CHECK-NEXT: "line": 49,\r
-// CHECK-NEXT: "col": 1,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "name": "BinaryOperators",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "void (int, int)"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "loc": {\r
-// CHECK-NEXT: "offset": 288,\r
-// CHECK-NEXT: "line": 17,\r
-// CHECK-NEXT: "col": 26,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 284,\r
-// CHECK-NEXT: "col": 22,\r
-// CHECK-NEXT: "tokLen": 3\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 288,\r
-// CHECK-NEXT: "col": 26,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "isUsed": true,\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "loc": {\r
-// CHECK-NEXT: "offset": 295,\r
-// CHECK-NEXT: "col": 33,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 291,\r
-// CHECK-NEXT: "col": 29,\r
-// CHECK-NEXT: "tokLen": 3\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 295,\r
-// CHECK-NEXT: "col": 33,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "isUsed": true,\r
-// CHECK-NEXT: "name": "b",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "CompoundStmt",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 298,\r
-// CHECK-NEXT: "col": 36,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 686,\r
-// CHECK-NEXT: "line": 49,\r
-// CHECK-NEXT: "col": 1,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "BinaryOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 327,\r
-// CHECK-NEXT: "line": 19,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 332,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "opcode": "||",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 327,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 327,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 327,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 327,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 332,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 332,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 332,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 332,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "b",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "BinaryOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 338,\r
-// CHECK-NEXT: "line": 20,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 343,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "opcode": "&&",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 338,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 338,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 338,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 338,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 343,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 343,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 343,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 343,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "b",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "BinaryOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 375,\r
-// CHECK-NEXT: "line": 23,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 379,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "opcode": "|",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 375,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 375,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 375,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 375,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 379,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 379,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 379,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 379,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "b",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "BinaryOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 385,\r
-// CHECK-NEXT: "line": 24,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 389,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "opcode": "^",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 385,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 385,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 385,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 385,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 389,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 389,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 389,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 389,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "b",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "BinaryOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 395,\r
-// CHECK-NEXT: "line": 25,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 399,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "opcode": "&",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 395,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 395,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 395,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 395,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 399,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 399,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 399,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 399,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "b",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "BinaryOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 432,\r
-// CHECK-NEXT: "line": 28,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 437,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "opcode": "==",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 432,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 432,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 432,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 432,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 437,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 437,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 437,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 437,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "b",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "BinaryOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 443,\r
-// CHECK-NEXT: "line": 29,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 448,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "opcode": "!=",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 443,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 443,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 443,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 443,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 448,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 448,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 448,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 448,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "b",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "BinaryOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 483,\r
-// CHECK-NEXT: "line": 32,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 487,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "opcode": "<",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 483,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 483,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 483,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 483,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 487,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 487,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 487,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 487,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "b",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "BinaryOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 493,\r
-// CHECK-NEXT: "line": 33,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 497,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "opcode": ">",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 493,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 493,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 493,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 493,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 497,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 497,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 497,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 497,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "b",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "BinaryOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 503,\r
-// CHECK-NEXT: "line": 34,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 508,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "opcode": "<=",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 503,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 503,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 503,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 503,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 508,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 508,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 508,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 508,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "b",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "BinaryOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 514,\r
-// CHECK-NEXT: "line": 35,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 519,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "opcode": ">=",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 514,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 514,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 514,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 514,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 519,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 519,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 519,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 519,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "b",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "BinaryOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 556,\r
-// CHECK-NEXT: "line": 38,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 561,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "opcode": "<<",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 556,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 556,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 556,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 556,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 561,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 561,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 561,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 561,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "b",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "BinaryOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 567,\r
-// CHECK-NEXT: "line": 39,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 572,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "opcode": ">>",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 567,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 567,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 567,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 567,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 572,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 572,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 572,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 572,\r
-// CHECK-NEXT: "col": 8,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "b",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "BinaryOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 605,\r
-// CHECK-NEXT: "line": 42,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 609,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "opcode": "+",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 605,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 605,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 605,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 605,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 609,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 609,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 609,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 609,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "b",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "BinaryOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 615,\r
-// CHECK-NEXT: "line": 43,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 619,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "opcode": "-",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 615,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 615,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 615,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 615,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 619,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 619,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 619,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 619,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "b",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "BinaryOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 658,\r
-// CHECK-NEXT: "line": 46,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 662,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "opcode": "*",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 658,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 658,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 658,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 658,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 662,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 662,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 662,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 662,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "b",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "BinaryOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 668,\r
-// CHECK-NEXT: "line": 47,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 672,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "opcode": "/",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 668,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 668,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 668,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 668,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 672,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 672,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 672,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 672,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "b",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "BinaryOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 678,\r
-// CHECK-NEXT: "line": 48,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 682,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "opcode": "%",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 678,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 678,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 678,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 678,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 682,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 682,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 682,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 682,\r
-// CHECK-NEXT: "col": 7,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "b",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-\r
-\r
-// CHECK: "kind": "FunctionDecl",\r
-// CHECK-NEXT: "loc": {\r
-// CHECK-NEXT: "offset": 696,\r
-// CHECK-NEXT: "line": 51,\r
-// CHECK-NEXT: "col": 6,\r
-// CHECK-NEXT: "tokLen": 14\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 691,\r
-// CHECK-NEXT: "col": 1,\r
-// CHECK-NEXT: "tokLen": 4\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 894,\r
-// CHECK-NEXT: "line": 66,\r
-// CHECK-NEXT: "col": 1,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "isUsed": true,\r
-// CHECK-NEXT: "name": "UnaryOperators",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "void (int, int *)"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "loc": {\r
-// CHECK-NEXT: "offset": 715,\r
-// CHECK-NEXT: "line": 51,\r
-// CHECK-NEXT: "col": 25,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 711,\r
-// CHECK-NEXT: "col": 21,\r
-// CHECK-NEXT: "tokLen": 3\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 715,\r
-// CHECK-NEXT: "col": 25,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "isUsed": true,\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "loc": {\r
-// CHECK-NEXT: "offset": 723,\r
-// CHECK-NEXT: "col": 33,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 718,\r
-// CHECK-NEXT: "col": 28,\r
-// CHECK-NEXT: "tokLen": 3\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 723,\r
-// CHECK-NEXT: "col": 33,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "isUsed": true,\r
-// CHECK-NEXT: "name": "b",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int *"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "CompoundStmt",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 726,\r
-// CHECK-NEXT: "col": 36,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 894,\r
-// CHECK-NEXT: "line": 66,\r
-// CHECK-NEXT: "col": 1,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "CStyleCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 752,\r
-// CHECK-NEXT: "line": 53,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 759,\r
-// CHECK-NEXT: "col": 10,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "float"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "IntegralToFloating",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 759,\r
-// CHECK-NEXT: "col": 10,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 759,\r
-// CHECK-NEXT: "col": 10,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "isPartOfExplicitCast": true,\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 759,\r
-// CHECK-NEXT: "col": 10,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 759,\r
-// CHECK-NEXT: "col": 10,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "UnaryOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 812,\r
-// CHECK-NEXT: "line": 57,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 813,\r
-// CHECK-NEXT: "col": 4,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "isPostfix": false,\r
-// CHECK-NEXT: "opcode": "-",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 813,\r
-// CHECK-NEXT: "col": 4,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 813,\r
-// CHECK-NEXT: "col": 4,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 813,\r
-// CHECK-NEXT: "col": 4,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 813,\r
-// CHECK-NEXT: "col": 4,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "UnaryOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 819,\r
-// CHECK-NEXT: "line": 58,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 820,\r
-// CHECK-NEXT: "col": 4,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "isPostfix": false,\r
-// CHECK-NEXT: "opcode": "+",\r
-// CHECK-NEXT: "canOverflow": false,\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 820,\r
-// CHECK-NEXT: "col": 4,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 820,\r
-// CHECK-NEXT: "col": 4,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 820,\r
-// CHECK-NEXT: "col": 4,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 820,\r
-// CHECK-NEXT: "col": 4,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "UnaryOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 826,\r
-// CHECK-NEXT: "line": 59,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 827,\r
-// CHECK-NEXT: "col": 4,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int *"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "isPostfix": false,\r
-// CHECK-NEXT: "opcode": "&",\r
-// CHECK-NEXT: "canOverflow": false,\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 827,\r
-// CHECK-NEXT: "col": 4,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 827,\r
-// CHECK-NEXT: "col": 4,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 833,\r
-// CHECK-NEXT: "line": 60,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 834,\r
-// CHECK-NEXT: "col": 4,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "UnaryOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 833,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 834,\r
-// CHECK-NEXT: "col": 4,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "isPostfix": false,\r
-// CHECK-NEXT: "opcode": "*",\r
-// CHECK-NEXT: "canOverflow": false,\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 834,\r
-// CHECK-NEXT: "col": 4,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 834,\r
-// CHECK-NEXT: "col": 4,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int *"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 834,\r
-// CHECK-NEXT: "col": 4,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 834,\r
-// CHECK-NEXT: "col": 4,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int *"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "b",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int *"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "UnaryOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 840,\r
-// CHECK-NEXT: "line": 61,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 841,\r
-// CHECK-NEXT: "col": 4,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "isPostfix": false,\r
-// CHECK-NEXT: "opcode": "!",\r
-// CHECK-NEXT: "canOverflow": false,\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 841,\r
-// CHECK-NEXT: "col": 4,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 841,\r
-// CHECK-NEXT: "col": 4,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 841,\r
-// CHECK-NEXT: "col": 4,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 841,\r
-// CHECK-NEXT: "col": 4,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "UnaryExprOrTypeTraitExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 849,\r
-// CHECK-NEXT: "line": 63,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 6\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 856,\r
-// CHECK-NEXT: "col": 10,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "unsigned long"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "name": "sizeof",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 856,\r
-// CHECK-NEXT: "col": 10,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 856,\r
-// CHECK-NEXT: "col": 10,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "nonOdrUseReason": "unevaluated"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "UnaryExprOrTypeTraitExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 862,\r
-// CHECK-NEXT: "line": 64,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 6\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 872,\r
-// CHECK-NEXT: "col": 13,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "unsigned long"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "name": "sizeof",\r
-// CHECK-NEXT: "argType": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "UnaryExprOrTypeTraitExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 878,\r
-// CHECK-NEXT: "line": 65,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 8\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 890,\r
-// CHECK-NEXT: "col": 15,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "unsigned long"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "name": "alignof",\r
-// CHECK-NEXT: "argType": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-\r
-\r
-// CHECK: "kind": "FunctionDecl",\r
-// CHECK-NEXT: "loc": {\r
-// CHECK-NEXT: "offset": 932,\r
-// CHECK-NEXT: "line": 72,\r
-// CHECK-NEXT: "col": 6,\r
-// CHECK-NEXT: "tokLen": 16\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 927,\r
-// CHECK-NEXT: "col": 1,\r
-// CHECK-NEXT: "tokLen": 4\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1136,\r
-// CHECK-NEXT: "line": 83,\r
-// CHECK-NEXT: "col": 1,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "name": "PostfixOperators",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "void (int *, struct S, struct S *)"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "loc": {\r
-// CHECK-NEXT: "offset": 954,\r
-// CHECK-NEXT: "line": 72,\r
-// CHECK-NEXT: "col": 28,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 949,\r
-// CHECK-NEXT: "col": 23,\r
-// CHECK-NEXT: "tokLen": 3\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 954,\r
-// CHECK-NEXT: "col": 28,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "isUsed": true,\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int *"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "loc": {\r
-// CHECK-NEXT: "offset": 966,\r
-// CHECK-NEXT: "col": 40,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 957,\r
-// CHECK-NEXT: "col": 31,\r
-// CHECK-NEXT: "tokLen": 6\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 966,\r
-// CHECK-NEXT: "col": 40,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "isUsed": true,\r
-// CHECK-NEXT: "name": "b",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "desugaredQualType": "struct S",\r
-// CHECK-NEXT: "qualType": "struct S"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "loc": {\r
-// CHECK-NEXT: "offset": 979,\r
-// CHECK-NEXT: "col": 53,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 969,\r
-// CHECK-NEXT: "col": 43,\r
-// CHECK-NEXT: "tokLen": 6\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 979,\r
-// CHECK-NEXT: "col": 53,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "isUsed": true,\r
-// CHECK-NEXT: "name": "c",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "struct S *"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "CompoundStmt",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 982,\r
-// CHECK-NEXT: "col": 56,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1136,\r
-// CHECK-NEXT: "line": 83,\r
-// CHECK-NEXT: "col": 1,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 987,\r
-// CHECK-NEXT: "line": 73,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 990,\r
-// CHECK-NEXT: "col": 6,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ArraySubscriptExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 987,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 990,\r
-// CHECK-NEXT: "col": 6,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 987,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 987,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int *"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 987,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 987,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int *"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int *"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "IntegerLiteral",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 989,\r
-// CHECK-NEXT: "col": 5,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 989,\r
-// CHECK-NEXT: "col": 5,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "value": "0"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "CallExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 996,\r
-// CHECK-NEXT: "line": 74,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 14\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1016,\r
-// CHECK-NEXT: "col": 23,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "void"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 996,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 14\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 996,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 14\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "void (*)(int, int *)"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "FunctionToPointerDecay",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 996,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 14\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 996,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 14\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "void (int, int *)"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "FunctionDecl",\r
-// CHECK-NEXT: "name": "UnaryOperators",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "void (int, int *)"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1011,\r
-// CHECK-NEXT: "col": 18,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1012,\r
-// CHECK-NEXT: "col": 19,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "UnaryOperator",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1011,\r
-// CHECK-NEXT: "col": 18,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1012,\r
-// CHECK-NEXT: "col": 19,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "isPostfix": false,\r
-// CHECK-NEXT: "opcode": "*",\r
-// CHECK-NEXT: "canOverflow": false,\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1012,\r
-// CHECK-NEXT: "col": 19,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1012,\r
-// CHECK-NEXT: "col": 19,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int *"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1012,\r
-// CHECK-NEXT: "col": 19,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1012,\r
-// CHECK-NEXT: "col": 19,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int *"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int *"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1015,\r
-// CHECK-NEXT: "col": 22,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1015,\r
-// CHECK-NEXT: "col": 22,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int *"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1015,\r
-// CHECK-NEXT: "col": 22,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1015,\r
-// CHECK-NEXT: "col": 22,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int *"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int *"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1024,\r
-// CHECK-NEXT: "line": 76,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1026,\r
-// CHECK-NEXT: "col": 5,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "MemberExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1024,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1026,\r
-// CHECK-NEXT: "col": 5,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "isArrow": false,\r
-// CHECK-NEXT: "referencedMemberDecl": "0x{{.*}}",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1024,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1024,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "desugaredQualType": "struct S",\r
-// CHECK-NEXT: "qualType": "struct S"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "b",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "desugaredQualType": "struct S",\r
-// CHECK-NEXT: "qualType": "struct S"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1032,\r
-// CHECK-NEXT: "line": 77,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1035,\r
-// CHECK-NEXT: "col": 6,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "MemberExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1032,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1035,\r
-// CHECK-NEXT: "col": 6,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "isArrow": true,\r
-// CHECK-NEXT: "referencedMemberDecl": "0x{{.*}}",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1032,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1032,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "struct S *"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1032,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1032,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "struct S *"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "c",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "struct S *"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1092,\r
-// CHECK-NEXT: "line": 81,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1114,\r
-// CHECK-NEXT: "col": 25,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int *"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "ArrayToPointerDecay",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "CompoundLiteralExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1092,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1114,\r
-// CHECK-NEXT: "col": 25,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int [4]"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "InitListExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1101,\r
-// CHECK-NEXT: "col": 12,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1114,\r
-// CHECK-NEXT: "col": 25,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int [4]"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "IntegerLiteral",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1102,\r
-// CHECK-NEXT: "col": 13,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1102,\r
-// CHECK-NEXT: "col": 13,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "value": "1"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "IntegerLiteral",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1105,\r
-// CHECK-NEXT: "col": 16,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1105,\r
-// CHECK-NEXT: "col": 16,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "value": "2"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "IntegerLiteral",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1108,\r
-// CHECK-NEXT: "col": 19,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1108,\r
-// CHECK-NEXT: "col": 19,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "value": "3"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "IntegerLiteral",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1111,\r
-// CHECK-NEXT: "col": 22,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1111,\r
-// CHECK-NEXT: "col": 22,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "value": "4"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1120,\r
-// CHECK-NEXT: "line": 82,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1132,\r
-// CHECK-NEXT: "col": 15,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "desugaredQualType": "struct S",\r
-// CHECK-NEXT: "qualType": "struct S"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "CompoundLiteralExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1120,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1132,\r
-// CHECK-NEXT: "col": 15,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "desugaredQualType": "struct S",\r
-// CHECK-NEXT: "qualType": "struct S"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "InitListExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1130,\r
-// CHECK-NEXT: "col": 13,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1132,\r
-// CHECK-NEXT: "col": 15,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "desugaredQualType": "struct S",\r
-// CHECK-NEXT: "qualType": "struct S"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "IntegerLiteral",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1131,\r
-// CHECK-NEXT: "col": 14,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1131,\r
-// CHECK-NEXT: "col": 14,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "value": "1"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-\r
-\r
-// CHECK: "kind": "FunctionDecl",\r
-// CHECK-NEXT: "loc": {\r
-// CHECK-NEXT: "offset": 1165,\r
-// CHECK-NEXT: "line": 87,\r
-// CHECK-NEXT: "col": 6,\r
-// CHECK-NEXT: "tokLen": 18\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1160,\r
-// CHECK-NEXT: "col": 1,\r
-// CHECK-NEXT: "tokLen": 4\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1360,\r
-// CHECK-NEXT: "line": 107,\r
-// CHECK-NEXT: "col": 1,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "name": "PrimaryExpressions",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "void (int)"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "loc": {\r
-// CHECK-NEXT: "offset": 1188,\r
-// CHECK-NEXT: "line": 87,\r
-// CHECK-NEXT: "col": 29,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1184,\r
-// CHECK-NEXT: "col": 25,\r
-// CHECK-NEXT: "tokLen": 3\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1188,\r
-// CHECK-NEXT: "col": 29,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "isUsed": true,\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "CompoundStmt",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1191,\r
-// CHECK-NEXT: "col": 32,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1360,\r
-// CHECK-NEXT: "line": 107,\r
-// CHECK-NEXT: "col": 1,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1196,\r
-// CHECK-NEXT: "line": 88,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1196,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1196,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1196,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "CharacterLiteral",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1202,\r
-// CHECK-NEXT: "line": 89,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 3\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1202,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 3\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "value": 97\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "CharacterLiteral",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1210,\r
-// CHECK-NEXT: "line": 90,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 4\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1210,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 4\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "value": 97\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1219,\r
-// CHECK-NEXT: "line": 91,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 3\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1219,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 3\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "char *"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "ArrayToPointerDecay",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "StringLiteral",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1219,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 3\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1219,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 3\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "char [2]"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "value": "\"a\""\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1227,\r
-// CHECK-NEXT: "line": 92,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 4\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1227,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 4\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int *"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "ArrayToPointerDecay",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "StringLiteral",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1227,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 4\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1227,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 4\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int [2]"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "value": "L\"a\""\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1236,\r
-// CHECK-NEXT: "line": 93,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 5\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1236,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 5\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "char *"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "ArrayToPointerDecay",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "StringLiteral",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1236,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 5\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1236,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 5\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "char [2]"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "value": "u8\"a\""\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1246,\r
-// CHECK-NEXT: "line": 94,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 4\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1246,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 4\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "unsigned int *"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "ArrayToPointerDecay",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "StringLiteral",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1246,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 4\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1246,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 4\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "unsigned int [2]"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "value": "U\"a\""\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1255,\r
-// CHECK-NEXT: "line": 95,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 4\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1255,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 4\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "unsigned short *"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "ArrayToPointerDecay",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "StringLiteral",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1255,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 4\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1255,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 4\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "unsigned short [2]"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "value": "u\"a\""\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "IntegerLiteral",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1266,\r
-// CHECK-NEXT: "line": 97,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1266,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "value": "1"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "IntegerLiteral",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1272,\r
-// CHECK-NEXT: "line": 98,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 2\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1272,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 2\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "unsigned int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "value": "1"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "IntegerLiteral",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1279,\r
-// CHECK-NEXT: "line": 99,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 3\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1279,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 3\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "long long"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "value": "1"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "FloatingLiteral",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1287,\r
-// CHECK-NEXT: "line": 100,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 3\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1287,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 3\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "double"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "value": "1"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "FloatingLiteral",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1295,\r
-// CHECK-NEXT: "line": 101,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 4\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1295,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 4\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "float"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "value": "1"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "FloatingLiteral",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1304,\r
-// CHECK-NEXT: "line": 102,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 26\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1304,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 26\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "float"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "value": "+Inf"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "FloatingLiteral",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1335,\r
-// CHECK-NEXT: "line": 103,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 4\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1335,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 4\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "long double"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "value": "1"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1344,\r
-// CHECK-NEXT: "line": 104,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 3\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1344,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 3\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "EnumConstantDecl",\r
-// CHECK-NEXT: "name": "One",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ImplicitCastExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1354,\r
-// CHECK-NEXT: "line": 106,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1356,\r
-// CHECK-NEXT: "col": 5,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "rvalue",\r
-// CHECK-NEXT: "castKind": "LValueToRValue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParenExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1354,\r
-// CHECK-NEXT: "col": 3,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1356,\r
-// CHECK-NEXT: "col": 5,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "inner": [\r
-// CHECK-NEXT: {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "DeclRefExpr",\r
-// CHECK-NEXT: "range": {\r
-// CHECK-NEXT: "begin": {\r
-// CHECK-NEXT: "offset": 1355,\r
-// CHECK-NEXT: "col": 4,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "end": {\r
-// CHECK-NEXT: "offset": 1355,\r
-// CHECK-NEXT: "col": 4,\r
-// CHECK-NEXT: "tokLen": 1\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: },\r
-// CHECK-NEXT: "valueCategory": "lvalue",\r
-// CHECK-NEXT: "referencedDecl": {\r
-// CHECK-NEXT: "id": "0x{{.*}}",\r
-// CHECK-NEXT: "kind": "ParmVarDecl",\r
-// CHECK-NEXT: "name": "a",\r
-// CHECK-NEXT: "type": {\r
-// CHECK-NEXT: "qualType": "int"\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
-// CHECK-NEXT: ]\r
-// CHECK-NEXT: }\r
+// NOTE: CHECK lines have been autogenerated by gen_ast_dump_json_test.py
+// using --filters=FunctionDecl
+
+
+// CHECK: "kind": "FunctionDecl",
+// CHECK-NEXT: "loc": {
+// CHECK-NEXT: "offset": 120,
+// CHECK-NEXT: "file": "{{.*}}",
+// CHECK-NEXT: "line": 3,
+// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "tokLen": 5
+// CHECK-NEXT: },
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 115,
+// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "tokLen": 4
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 147,
+// CHECK-NEXT: "line": 5,
+// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "name": "Comma",
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "void (void)"
+// CHECK-NEXT: },
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CompoundStmt",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 132,
+// CHECK-NEXT: "line": 3,
+// CHECK-NEXT: "col": 18,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 147,
+// CHECK-NEXT: "line": 5,
+// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "BinaryOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 137,
+// CHECK-NEXT: "line": 4,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 143,
+// CHECK-NEXT: "col": 9,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "opcode": ",",
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "BinaryOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 137,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 140,
+// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 137,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 137,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "value": "1"
+// CHECK-NEXT: },
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 140,
+// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 140,
+// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "value": "2"
+// 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": 143,
+// CHECK-NEXT: "col": 9,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 143,
+// CHECK-NEXT: "col": 9,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "value": "3"
+// CHECK-NEXT: }
+// CHECK-NEXT: ]
+// CHECK-NEXT: }
+// CHECK-NEXT: ]
+// CHECK-NEXT: }
+// CHECK-NEXT: ]
+// CHECK-NEXT: }
+
+
+// CHECK: "kind": "FunctionDecl",
+// CHECK-NEXT: "loc": {
+// CHECK-NEXT: "offset": 157,
+// CHECK-NEXT: "line": 7,
+// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "tokLen": 10
+// CHECK-NEXT: },
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 152,
+// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "tokLen": 4
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 200,
+// CHECK-NEXT: "line": 10,
+// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "name": "Assignment",
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "void (int)"
+// CHECK-NEXT: },
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "loc": {
+// CHECK-NEXT: "offset": 172,
+// CHECK-NEXT: "line": 7,
+// CHECK-NEXT: "col": 21,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 168,
+// CHECK-NEXT: "col": 17,
+// CHECK-NEXT: "tokLen": 3
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 172,
+// CHECK-NEXT: "col": 21,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "isUsed": true,
+// CHECK-NEXT: "name": "a",
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CompoundStmt",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 175,
+// CHECK-NEXT: "col": 24,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 200,
+// CHECK-NEXT: "line": 10,
+// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "BinaryOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 180,
+// CHECK-NEXT: "line": 8,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 184,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 2
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 180,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 180,
+// CHECK-NEXT: "col": 3,
+// 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": "a",
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// 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": 184,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 2
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 184,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 2
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "value": "12"
+// CHECK-NEXT: }
+// CHECK-NEXT: ]
+// CHECK-NEXT: },
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CompoundAssignOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 191,
+// CHECK-NEXT: "line": 9,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 196,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "opcode": "+=",
+// CHECK-NEXT: "computeLHSType": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "computeResultType": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclRefExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 191,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 191,
+// CHECK-NEXT: "col": 3,
+// 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": "a",
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// 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": 196,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 196,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 196,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 196,
+// CHECK-NEXT: "col": 8,
+// 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": "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: "kind": "FunctionDecl",
+// CHECK-NEXT: "loc": {
+// CHECK-NEXT: "offset": 210,
+// CHECK-NEXT: "line": 12,
+// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "tokLen": 12
+// CHECK-NEXT: },
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 205,
+// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "tokLen": 4
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 258,
+// CHECK-NEXT: "line": 15,
+// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "name": "Conditionals",
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "void (int)"
+// CHECK-NEXT: },
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "loc": {
+// CHECK-NEXT: "offset": 227,
+// CHECK-NEXT: "line": 12,
+// CHECK-NEXT: "col": 23,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 223,
+// CHECK-NEXT: "col": 19,
+// CHECK-NEXT: "tokLen": 3
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 227,
+// CHECK-NEXT: "col": 23,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "isUsed": true,
+// CHECK-NEXT: "name": "a",
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CompoundStmt",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 230,
+// CHECK-NEXT: "col": 26,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 258,
+// CHECK-NEXT: "line": 15,
+// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ConditionalOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 235,
+// CHECK-NEXT: "line": 13,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 243,
+// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 235,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 235,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 235,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 235,
+// CHECK-NEXT: "col": 3,
+// 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": "a",
+// 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": 239,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 239,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "value": "0"
+// CHECK-NEXT: },
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 243,
+// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 243,
+// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "value": "1"
+// CHECK-NEXT: }
+// CHECK-NEXT: ]
+// CHECK-NEXT: },
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "BinaryConditionalOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 249,
+// CHECK-NEXT: "line": 14,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 254,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 249,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 249,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 249,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 249,
+// CHECK-NEXT: "col": 3,
+// 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": "a",
+// 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": "OpaqueValueExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 249,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 249,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 249,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 249,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 249,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 249,
+// CHECK-NEXT: "col": 3,
+// 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": "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: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 249,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 249,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 249,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 249,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 249,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 249,
+// CHECK-NEXT: "col": 3,
+// 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": "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: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 254,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 254,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "value": "0"
+// CHECK-NEXT: }
+// CHECK-NEXT: ]
+// CHECK-NEXT: }
+// CHECK-NEXT: ]
+// CHECK-NEXT: }
+// CHECK-NEXT: ]
+// CHECK-NEXT: }
+
+
+// CHECK: "kind": "FunctionDecl",
+// CHECK-NEXT: "loc": {
+// CHECK-NEXT: "offset": 268,
+// CHECK-NEXT: "line": 17,
+// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "tokLen": 15
+// CHECK-NEXT: },
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 263,
+// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "tokLen": 4
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 686,
+// CHECK-NEXT: "line": 49,
+// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "name": "BinaryOperators",
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "void (int, int)"
+// CHECK-NEXT: },
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "loc": {
+// CHECK-NEXT: "offset": 288,
+// CHECK-NEXT: "line": 17,
+// CHECK-NEXT: "col": 26,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 284,
+// CHECK-NEXT: "col": 22,
+// CHECK-NEXT: "tokLen": 3
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 288,
+// CHECK-NEXT: "col": 26,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "isUsed": true,
+// CHECK-NEXT: "name": "a",
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "loc": {
+// CHECK-NEXT: "offset": 295,
+// CHECK-NEXT: "col": 33,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 291,
+// CHECK-NEXT: "col": 29,
+// CHECK-NEXT: "tokLen": 3
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 295,
+// CHECK-NEXT: "col": 33,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "isUsed": true,
+// CHECK-NEXT: "name": "b",
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CompoundStmt",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 298,
+// CHECK-NEXT: "col": 36,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 686,
+// CHECK-NEXT: "line": 49,
+// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "BinaryOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 327,
+// CHECK-NEXT: "line": 19,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 332,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 327,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 327,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 327,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 327,
+// CHECK-NEXT: "col": 3,
+// 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": "a",
+// 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": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 332,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 332,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 332,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 332,
+// CHECK-NEXT: "col": 8,
+// 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": "b",
+// 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": "BinaryOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 338,
+// CHECK-NEXT: "line": 20,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 343,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 338,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 338,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 338,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 338,
+// CHECK-NEXT: "col": 3,
+// 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": "a",
+// 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": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 343,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 343,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 343,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 343,
+// CHECK-NEXT: "col": 8,
+// 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": "b",
+// 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": "BinaryOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 375,
+// CHECK-NEXT: "line": 23,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 379,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 375,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 375,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 375,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 375,
+// CHECK-NEXT: "col": 3,
+// 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": "a",
+// 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": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 379,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 379,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 379,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 379,
+// CHECK-NEXT: "col": 7,
+// 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": "b",
+// 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": "BinaryOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 385,
+// CHECK-NEXT: "line": 24,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 389,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 385,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 385,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 385,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 385,
+// CHECK-NEXT: "col": 3,
+// 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": "a",
+// 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": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 389,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 389,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 389,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 389,
+// CHECK-NEXT: "col": 7,
+// 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": "b",
+// 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": "BinaryOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 395,
+// CHECK-NEXT: "line": 25,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 399,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 395,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 395,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 395,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 395,
+// CHECK-NEXT: "col": 3,
+// 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": "a",
+// 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": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 399,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 399,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 399,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 399,
+// CHECK-NEXT: "col": 7,
+// 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": "b",
+// 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": "BinaryOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 432,
+// CHECK-NEXT: "line": 28,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 437,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 432,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 432,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 432,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 432,
+// CHECK-NEXT: "col": 3,
+// 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": "a",
+// 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": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 437,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 437,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 437,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 437,
+// CHECK-NEXT: "col": 8,
+// 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": "b",
+// 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": "BinaryOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 443,
+// CHECK-NEXT: "line": 29,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 448,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 443,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 443,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 443,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 443,
+// CHECK-NEXT: "col": 3,
+// 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": "a",
+// 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": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 448,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 448,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 448,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 448,
+// CHECK-NEXT: "col": 8,
+// 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": "b",
+// 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": "BinaryOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 483,
+// CHECK-NEXT: "line": 32,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 487,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 483,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 483,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 483,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 483,
+// CHECK-NEXT: "col": 3,
+// 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": "a",
+// 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": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 487,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 487,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 487,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 487,
+// CHECK-NEXT: "col": 7,
+// 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": "b",
+// 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": "BinaryOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 493,
+// CHECK-NEXT: "line": 33,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 497,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 493,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 493,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 493,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 493,
+// CHECK-NEXT: "col": 3,
+// 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": "a",
+// 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": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 497,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 497,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 497,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 497,
+// CHECK-NEXT: "col": 7,
+// 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": "b",
+// 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": "BinaryOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 503,
+// CHECK-NEXT: "line": 34,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 508,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 503,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 503,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 503,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 503,
+// CHECK-NEXT: "col": 3,
+// 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": "a",
+// 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": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 508,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 508,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 508,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 508,
+// CHECK-NEXT: "col": 8,
+// 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": "b",
+// 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": "BinaryOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 514,
+// CHECK-NEXT: "line": 35,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 519,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 514,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 514,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 514,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 514,
+// CHECK-NEXT: "col": 3,
+// 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": "a",
+// 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": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 519,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 519,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 519,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 519,
+// CHECK-NEXT: "col": 8,
+// 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": "b",
+// 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": "BinaryOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 556,
+// CHECK-NEXT: "line": 38,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 561,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 556,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 556,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 556,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 556,
+// CHECK-NEXT: "col": 3,
+// 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": "a",
+// 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": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 561,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 561,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 561,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 561,
+// CHECK-NEXT: "col": 8,
+// 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": "b",
+// 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": "BinaryOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 567,
+// CHECK-NEXT: "line": 39,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 572,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 567,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 567,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 567,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 567,
+// CHECK-NEXT: "col": 3,
+// 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": "a",
+// 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": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 572,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 572,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 572,
+// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 572,
+// CHECK-NEXT: "col": 8,
+// 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": "b",
+// 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": "BinaryOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 605,
+// CHECK-NEXT: "line": 42,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 609,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 605,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 605,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 605,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 605,
+// CHECK-NEXT: "col": 3,
+// 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": "a",
+// 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": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 609,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 609,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 609,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 609,
+// CHECK-NEXT: "col": 7,
+// 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": "b",
+// 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": "BinaryOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 615,
+// CHECK-NEXT: "line": 43,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 619,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 615,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 615,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 615,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 615,
+// CHECK-NEXT: "col": 3,
+// 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": "a",
+// 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": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 619,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 619,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 619,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 619,
+// CHECK-NEXT: "col": 7,
+// 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": "b",
+// 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": "BinaryOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 658,
+// CHECK-NEXT: "line": 46,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 662,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 658,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 658,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 658,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 658,
+// CHECK-NEXT: "col": 3,
+// 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": "a",
+// 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": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 662,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 662,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 662,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 662,
+// CHECK-NEXT: "col": 7,
+// 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": "b",
+// 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": "BinaryOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 668,
+// CHECK-NEXT: "line": 47,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 672,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 668,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 668,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 668,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 668,
+// CHECK-NEXT: "col": 3,
+// 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": "a",
+// 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": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 672,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 672,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 672,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 672,
+// CHECK-NEXT: "col": 7,
+// 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": "b",
+// 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": "BinaryOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 678,
+// CHECK-NEXT: "line": 48,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 682,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 678,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 678,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 678,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 678,
+// CHECK-NEXT: "col": 3,
+// 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": "a",
+// 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": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 682,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 682,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 682,
+// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 682,
+// CHECK-NEXT: "col": 7,
+// 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": "b",
+// 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: "kind": "FunctionDecl",
+// CHECK-NEXT: "loc": {
+// CHECK-NEXT: "offset": 696,
+// CHECK-NEXT: "line": 51,
+// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "tokLen": 14
+// CHECK-NEXT: },
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 691,
+// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "tokLen": 4
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 894,
+// CHECK-NEXT: "line": 66,
+// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "isUsed": true,
+// CHECK-NEXT: "name": "UnaryOperators",
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "void (int, int *)"
+// CHECK-NEXT: },
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "loc": {
+// CHECK-NEXT: "offset": 715,
+// CHECK-NEXT: "line": 51,
+// CHECK-NEXT: "col": 25,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 711,
+// CHECK-NEXT: "col": 21,
+// CHECK-NEXT: "tokLen": 3
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 715,
+// CHECK-NEXT: "col": 25,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "isUsed": true,
+// CHECK-NEXT: "name": "a",
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "loc": {
+// CHECK-NEXT: "offset": 723,
+// CHECK-NEXT: "col": 33,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 718,
+// CHECK-NEXT: "col": 28,
+// CHECK-NEXT: "tokLen": 3
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 723,
+// CHECK-NEXT: "col": 33,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "isUsed": true,
+// CHECK-NEXT: "name": "b",
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int *"
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CompoundStmt",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 726,
+// CHECK-NEXT: "col": 36,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 894,
+// CHECK-NEXT: "line": 66,
+// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CStyleCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 752,
+// CHECK-NEXT: "line": 53,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 759,
+// CHECK-NEXT: "col": 10,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "float"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "IntegralToFloating",
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 759,
+// CHECK-NEXT: "col": 10,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 759,
+// CHECK-NEXT: "col": 10,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "LValueToRValue",
+// CHECK-NEXT: "isPartOfExplicitCast": true,
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclRefExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 759,
+// CHECK-NEXT: "col": 10,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 759,
+// CHECK-NEXT: "col": 10,
+// 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": "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: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "UnaryOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 812,
+// CHECK-NEXT: "line": 57,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 813,
+// CHECK-NEXT: "col": 4,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 813,
+// CHECK-NEXT: "col": 4,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 813,
+// CHECK-NEXT: "col": 4,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 813,
+// CHECK-NEXT: "col": 4,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 813,
+// CHECK-NEXT: "col": 4,
+// 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": "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: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "UnaryOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 819,
+// CHECK-NEXT: "line": 58,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 820,
+// CHECK-NEXT: "col": 4,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 820,
+// CHECK-NEXT: "col": 4,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 820,
+// CHECK-NEXT: "col": 4,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 820,
+// CHECK-NEXT: "col": 4,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 820,
+// CHECK-NEXT: "col": 4,
+// 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": "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: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "UnaryOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 826,
+// CHECK-NEXT: "line": 59,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 827,
+// CHECK-NEXT: "col": 4,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int *"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "isPostfix": false,
+// 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": 827,
+// CHECK-NEXT: "col": 4,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 827,
+// CHECK-NEXT: "col": 4,
+// 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": "a",
+// 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": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 833,
+// CHECK-NEXT: "line": 60,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 834,
+// CHECK-NEXT: "col": 4,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "LValueToRValue",
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "UnaryOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 833,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 834,
+// CHECK-NEXT: "col": 4,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
+// 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": 834,
+// CHECK-NEXT: "col": 4,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 834,
+// CHECK-NEXT: "col": 4,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int *"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 834,
+// CHECK-NEXT: "col": 4,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 834,
+// CHECK-NEXT: "col": 4,
+// 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": "b",
+// 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: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "UnaryOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 840,
+// CHECK-NEXT: "line": 61,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 841,
+// CHECK-NEXT: "col": 4,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 841,
+// CHECK-NEXT: "col": 4,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 841,
+// CHECK-NEXT: "col": 4,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 841,
+// CHECK-NEXT: "col": 4,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 841,
+// CHECK-NEXT: "col": 4,
+// 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": "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: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "UnaryExprOrTypeTraitExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 849,
+// CHECK-NEXT: "line": 63,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 6
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 856,
+// CHECK-NEXT: "col": 10,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "unsigned long"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "name": "sizeof",
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclRefExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 856,
+// CHECK-NEXT: "col": 10,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 856,
+// CHECK-NEXT: "col": 10,
+// 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": "a",
+// 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": "UnaryExprOrTypeTraitExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 862,
+// CHECK-NEXT: "line": 64,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 6
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 872,
+// CHECK-NEXT: "col": 13,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "unsigned long"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "name": "sizeof",
+// CHECK-NEXT: "argType": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "UnaryExprOrTypeTraitExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 878,
+// CHECK-NEXT: "line": 65,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 8
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 890,
+// CHECK-NEXT: "col": 15,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "unsigned long"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "name": "alignof",
+// CHECK-NEXT: "argType": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: }
+// CHECK-NEXT: }
+// CHECK-NEXT: ]
+// CHECK-NEXT: }
+// CHECK-NEXT: ]
+// CHECK-NEXT: }
+
+
+// CHECK: "kind": "FunctionDecl",
+// CHECK-NEXT: "loc": {
+// CHECK-NEXT: "offset": 932,
+// CHECK-NEXT: "line": 72,
+// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "tokLen": 16
+// CHECK-NEXT: },
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 927,
+// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "tokLen": 4
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1136,
+// CHECK-NEXT: "line": 83,
+// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "name": "PostfixOperators",
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "void (int *, struct S, struct S *)"
+// CHECK-NEXT: },
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "loc": {
+// CHECK-NEXT: "offset": 954,
+// CHECK-NEXT: "line": 72,
+// CHECK-NEXT: "col": 28,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 949,
+// CHECK-NEXT: "col": 23,
+// CHECK-NEXT: "tokLen": 3
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 954,
+// CHECK-NEXT: "col": 28,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "isUsed": true,
+// CHECK-NEXT: "name": "a",
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int *"
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "loc": {
+// CHECK-NEXT: "offset": 966,
+// CHECK-NEXT: "col": 40,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 957,
+// CHECK-NEXT: "col": 31,
+// CHECK-NEXT: "tokLen": 6
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 966,
+// CHECK-NEXT: "col": 40,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "isUsed": true,
+// CHECK-NEXT: "name": "b",
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "desugaredQualType": "struct S",
+// CHECK-NEXT: "qualType": "struct S"
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "loc": {
+// CHECK-NEXT: "offset": 979,
+// CHECK-NEXT: "col": 53,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 969,
+// CHECK-NEXT: "col": 43,
+// CHECK-NEXT: "tokLen": 6
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 979,
+// CHECK-NEXT: "col": 53,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "isUsed": true,
+// CHECK-NEXT: "name": "c",
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "struct S *"
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CompoundStmt",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 982,
+// CHECK-NEXT: "col": 56,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1136,
+// CHECK-NEXT: "line": 83,
+// CHECK-NEXT: "col": 1,
+// 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": 987,
+// CHECK-NEXT: "line": 73,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 990,
+// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "LValueToRValue",
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ArraySubscriptExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 987,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 990,
+// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 987,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 987,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int *"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 987,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 987,
+// CHECK-NEXT: "col": 3,
+// 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": "a",
+// 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": 989,
+// CHECK-NEXT: "col": 5,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 989,
+// CHECK-NEXT: "col": 5,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "value": "0"
+// CHECK-NEXT: }
+// CHECK-NEXT: ]
+// CHECK-NEXT: }
+// CHECK-NEXT: ]
+// CHECK-NEXT: },
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CallExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 996,
+// CHECK-NEXT: "line": 74,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 14
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1016,
+// CHECK-NEXT: "col": 23,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "void"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 996,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 14
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 996,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 14
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "void (*)(int, int *)"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 996,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 14
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 996,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 14
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "void (int, int *)"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "referencedDecl": {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "FunctionDecl",
+// CHECK-NEXT: "name": "UnaryOperators",
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "void (int, int *)"
+// 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": 1011,
+// CHECK-NEXT: "col": 18,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1012,
+// CHECK-NEXT: "col": 19,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "LValueToRValue",
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "UnaryOperator",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1011,
+// CHECK-NEXT: "col": 18,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1012,
+// 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: "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": 1012,
+// CHECK-NEXT: "col": 19,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1012,
+// CHECK-NEXT: "col": 19,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int *"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 1012,
+// CHECK-NEXT: "col": 19,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1012,
+// 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": "ParmVarDecl",
+// 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: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1015,
+// CHECK-NEXT: "col": 22,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1015,
+// CHECK-NEXT: "col": 22,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int *"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 1015,
+// CHECK-NEXT: "col": 22,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1015,
+// CHECK-NEXT: "col": 22,
+// 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": "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: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1024,
+// CHECK-NEXT: "line": 76,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1026,
+// CHECK-NEXT: "col": 5,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "LValueToRValue",
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "MemberExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1024,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1026,
+// CHECK-NEXT: "col": 5,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: "name": "a",
+// CHECK-NEXT: "isArrow": false,
+// CHECK-NEXT: "referencedMemberDecl": "0x{{.*}}",
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclRefExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1024,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1024,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "desugaredQualType": "struct S",
+// CHECK-NEXT: "qualType": "struct S"
+// 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: "desugaredQualType": "struct S",
+// CHECK-NEXT: "qualType": "struct S"
+// CHECK-NEXT: }
+// 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": 1032,
+// CHECK-NEXT: "line": 77,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1035,
+// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "LValueToRValue",
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "MemberExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1032,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1035,
+// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: "name": "a",
+// CHECK-NEXT: "isArrow": true,
+// CHECK-NEXT: "referencedMemberDecl": "0x{{.*}}",
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1032,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1032,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "struct S *"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 1032,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1032,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "struct S *"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: "referencedDecl": {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "name": "c",
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "struct S *"
+// 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": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1092,
+// CHECK-NEXT: "line": 81,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1114,
+// CHECK-NEXT: "col": 25,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int *"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "ArrayToPointerDecay",
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CompoundLiteralExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1092,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1114,
+// CHECK-NEXT: "col": 25,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int [4]"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "InitListExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1101,
+// CHECK-NEXT: "col": 12,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1114,
+// CHECK-NEXT: "col": 25,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int [4]"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1102,
+// CHECK-NEXT: "col": 13,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1102,
+// CHECK-NEXT: "col": 13,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "value": "1"
+// CHECK-NEXT: },
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1105,
+// CHECK-NEXT: "col": 16,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1105,
+// CHECK-NEXT: "col": 16,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "value": "2"
+// CHECK-NEXT: },
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1108,
+// CHECK-NEXT: "col": 19,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1108,
+// CHECK-NEXT: "col": 19,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "value": "3"
+// CHECK-NEXT: },
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1111,
+// CHECK-NEXT: "col": 22,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1111,
+// CHECK-NEXT: "col": 22,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "value": "4"
+// CHECK-NEXT: }
+// 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": 1120,
+// CHECK-NEXT: "line": 82,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1132,
+// CHECK-NEXT: "col": 15,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "desugaredQualType": "struct S",
+// CHECK-NEXT: "qualType": "struct S"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "LValueToRValue",
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CompoundLiteralExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1120,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1132,
+// CHECK-NEXT: "col": 15,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "desugaredQualType": "struct S",
+// CHECK-NEXT: "qualType": "struct S"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "InitListExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1130,
+// CHECK-NEXT: "col": 13,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1132,
+// CHECK-NEXT: "col": 15,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "desugaredQualType": "struct S",
+// CHECK-NEXT: "qualType": "struct S"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1131,
+// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1131,
+// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "value": "1"
+// CHECK-NEXT: }
+// CHECK-NEXT: ]
+// CHECK-NEXT: }
+// CHECK-NEXT: ]
+// CHECK-NEXT: }
+// CHECK-NEXT: ]
+// CHECK-NEXT: }
+// CHECK-NEXT: ]
+// CHECK-NEXT: }
+// CHECK-NEXT: ]
+// CHECK-NEXT: }
+
+
+// CHECK: "kind": "FunctionDecl",
+// CHECK-NEXT: "loc": {
+// CHECK-NEXT: "offset": 1165,
+// CHECK-NEXT: "line": 87,
+// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "tokLen": 18
+// CHECK-NEXT: },
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1160,
+// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "tokLen": 4
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1360,
+// CHECK-NEXT: "line": 107,
+// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "name": "PrimaryExpressions",
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "void (int)"
+// CHECK-NEXT: },
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "loc": {
+// CHECK-NEXT: "offset": 1188,
+// CHECK-NEXT: "line": 87,
+// CHECK-NEXT: "col": 29,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1184,
+// CHECK-NEXT: "col": 25,
+// CHECK-NEXT: "tokLen": 3
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1188,
+// CHECK-NEXT: "col": 29,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "isUsed": true,
+// CHECK-NEXT: "name": "a",
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CompoundStmt",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1191,
+// CHECK-NEXT: "col": 32,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1360,
+// CHECK-NEXT: "line": 107,
+// CHECK-NEXT: "col": 1,
+// 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": 1196,
+// CHECK-NEXT: "line": 88,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1196,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// 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": 1196,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1196,
+// CHECK-NEXT: "col": 3,
+// 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": "a",
+// 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": "CharacterLiteral",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1202,
+// CHECK-NEXT: "line": 89,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 3
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1202,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 3
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "value": 97
+// CHECK-NEXT: },
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CharacterLiteral",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1210,
+// CHECK-NEXT: "line": 90,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 4
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1210,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 4
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "value": 97
+// CHECK-NEXT: },
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1219,
+// CHECK-NEXT: "line": 91,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 3
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1219,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 3
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "char *"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "ArrayToPointerDecay",
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "StringLiteral",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1219,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 3
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1219,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 3
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "char [2]"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: "value": "\"a\""
+// 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": 1227,
+// CHECK-NEXT: "line": 92,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 4
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1227,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 4
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int *"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "ArrayToPointerDecay",
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "StringLiteral",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1227,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 4
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1227,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 4
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int [2]"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: "value": "L\"a\""
+// 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": 1236,
+// CHECK-NEXT: "line": 93,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 5
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1236,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 5
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "char *"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "ArrayToPointerDecay",
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "StringLiteral",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1236,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 5
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1236,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 5
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "char [2]"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: "value": "u8\"a\""
+// 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": 1246,
+// CHECK-NEXT: "line": 94,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 4
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1246,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 4
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "unsigned int *"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "ArrayToPointerDecay",
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "StringLiteral",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1246,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 4
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1246,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 4
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "unsigned int [2]"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: "value": "U\"a\""
+// 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": 1255,
+// CHECK-NEXT: "line": 95,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 4
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1255,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 4
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "unsigned short *"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "ArrayToPointerDecay",
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "StringLiteral",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1255,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 4
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1255,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 4
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "unsigned short [2]"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: "value": "u\"a\""
+// 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": 1266,
+// CHECK-NEXT: "line": 97,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1266,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "value": "1"
+// CHECK-NEXT: },
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1272,
+// CHECK-NEXT: "line": 98,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 2
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1272,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 2
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "unsigned int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "value": "1"
+// CHECK-NEXT: },
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1279,
+// CHECK-NEXT: "line": 99,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 3
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1279,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 3
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "long long"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "value": "1"
+// CHECK-NEXT: },
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "FloatingLiteral",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1287,
+// CHECK-NEXT: "line": 100,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 3
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1287,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 3
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "double"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "value": "1"
+// CHECK-NEXT: },
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "FloatingLiteral",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1295,
+// CHECK-NEXT: "line": 101,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 4
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1295,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 4
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "float"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "value": "1"
+// CHECK-NEXT: },
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "FloatingLiteral",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1304,
+// CHECK-NEXT: "line": 102,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 26
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1304,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 26
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "float"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "value": "+Inf"
+// CHECK-NEXT: },
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "FloatingLiteral",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1335,
+// CHECK-NEXT: "line": 103,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 4
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1335,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 4
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "long double"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "value": "1"
+// CHECK-NEXT: },
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclRefExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1344,
+// CHECK-NEXT: "line": 104,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 3
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1344,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 3
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "referencedDecl": {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "EnumConstantDecl",
+// CHECK-NEXT: "name": "One",
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// 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": 1354,
+// CHECK-NEXT: "line": 106,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1356,
+// CHECK-NEXT: "col": 5,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "LValueToRValue",
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParenExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1354,
+// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1356,
+// CHECK-NEXT: "col": 5,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: }
+// CHECK-NEXT: },
+// CHECK-NEXT: "type": {
+// CHECK-NEXT: "qualType": "int"
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: "inner": [
+// CHECK-NEXT: {
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclRefExpr",
+// CHECK-NEXT: "range": {
+// CHECK-NEXT: "begin": {
+// CHECK-NEXT: "offset": 1355,
+// CHECK-NEXT: "col": 4,
+// CHECK-NEXT: "tokLen": 1
+// CHECK-NEXT: },
+// CHECK-NEXT: "end": {
+// CHECK-NEXT: "offset": 1355,
+// CHECK-NEXT: "col": 4,
+// 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": "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: }