brintos

brintos / llvm-project-archived public Read only

0
0
Text · 184.1 KiB · ecb6191 Raw
5551 lines · c
1// RUN: %clang_cc1 -triple x86_64-unknown-unknown -Wno-unused-value -std=gnu11 -ast-dump=json %s | FileCheck %s2 3void Comma(void) {4  1, 2, 3;5}6 7void Assignment(int a) {8  a = 12;9  a += a;10}11 12void Conditionals(int a) {13  a ? 0 : 1;14  a ?: 0;15}16 17void BinaryOperators(int a, int b) {18  // Logical operators19  a || b;20  a && b;21 22  // Bitwise operators23  a | b;24  a ^ b;25  a & b;26 27  // Equality operators28  a == b;29  a != b;30 31  // Relational operators32  a < b;33  a > b;34  a <= b;35  a >= b;36 37  // Bit shifting operators38  a << b;39  a >> b;40 41  // Additive operators42  a + b;43  a - b;44 45  // Multiplicative operators46  a * b;47  a / b;48  a % b;49}50 51void UnaryOperators(int a, int *b) {52  // Cast operators53  (float)a;54 55  // ++, --, and ~ are covered elsewhere.56 57  -a;58  +a;59  &a;60  *b;61  !a;62 63  sizeof a;64  sizeof(int);65  _Alignof(int);66}67 68struct S {69  int a;70};71 72void PostfixOperators(int *a, struct S b, struct S *c) {73  a[0];74  UnaryOperators(*a, a);75 76  b.a;77  c->a;78 79  // Postfix ++ and -- are covered elsewhere.80 81  (int [4]){1, 2, 3, 4, };82  (struct S){1};83}84 85enum E { One };86 87void PrimaryExpressions(int a) {88  a;89  'a';90  L'a';91  "a";92  L"a";93  u8"a";94  U"a";95  u"a";96 97  1;98  1u;99  1ll;100  1.0;101  1.0f;102  0xFp100000000000000000000F;103  1.0l;104  One;105 106  (a);107}108 109// NOTE: CHECK lines have been autogenerated by gen_ast_dump_json_test.py110// using --filters=FunctionDecl111 112 113// CHECK-NOT: {{^}}Dumping114// CHECK:  "kind": "FunctionDecl",115// CHECK-NEXT:  "loc": {116// CHECK-NEXT:   "offset": {{[0-9]+}},117// CHECK-NEXT:   "file": "{{.*}}",118// CHECK-NEXT:   "line": 3,119// CHECK-NEXT:   "col": 6,120// CHECK-NEXT:   "tokLen": 5121// CHECK-NEXT:  },122// CHECK-NEXT:  "range": {123// CHECK-NEXT:   "begin": {124// CHECK-NEXT:    "offset": {{[0-9]+}},125// CHECK-NEXT:    "col": 1,126// CHECK-NEXT:    "tokLen": 4127// CHECK-NEXT:   },128// CHECK-NEXT:   "end": {129// CHECK-NEXT:    "offset": {{[0-9]+}},130// CHECK-NEXT:    "line": 5,131// CHECK-NEXT:    "col": 1,132// CHECK-NEXT:    "tokLen": 1133// CHECK-NEXT:   }134// CHECK-NEXT:  },135// CHECK-NEXT:  "name": "Comma",136// CHECK-NEXT:  "mangledName": "Comma",137// CHECK-NEXT:  "type": {138// CHECK-NEXT:   "qualType": "void (void)"139// CHECK-NEXT:  },140// CHECK-NEXT:  "inner": [141// CHECK-NEXT:   {142// CHECK-NEXT:    "id": "0x{{.*}}",143// CHECK-NEXT:    "kind": "CompoundStmt",144// CHECK-NEXT:    "range": {145// CHECK-NEXT:     "begin": {146// CHECK-NEXT:      "offset": {{[0-9]+}},147// CHECK-NEXT:      "line": 3,148// CHECK-NEXT:      "col": 18,149// CHECK-NEXT:      "tokLen": 1150// CHECK-NEXT:     },151// CHECK-NEXT:     "end": {152// CHECK-NEXT:      "offset": {{[0-9]+}},153// CHECK-NEXT:      "line": 5,154// CHECK-NEXT:      "col": 1,155// CHECK-NEXT:      "tokLen": 1156// CHECK-NEXT:     }157// CHECK-NEXT:    },158// CHECK-NEXT:    "inner": [159// CHECK-NEXT:     {160// CHECK-NEXT:      "id": "0x{{.*}}",161// CHECK-NEXT:      "kind": "BinaryOperator",162// CHECK-NEXT:      "range": {163// CHECK-NEXT:       "begin": {164// CHECK-NEXT:        "offset": {{[0-9]+}},165// CHECK-NEXT:        "line": 4,166// CHECK-NEXT:        "col": 3,167// CHECK-NEXT:        "tokLen": 1168// CHECK-NEXT:       },169// CHECK-NEXT:       "end": {170// CHECK-NEXT:        "offset": {{[0-9]+}},171// CHECK-NEXT:        "col": 9,172// CHECK-NEXT:        "tokLen": 1173// CHECK-NEXT:       }174// CHECK-NEXT:      },175// CHECK-NEXT:      "type": {176// CHECK-NEXT:       "qualType": "int"177// CHECK-NEXT:      },178// CHECK-NEXT:      "valueCategory": "prvalue",179// CHECK-NEXT:      "opcode": ",",180// CHECK-NEXT:      "inner": [181// CHECK-NEXT:       {182// CHECK-NEXT:        "id": "0x{{.*}}",183// CHECK-NEXT:        "kind": "BinaryOperator",184// CHECK-NEXT:        "range": {185// CHECK-NEXT:         "begin": {186// CHECK-NEXT:          "offset": {{[0-9]+}},187// CHECK-NEXT:          "col": 3,188// CHECK-NEXT:          "tokLen": 1189// CHECK-NEXT:         },190// CHECK-NEXT:         "end": {191// CHECK-NEXT:          "offset": {{[0-9]+}},192// CHECK-NEXT:          "col": 6,193// CHECK-NEXT:          "tokLen": 1194// CHECK-NEXT:         }195// CHECK-NEXT:        },196// CHECK-NEXT:        "type": {197// CHECK-NEXT:         "qualType": "int"198// CHECK-NEXT:        },199// CHECK-NEXT:        "valueCategory": "prvalue",200// CHECK-NEXT:        "opcode": ",",201// CHECK-NEXT:        "inner": [202// CHECK-NEXT:         {203// CHECK-NEXT:          "id": "0x{{.*}}",204// CHECK-NEXT:          "kind": "IntegerLiteral",205// CHECK-NEXT:          "range": {206// CHECK-NEXT:           "begin": {207// CHECK-NEXT:            "offset": {{[0-9]+}},208// CHECK-NEXT:            "col": 3,209// CHECK-NEXT:            "tokLen": 1210// CHECK-NEXT:           },211// CHECK-NEXT:           "end": {212// CHECK-NEXT:            "offset": {{[0-9]+}},213// CHECK-NEXT:            "col": 3,214// CHECK-NEXT:            "tokLen": 1215// CHECK-NEXT:           }216// CHECK-NEXT:          },217// CHECK-NEXT:          "type": {218// CHECK-NEXT:           "qualType": "int"219// CHECK-NEXT:          },220// CHECK-NEXT:          "valueCategory": "prvalue",221// CHECK-NEXT:          "value": "1"222// CHECK-NEXT:         },223// CHECK-NEXT:         {224// CHECK-NEXT:          "id": "0x{{.*}}",225// CHECK-NEXT:          "kind": "IntegerLiteral",226// CHECK-NEXT:          "range": {227// CHECK-NEXT:           "begin": {228// CHECK-NEXT:            "offset": {{[0-9]+}},229// CHECK-NEXT:            "col": 6,230// CHECK-NEXT:            "tokLen": 1231// CHECK-NEXT:           },232// CHECK-NEXT:           "end": {233// CHECK-NEXT:            "offset": {{[0-9]+}},234// CHECK-NEXT:            "col": 6,235// CHECK-NEXT:            "tokLen": 1236// CHECK-NEXT:           }237// CHECK-NEXT:          },238// CHECK-NEXT:          "type": {239// CHECK-NEXT:           "qualType": "int"240// CHECK-NEXT:          },241// CHECK-NEXT:          "valueCategory": "prvalue",242// CHECK-NEXT:          "value": "2"243// CHECK-NEXT:         }244// CHECK-NEXT:        ]245// CHECK-NEXT:       },246// CHECK-NEXT:       {247// CHECK-NEXT:        "id": "0x{{.*}}",248// CHECK-NEXT:        "kind": "IntegerLiteral",249// CHECK-NEXT:        "range": {250// CHECK-NEXT:         "begin": {251// CHECK-NEXT:          "offset": {{[0-9]+}},252// CHECK-NEXT:          "col": 9,253// CHECK-NEXT:          "tokLen": 1254// CHECK-NEXT:         },255// CHECK-NEXT:         "end": {256// CHECK-NEXT:          "offset": {{[0-9]+}},257// CHECK-NEXT:          "col": 9,258// CHECK-NEXT:          "tokLen": 1259// CHECK-NEXT:         }260// CHECK-NEXT:        },261// CHECK-NEXT:        "type": {262// CHECK-NEXT:         "qualType": "int"263// CHECK-NEXT:        },264// CHECK-NEXT:        "valueCategory": "prvalue",265// CHECK-NEXT:        "value": "3"266// CHECK-NEXT:       }267// CHECK-NEXT:      ]268// CHECK-NEXT:     }269// CHECK-NEXT:    ]270// CHECK-NEXT:   }271// CHECK-NEXT:  ]272// CHECK-NEXT: }273 274 275// CHECK-NOT: {{^}}Dumping276// CHECK:  "kind": "FunctionDecl",277// CHECK-NEXT:  "loc": {278// CHECK-NEXT:   "offset": {{[0-9]+}},279// CHECK-NEXT:   "line": 7,280// CHECK-NEXT:   "col": 6,281// CHECK-NEXT:   "tokLen": 10282// CHECK-NEXT:  },283// CHECK-NEXT:  "range": {284// CHECK-NEXT:   "begin": {285// CHECK-NEXT:    "offset": {{[0-9]+}},286// CHECK-NEXT:    "col": 1,287// CHECK-NEXT:    "tokLen": 4288// CHECK-NEXT:   },289// CHECK-NEXT:   "end": {290// CHECK-NEXT:    "offset": {{[0-9]+}},291// CHECK-NEXT:    "line": 10,292// CHECK-NEXT:    "col": 1,293// CHECK-NEXT:    "tokLen": 1294// CHECK-NEXT:   }295// CHECK-NEXT:  },296// CHECK-NEXT:  "name": "Assignment",297// CHECK-NEXT:  "mangledName": "Assignment",298// CHECK-NEXT:  "type": {299// CHECK-NEXT:   "qualType": "void (int)"300// CHECK-NEXT:  },301// CHECK-NEXT:  "inner": [302// CHECK-NEXT:   {303// CHECK-NEXT:    "id": "0x{{.*}}",304// CHECK-NEXT:    "kind": "ParmVarDecl",305// CHECK-NEXT:    "loc": {306// CHECK-NEXT:     "offset": {{[0-9]+}},307// CHECK-NEXT:     "line": 7,308// CHECK-NEXT:     "col": 21,309// CHECK-NEXT:     "tokLen": 1310// CHECK-NEXT:    },311// CHECK-NEXT:    "range": {312// CHECK-NEXT:     "begin": {313// CHECK-NEXT:      "offset": {{[0-9]+}},314// CHECK-NEXT:      "col": 17,315// CHECK-NEXT:      "tokLen": 3316// CHECK-NEXT:     },317// CHECK-NEXT:     "end": {318// CHECK-NEXT:      "offset": {{[0-9]+}},319// CHECK-NEXT:      "col": 21,320// CHECK-NEXT:      "tokLen": 1321// CHECK-NEXT:     }322// CHECK-NEXT:    },323// CHECK-NEXT:    "isUsed": true,324// CHECK-NEXT:    "name": "a",325// CHECK-NEXT:    "type": {326// CHECK-NEXT:     "qualType": "int"327// CHECK-NEXT:    }328// CHECK-NEXT:   },329// CHECK-NEXT:   {330// CHECK-NEXT:    "id": "0x{{.*}}",331// CHECK-NEXT:    "kind": "CompoundStmt",332// CHECK-NEXT:    "range": {333// CHECK-NEXT:     "begin": {334// CHECK-NEXT:      "offset": {{[0-9]+}},335// CHECK-NEXT:      "col": 24,336// CHECK-NEXT:      "tokLen": 1337// CHECK-NEXT:     },338// CHECK-NEXT:     "end": {339// CHECK-NEXT:      "offset": {{[0-9]+}},340// CHECK-NEXT:      "line": 10,341// CHECK-NEXT:      "col": 1,342// CHECK-NEXT:      "tokLen": 1343// CHECK-NEXT:     }344// CHECK-NEXT:    },345// CHECK-NEXT:    "inner": [346// CHECK-NEXT:     {347// CHECK-NEXT:      "id": "0x{{.*}}",348// CHECK-NEXT:      "kind": "BinaryOperator",349// CHECK-NEXT:      "range": {350// CHECK-NEXT:       "begin": {351// CHECK-NEXT:        "offset": {{[0-9]+}},352// CHECK-NEXT:        "line": 8,353// CHECK-NEXT:        "col": 3,354// CHECK-NEXT:        "tokLen": 1355// CHECK-NEXT:       },356// CHECK-NEXT:       "end": {357// CHECK-NEXT:        "offset": {{[0-9]+}},358// CHECK-NEXT:        "col": 7,359// CHECK-NEXT:        "tokLen": 2360// CHECK-NEXT:       }361// CHECK-NEXT:      },362// CHECK-NEXT:      "type": {363// CHECK-NEXT:       "qualType": "int"364// CHECK-NEXT:      },365// CHECK-NEXT:      "valueCategory": "prvalue",366// CHECK-NEXT:      "opcode": "=",367// CHECK-NEXT:      "inner": [368// CHECK-NEXT:       {369// CHECK-NEXT:        "id": "0x{{.*}}",370// CHECK-NEXT:        "kind": "DeclRefExpr",371// CHECK-NEXT:        "range": {372// CHECK-NEXT:         "begin": {373// CHECK-NEXT:          "offset": {{[0-9]+}},374// CHECK-NEXT:          "col": 3,375// CHECK-NEXT:          "tokLen": 1376// CHECK-NEXT:         },377// CHECK-NEXT:         "end": {378// CHECK-NEXT:          "offset": {{[0-9]+}},379// CHECK-NEXT:          "col": 3,380// CHECK-NEXT:          "tokLen": 1381// CHECK-NEXT:         }382// CHECK-NEXT:        },383// CHECK-NEXT:        "type": {384// CHECK-NEXT:         "qualType": "int"385// CHECK-NEXT:        },386// CHECK-NEXT:        "valueCategory": "lvalue",387// CHECK-NEXT:        "referencedDecl": {388// CHECK-NEXT:         "id": "0x{{.*}}",389// CHECK-NEXT:         "kind": "ParmVarDecl",390// CHECK-NEXT:         "name": "a",391// CHECK-NEXT:         "type": {392// CHECK-NEXT:          "qualType": "int"393// CHECK-NEXT:         }394// CHECK-NEXT:        }395// CHECK-NEXT:       },396// CHECK-NEXT:       {397// CHECK-NEXT:        "id": "0x{{.*}}",398// CHECK-NEXT:        "kind": "IntegerLiteral",399// CHECK-NEXT:        "range": {400// CHECK-NEXT:         "begin": {401// CHECK-NEXT:          "offset": {{[0-9]+}},402// CHECK-NEXT:          "col": 7,403// CHECK-NEXT:          "tokLen": 2404// CHECK-NEXT:         },405// CHECK-NEXT:         "end": {406// CHECK-NEXT:          "offset": {{[0-9]+}},407// CHECK-NEXT:          "col": 7,408// CHECK-NEXT:          "tokLen": 2409// CHECK-NEXT:         }410// CHECK-NEXT:        },411// CHECK-NEXT:        "type": {412// CHECK-NEXT:         "qualType": "int"413// CHECK-NEXT:        },414// CHECK-NEXT:        "valueCategory": "prvalue",415// CHECK-NEXT:        "value": "12"416// CHECK-NEXT:       }417// CHECK-NEXT:      ]418// CHECK-NEXT:     },419// CHECK-NEXT:     {420// CHECK-NEXT:      "id": "0x{{.*}}",421// CHECK-NEXT:      "kind": "CompoundAssignOperator",422// CHECK-NEXT:      "range": {423// CHECK-NEXT:       "begin": {424// CHECK-NEXT:        "offset": {{[0-9]+}},425// CHECK-NEXT:        "line": 9,426// CHECK-NEXT:        "col": 3,427// CHECK-NEXT:        "tokLen": 1428// CHECK-NEXT:       },429// CHECK-NEXT:       "end": {430// CHECK-NEXT:        "offset": {{[0-9]+}},431// CHECK-NEXT:        "col": 8,432// CHECK-NEXT:        "tokLen": 1433// CHECK-NEXT:       }434// CHECK-NEXT:      },435// CHECK-NEXT:      "type": {436// CHECK-NEXT:       "qualType": "int"437// CHECK-NEXT:      },438// CHECK-NEXT:      "valueCategory": "prvalue",439// CHECK-NEXT:      "opcode": "+=",440// CHECK-NEXT:      "computeLHSType": {441// CHECK-NEXT:       "qualType": "int"442// CHECK-NEXT:      },443// CHECK-NEXT:      "computeResultType": {444// CHECK-NEXT:       "qualType": "int"445// CHECK-NEXT:      },446// CHECK-NEXT:      "inner": [447// CHECK-NEXT:       {448// CHECK-NEXT:        "id": "0x{{.*}}",449// CHECK-NEXT:        "kind": "DeclRefExpr",450// CHECK-NEXT:        "range": {451// CHECK-NEXT:         "begin": {452// CHECK-NEXT:          "offset": {{[0-9]+}},453// CHECK-NEXT:          "col": 3,454// CHECK-NEXT:          "tokLen": 1455// CHECK-NEXT:         },456// CHECK-NEXT:         "end": {457// CHECK-NEXT:          "offset": {{[0-9]+}},458// CHECK-NEXT:          "col": 3,459// CHECK-NEXT:          "tokLen": 1460// CHECK-NEXT:         }461// CHECK-NEXT:        },462// CHECK-NEXT:        "type": {463// CHECK-NEXT:         "qualType": "int"464// CHECK-NEXT:        },465// CHECK-NEXT:        "valueCategory": "lvalue",466// CHECK-NEXT:        "referencedDecl": {467// CHECK-NEXT:         "id": "0x{{.*}}",468// CHECK-NEXT:         "kind": "ParmVarDecl",469// CHECK-NEXT:         "name": "a",470// CHECK-NEXT:         "type": {471// CHECK-NEXT:          "qualType": "int"472// CHECK-NEXT:         }473// CHECK-NEXT:        }474// CHECK-NEXT:       },475// CHECK-NEXT:       {476// CHECK-NEXT:        "id": "0x{{.*}}",477// CHECK-NEXT:        "kind": "ImplicitCastExpr",478// CHECK-NEXT:        "range": {479// CHECK-NEXT:         "begin": {480// CHECK-NEXT:          "offset": {{[0-9]+}},481// CHECK-NEXT:          "col": 8,482// CHECK-NEXT:          "tokLen": 1483// CHECK-NEXT:         },484// CHECK-NEXT:         "end": {485// CHECK-NEXT:          "offset": {{[0-9]+}},486// CHECK-NEXT:          "col": 8,487// CHECK-NEXT:          "tokLen": 1488// CHECK-NEXT:         }489// CHECK-NEXT:        },490// CHECK-NEXT:        "type": {491// CHECK-NEXT:         "qualType": "int"492// CHECK-NEXT:        },493// CHECK-NEXT:        "valueCategory": "prvalue",494// CHECK-NEXT:        "castKind": "LValueToRValue",495// CHECK-NEXT:        "inner": [496// CHECK-NEXT:         {497// CHECK-NEXT:          "id": "0x{{.*}}",498// CHECK-NEXT:          "kind": "DeclRefExpr",499// CHECK-NEXT:          "range": {500// CHECK-NEXT:           "begin": {501// CHECK-NEXT:            "offset": {{[0-9]+}},502// CHECK-NEXT:            "col": 8,503// CHECK-NEXT:            "tokLen": 1504// CHECK-NEXT:           },505// CHECK-NEXT:           "end": {506// CHECK-NEXT:            "offset": {{[0-9]+}},507// CHECK-NEXT:            "col": 8,508// CHECK-NEXT:            "tokLen": 1509// CHECK-NEXT:           }510// CHECK-NEXT:          },511// CHECK-NEXT:          "type": {512// CHECK-NEXT:           "qualType": "int"513// CHECK-NEXT:          },514// CHECK-NEXT:          "valueCategory": "lvalue",515// CHECK-NEXT:          "referencedDecl": {516// CHECK-NEXT:           "id": "0x{{.*}}",517// CHECK-NEXT:           "kind": "ParmVarDecl",518// CHECK-NEXT:           "name": "a",519// CHECK-NEXT:           "type": {520// CHECK-NEXT:            "qualType": "int"521// CHECK-NEXT:           }522// CHECK-NEXT:          }523// CHECK-NEXT:         }524// CHECK-NEXT:        ]525// CHECK-NEXT:       }526// CHECK-NEXT:      ]527// CHECK-NEXT:     }528// CHECK-NEXT:    ]529// CHECK-NEXT:   }530// CHECK-NEXT:  ]531// CHECK-NEXT: }532 533 534// CHECK-NOT: {{^}}Dumping535// CHECK:  "kind": "FunctionDecl",536// CHECK-NEXT:  "loc": {537// CHECK-NEXT:   "offset": {{[0-9]+}},538// CHECK-NEXT:   "line": 12,539// CHECK-NEXT:   "col": 6,540// CHECK-NEXT:   "tokLen": 12541// CHECK-NEXT:  },542// CHECK-NEXT:  "range": {543// CHECK-NEXT:   "begin": {544// CHECK-NEXT:    "offset": {{[0-9]+}},545// CHECK-NEXT:    "col": 1,546// CHECK-NEXT:    "tokLen": 4547// CHECK-NEXT:   },548// CHECK-NEXT:   "end": {549// CHECK-NEXT:    "offset": {{[0-9]+}},550// CHECK-NEXT:    "line": 15,551// CHECK-NEXT:    "col": 1,552// CHECK-NEXT:    "tokLen": 1553// CHECK-NEXT:   }554// CHECK-NEXT:  },555// CHECK-NEXT:  "name": "Conditionals",556// CHECK-NEXT:  "mangledName": "Conditionals",557// CHECK-NEXT:  "type": {558// CHECK-NEXT:   "qualType": "void (int)"559// CHECK-NEXT:  },560// CHECK-NEXT:  "inner": [561// CHECK-NEXT:   {562// CHECK-NEXT:    "id": "0x{{.*}}",563// CHECK-NEXT:    "kind": "ParmVarDecl",564// CHECK-NEXT:    "loc": {565// CHECK-NEXT:     "offset": {{[0-9]+}},566// CHECK-NEXT:     "line": 12,567// CHECK-NEXT:     "col": 23,568// CHECK-NEXT:     "tokLen": 1569// CHECK-NEXT:    },570// CHECK-NEXT:    "range": {571// CHECK-NEXT:     "begin": {572// CHECK-NEXT:      "offset": {{[0-9]+}},573// CHECK-NEXT:      "col": 19,574// CHECK-NEXT:      "tokLen": 3575// CHECK-NEXT:     },576// CHECK-NEXT:     "end": {577// CHECK-NEXT:      "offset": {{[0-9]+}},578// CHECK-NEXT:      "col": 23,579// CHECK-NEXT:      "tokLen": 1580// CHECK-NEXT:     }581// CHECK-NEXT:    },582// CHECK-NEXT:    "isUsed": true,583// CHECK-NEXT:    "name": "a",584// CHECK-NEXT:    "type": {585// CHECK-NEXT:     "qualType": "int"586// CHECK-NEXT:    }587// CHECK-NEXT:   },588// CHECK-NEXT:   {589// CHECK-NEXT:    "id": "0x{{.*}}",590// CHECK-NEXT:    "kind": "CompoundStmt",591// CHECK-NEXT:    "range": {592// CHECK-NEXT:     "begin": {593// CHECK-NEXT:      "offset": {{[0-9]+}},594// CHECK-NEXT:      "col": 26,595// CHECK-NEXT:      "tokLen": 1596// CHECK-NEXT:     },597// CHECK-NEXT:     "end": {598// CHECK-NEXT:      "offset": {{[0-9]+}},599// CHECK-NEXT:      "line": 15,600// CHECK-NEXT:      "col": 1,601// CHECK-NEXT:      "tokLen": 1602// CHECK-NEXT:     }603// CHECK-NEXT:    },604// CHECK-NEXT:    "inner": [605// CHECK-NEXT:     {606// CHECK-NEXT:      "id": "0x{{.*}}",607// CHECK-NEXT:      "kind": "ConditionalOperator",608// CHECK-NEXT:      "range": {609// CHECK-NEXT:       "begin": {610// CHECK-NEXT:        "offset": {{[0-9]+}},611// CHECK-NEXT:        "line": 13,612// CHECK-NEXT:        "col": 3,613// CHECK-NEXT:        "tokLen": 1614// CHECK-NEXT:       },615// CHECK-NEXT:       "end": {616// CHECK-NEXT:        "offset": {{[0-9]+}},617// CHECK-NEXT:        "col": 11,618// CHECK-NEXT:        "tokLen": 1619// CHECK-NEXT:       }620// CHECK-NEXT:      },621// CHECK-NEXT:      "type": {622// CHECK-NEXT:       "qualType": "int"623// CHECK-NEXT:      },624// CHECK-NEXT:      "valueCategory": "prvalue",625// CHECK-NEXT:      "inner": [626// CHECK-NEXT:       {627// CHECK-NEXT:        "id": "0x{{.*}}",628// CHECK-NEXT:        "kind": "ImplicitCastExpr",629// CHECK-NEXT:        "range": {630// CHECK-NEXT:         "begin": {631// CHECK-NEXT:          "offset": {{[0-9]+}},632// CHECK-NEXT:          "col": 3,633// CHECK-NEXT:          "tokLen": 1634// CHECK-NEXT:         },635// CHECK-NEXT:         "end": {636// CHECK-NEXT:          "offset": {{[0-9]+}},637// CHECK-NEXT:          "col": 3,638// CHECK-NEXT:          "tokLen": 1639// CHECK-NEXT:         }640// CHECK-NEXT:        },641// CHECK-NEXT:        "type": {642// CHECK-NEXT:         "qualType": "int"643// CHECK-NEXT:        },644// CHECK-NEXT:        "valueCategory": "prvalue",645// CHECK-NEXT:        "castKind": "LValueToRValue",646// CHECK-NEXT:        "inner": [647// CHECK-NEXT:         {648// CHECK-NEXT:          "id": "0x{{.*}}",649// CHECK-NEXT:          "kind": "DeclRefExpr",650// CHECK-NEXT:          "range": {651// CHECK-NEXT:           "begin": {652// CHECK-NEXT:            "offset": {{[0-9]+}},653// CHECK-NEXT:            "col": 3,654// CHECK-NEXT:            "tokLen": 1655// CHECK-NEXT:           },656// CHECK-NEXT:           "end": {657// CHECK-NEXT:            "offset": {{[0-9]+}},658// CHECK-NEXT:            "col": 3,659// CHECK-NEXT:            "tokLen": 1660// CHECK-NEXT:           }661// CHECK-NEXT:          },662// CHECK-NEXT:          "type": {663// CHECK-NEXT:           "qualType": "int"664// CHECK-NEXT:          },665// CHECK-NEXT:          "valueCategory": "lvalue",666// CHECK-NEXT:          "referencedDecl": {667// CHECK-NEXT:           "id": "0x{{.*}}",668// CHECK-NEXT:           "kind": "ParmVarDecl",669// CHECK-NEXT:           "name": "a",670// CHECK-NEXT:           "type": {671// CHECK-NEXT:            "qualType": "int"672// CHECK-NEXT:           }673// CHECK-NEXT:          }674// CHECK-NEXT:         }675// CHECK-NEXT:        ]676// CHECK-NEXT:       },677// CHECK-NEXT:       {678// CHECK-NEXT:        "id": "0x{{.*}}",679// CHECK-NEXT:        "kind": "IntegerLiteral",680// CHECK-NEXT:        "range": {681// CHECK-NEXT:         "begin": {682// CHECK-NEXT:          "offset": {{[0-9]+}},683// CHECK-NEXT:          "col": 7,684// CHECK-NEXT:          "tokLen": 1685// CHECK-NEXT:         },686// CHECK-NEXT:         "end": {687// CHECK-NEXT:          "offset": {{[0-9]+}},688// CHECK-NEXT:          "col": 7,689// CHECK-NEXT:          "tokLen": 1690// CHECK-NEXT:         }691// CHECK-NEXT:        },692// CHECK-NEXT:        "type": {693// CHECK-NEXT:         "qualType": "int"694// CHECK-NEXT:        },695// CHECK-NEXT:        "valueCategory": "prvalue",696// CHECK-NEXT:        "value": "0"697// CHECK-NEXT:       },698// CHECK-NEXT:       {699// CHECK-NEXT:        "id": "0x{{.*}}",700// CHECK-NEXT:        "kind": "IntegerLiteral",701// CHECK-NEXT:        "range": {702// CHECK-NEXT:         "begin": {703// CHECK-NEXT:          "offset": {{[0-9]+}},704// CHECK-NEXT:          "col": 11,705// CHECK-NEXT:          "tokLen": 1706// CHECK-NEXT:         },707// CHECK-NEXT:         "end": {708// CHECK-NEXT:          "offset": {{[0-9]+}},709// CHECK-NEXT:          "col": 11,710// CHECK-NEXT:          "tokLen": 1711// CHECK-NEXT:         }712// CHECK-NEXT:        },713// CHECK-NEXT:        "type": {714// CHECK-NEXT:         "qualType": "int"715// CHECK-NEXT:        },716// CHECK-NEXT:        "valueCategory": "prvalue",717// CHECK-NEXT:        "value": "1"718// CHECK-NEXT:       }719// CHECK-NEXT:      ]720// CHECK-NEXT:     },721// CHECK-NEXT:     {722// CHECK-NEXT:      "id": "0x{{.*}}",723// CHECK-NEXT:      "kind": "BinaryConditionalOperator",724// CHECK-NEXT:      "range": {725// CHECK-NEXT:       "begin": {726// CHECK-NEXT:        "offset": {{[0-9]+}},727// CHECK-NEXT:        "line": 14,728// CHECK-NEXT:        "col": 3,729// CHECK-NEXT:        "tokLen": 1730// CHECK-NEXT:       },731// CHECK-NEXT:       "end": {732// CHECK-NEXT:        "offset": {{[0-9]+}},733// CHECK-NEXT:        "col": 8,734// CHECK-NEXT:        "tokLen": 1735// CHECK-NEXT:       }736// CHECK-NEXT:      },737// CHECK-NEXT:      "type": {738// CHECK-NEXT:       "qualType": "int"739// CHECK-NEXT:      },740// CHECK-NEXT:      "valueCategory": "prvalue",741// CHECK-NEXT:      "inner": [742// CHECK-NEXT:       {743// CHECK-NEXT:        "id": "0x{{.*}}",744// CHECK-NEXT:        "kind": "ImplicitCastExpr",745// CHECK-NEXT:        "range": {746// CHECK-NEXT:         "begin": {747// CHECK-NEXT:          "offset": {{[0-9]+}},748// CHECK-NEXT:          "col": 3,749// CHECK-NEXT:          "tokLen": 1750// CHECK-NEXT:         },751// CHECK-NEXT:         "end": {752// CHECK-NEXT:          "offset": {{[0-9]+}},753// CHECK-NEXT:          "col": 3,754// CHECK-NEXT:          "tokLen": 1755// CHECK-NEXT:         }756// CHECK-NEXT:        },757// CHECK-NEXT:        "type": {758// CHECK-NEXT:         "qualType": "int"759// CHECK-NEXT:        },760// CHECK-NEXT:        "valueCategory": "prvalue",761// CHECK-NEXT:        "castKind": "LValueToRValue",762// CHECK-NEXT:        "inner": [763// CHECK-NEXT:         {764// CHECK-NEXT:          "id": "0x{{.*}}",765// CHECK-NEXT:          "kind": "DeclRefExpr",766// CHECK-NEXT:          "range": {767// CHECK-NEXT:           "begin": {768// CHECK-NEXT:            "offset": {{[0-9]+}},769// CHECK-NEXT:            "col": 3,770// CHECK-NEXT:            "tokLen": 1771// CHECK-NEXT:           },772// CHECK-NEXT:           "end": {773// CHECK-NEXT:            "offset": {{[0-9]+}},774// CHECK-NEXT:            "col": 3,775// CHECK-NEXT:            "tokLen": 1776// CHECK-NEXT:           }777// CHECK-NEXT:          },778// CHECK-NEXT:          "type": {779// CHECK-NEXT:           "qualType": "int"780// CHECK-NEXT:          },781// CHECK-NEXT:          "valueCategory": "lvalue",782// CHECK-NEXT:          "referencedDecl": {783// CHECK-NEXT:           "id": "0x{{.*}}",784// CHECK-NEXT:           "kind": "ParmVarDecl",785// CHECK-NEXT:           "name": "a",786// CHECK-NEXT:           "type": {787// CHECK-NEXT:            "qualType": "int"788// CHECK-NEXT:           }789// CHECK-NEXT:          }790// CHECK-NEXT:         }791// CHECK-NEXT:        ]792// CHECK-NEXT:       },793// CHECK-NEXT:       {794// CHECK-NEXT:        "id": "0x{{.*}}",795// CHECK-NEXT:        "kind": "OpaqueValueExpr",796// CHECK-NEXT:        "range": {797// CHECK-NEXT:         "begin": {798// CHECK-NEXT:          "offset": {{[0-9]+}},799// CHECK-NEXT:          "col": 3,800// CHECK-NEXT:          "tokLen": 1801// CHECK-NEXT:         },802// CHECK-NEXT:         "end": {803// CHECK-NEXT:          "offset": {{[0-9]+}},804// CHECK-NEXT:          "col": 3,805// CHECK-NEXT:          "tokLen": 1806// CHECK-NEXT:         }807// CHECK-NEXT:        },808// CHECK-NEXT:        "type": {809// CHECK-NEXT:         "qualType": "int"810// CHECK-NEXT:        },811// CHECK-NEXT:        "valueCategory": "prvalue",812// CHECK-NEXT:        "inner": [813// CHECK-NEXT:         {814// CHECK-NEXT:          "id": "0x{{.*}}",815// CHECK-NEXT:          "kind": "ImplicitCastExpr",816// CHECK-NEXT:          "range": {817// CHECK-NEXT:           "begin": {818// CHECK-NEXT:            "offset": {{[0-9]+}},819// CHECK-NEXT:            "col": 3,820// CHECK-NEXT:            "tokLen": 1821// CHECK-NEXT:           },822// CHECK-NEXT:           "end": {823// CHECK-NEXT:            "offset": {{[0-9]+}},824// CHECK-NEXT:            "col": 3,825// CHECK-NEXT:            "tokLen": 1826// CHECK-NEXT:           }827// CHECK-NEXT:          },828// CHECK-NEXT:          "type": {829// CHECK-NEXT:           "qualType": "int"830// CHECK-NEXT:          },831// CHECK-NEXT:          "valueCategory": "prvalue",832// CHECK-NEXT:          "castKind": "LValueToRValue",833// CHECK-NEXT:          "inner": [834// CHECK-NEXT:           {835// CHECK-NEXT:            "id": "0x{{.*}}",836// CHECK-NEXT:            "kind": "DeclRefExpr",837// CHECK-NEXT:            "range": {838// CHECK-NEXT:             "begin": {839// CHECK-NEXT:              "offset": {{[0-9]+}},840// CHECK-NEXT:              "col": 3,841// CHECK-NEXT:              "tokLen": 1842// CHECK-NEXT:             },843// CHECK-NEXT:             "end": {844// CHECK-NEXT:              "offset": {{[0-9]+}},845// CHECK-NEXT:              "col": 3,846// CHECK-NEXT:              "tokLen": 1847// CHECK-NEXT:             }848// CHECK-NEXT:            },849// CHECK-NEXT:            "type": {850// CHECK-NEXT:             "qualType": "int"851// CHECK-NEXT:            },852// CHECK-NEXT:            "valueCategory": "lvalue",853// CHECK-NEXT:            "referencedDecl": {854// CHECK-NEXT:             "id": "0x{{.*}}",855// CHECK-NEXT:             "kind": "ParmVarDecl",856// CHECK-NEXT:             "name": "a",857// CHECK-NEXT:             "type": {858// CHECK-NEXT:              "qualType": "int"859// CHECK-NEXT:             }860// CHECK-NEXT:            }861// CHECK-NEXT:           }862// CHECK-NEXT:          ]863// CHECK-NEXT:         }864// CHECK-NEXT:        ]865// CHECK-NEXT:       },866// CHECK-NEXT:       {867// CHECK-NEXT:        "id": "0x{{.*}}",868// CHECK-NEXT:        "kind": "OpaqueValueExpr",869// CHECK-NEXT:        "range": {870// CHECK-NEXT:         "begin": {871// CHECK-NEXT:          "offset": {{[0-9]+}},872// CHECK-NEXT:          "col": 3,873// CHECK-NEXT:          "tokLen": 1874// CHECK-NEXT:         },875// CHECK-NEXT:         "end": {876// CHECK-NEXT:          "offset": {{[0-9]+}},877// CHECK-NEXT:          "col": 3,878// CHECK-NEXT:          "tokLen": 1879// CHECK-NEXT:         }880// CHECK-NEXT:        },881// CHECK-NEXT:        "type": {882// CHECK-NEXT:         "qualType": "int"883// CHECK-NEXT:        },884// CHECK-NEXT:        "valueCategory": "prvalue",885// CHECK-NEXT:        "inner": [886// CHECK-NEXT:         {887// CHECK-NEXT:          "id": "0x{{.*}}",888// CHECK-NEXT:          "kind": "ImplicitCastExpr",889// CHECK-NEXT:          "range": {890// CHECK-NEXT:           "begin": {891// CHECK-NEXT:            "offset": {{[0-9]+}},892// CHECK-NEXT:            "col": 3,893// CHECK-NEXT:            "tokLen": 1894// CHECK-NEXT:           },895// CHECK-NEXT:           "end": {896// CHECK-NEXT:            "offset": {{[0-9]+}},897// CHECK-NEXT:            "col": 3,898// CHECK-NEXT:            "tokLen": 1899// CHECK-NEXT:           }900// CHECK-NEXT:          },901// CHECK-NEXT:          "type": {902// CHECK-NEXT:           "qualType": "int"903// CHECK-NEXT:          },904// CHECK-NEXT:          "valueCategory": "prvalue",905// CHECK-NEXT:          "castKind": "LValueToRValue",906// CHECK-NEXT:          "inner": [907// CHECK-NEXT:           {908// CHECK-NEXT:            "id": "0x{{.*}}",909// CHECK-NEXT:            "kind": "DeclRefExpr",910// CHECK-NEXT:            "range": {911// CHECK-NEXT:             "begin": {912// CHECK-NEXT:              "offset": {{[0-9]+}},913// CHECK-NEXT:              "col": 3,914// CHECK-NEXT:              "tokLen": 1915// CHECK-NEXT:             },916// CHECK-NEXT:             "end": {917// CHECK-NEXT:              "offset": {{[0-9]+}},918// CHECK-NEXT:              "col": 3,919// CHECK-NEXT:              "tokLen": 1920// CHECK-NEXT:             }921// CHECK-NEXT:            },922// CHECK-NEXT:            "type": {923// CHECK-NEXT:             "qualType": "int"924// CHECK-NEXT:            },925// CHECK-NEXT:            "valueCategory": "lvalue",926// CHECK-NEXT:            "referencedDecl": {927// CHECK-NEXT:             "id": "0x{{.*}}",928// CHECK-NEXT:             "kind": "ParmVarDecl",929// CHECK-NEXT:             "name": "a",930// CHECK-NEXT:             "type": {931// CHECK-NEXT:              "qualType": "int"932// CHECK-NEXT:             }933// CHECK-NEXT:            }934// CHECK-NEXT:           }935// CHECK-NEXT:          ]936// CHECK-NEXT:         }937// CHECK-NEXT:        ]938// CHECK-NEXT:       },939// CHECK-NEXT:       {940// CHECK-NEXT:        "id": "0x{{.*}}",941// CHECK-NEXT:        "kind": "IntegerLiteral",942// CHECK-NEXT:        "range": {943// CHECK-NEXT:         "begin": {944// CHECK-NEXT:          "offset": {{[0-9]+}},945// CHECK-NEXT:          "col": 8,946// CHECK-NEXT:          "tokLen": 1947// CHECK-NEXT:         },948// CHECK-NEXT:         "end": {949// CHECK-NEXT:          "offset": {{[0-9]+}},950// CHECK-NEXT:          "col": 8,951// CHECK-NEXT:          "tokLen": 1952// CHECK-NEXT:         }953// CHECK-NEXT:        },954// CHECK-NEXT:        "type": {955// CHECK-NEXT:         "qualType": "int"956// CHECK-NEXT:        },957// CHECK-NEXT:        "valueCategory": "prvalue",958// CHECK-NEXT:        "value": "0"959// CHECK-NEXT:       }960// CHECK-NEXT:      ]961// CHECK-NEXT:     }962// CHECK-NEXT:    ]963// CHECK-NEXT:   }964// CHECK-NEXT:  ]965// CHECK-NEXT: }966 967 968// CHECK-NOT: {{^}}Dumping969// CHECK:  "kind": "FunctionDecl",970// CHECK-NEXT:  "loc": {971// CHECK-NEXT:   "offset": {{[0-9]+}},972// CHECK-NEXT:   "line": 17,973// CHECK-NEXT:   "col": 6,974// CHECK-NEXT:   "tokLen": 15975// CHECK-NEXT:  },976// CHECK-NEXT:  "range": {977// CHECK-NEXT:   "begin": {978// CHECK-NEXT:    "offset": {{[0-9]+}},979// CHECK-NEXT:    "col": 1,980// CHECK-NEXT:    "tokLen": 4981// CHECK-NEXT:   },982// CHECK-NEXT:   "end": {983// CHECK-NEXT:    "offset": {{[0-9]+}},984// CHECK-NEXT:    "line": 49,985// CHECK-NEXT:    "col": 1,986// CHECK-NEXT:    "tokLen": 1987// CHECK-NEXT:   }988// CHECK-NEXT:  },989// CHECK-NEXT:  "name": "BinaryOperators",990// CHECK-NEXT:  "mangledName": "BinaryOperators",991// CHECK-NEXT:  "type": {992// CHECK-NEXT:   "qualType": "void (int, int)"993// CHECK-NEXT:  },994// CHECK-NEXT:  "inner": [995// CHECK-NEXT:   {996// CHECK-NEXT:    "id": "0x{{.*}}",997// CHECK-NEXT:    "kind": "ParmVarDecl",998// CHECK-NEXT:    "loc": {999// CHECK-NEXT:     "offset": {{[0-9]+}},1000// CHECK-NEXT:     "line": 17,1001// CHECK-NEXT:     "col": 26,1002// CHECK-NEXT:     "tokLen": 11003// CHECK-NEXT:    },1004// CHECK-NEXT:    "range": {1005// CHECK-NEXT:     "begin": {1006// CHECK-NEXT:      "offset": {{[0-9]+}},1007// CHECK-NEXT:      "col": 22,1008// CHECK-NEXT:      "tokLen": 31009// CHECK-NEXT:     },1010// CHECK-NEXT:     "end": {1011// CHECK-NEXT:      "offset": {{[0-9]+}},1012// CHECK-NEXT:      "col": 26,1013// CHECK-NEXT:      "tokLen": 11014// CHECK-NEXT:     }1015// CHECK-NEXT:    },1016// CHECK-NEXT:    "isUsed": true,1017// CHECK-NEXT:    "name": "a",1018// CHECK-NEXT:    "type": {1019// CHECK-NEXT:     "qualType": "int"1020// CHECK-NEXT:    }1021// CHECK-NEXT:   },1022// CHECK-NEXT:   {1023// CHECK-NEXT:    "id": "0x{{.*}}",1024// CHECK-NEXT:    "kind": "ParmVarDecl",1025// CHECK-NEXT:    "loc": {1026// CHECK-NEXT:     "offset": {{[0-9]+}},1027// CHECK-NEXT:     "col": 33,1028// CHECK-NEXT:     "tokLen": 11029// CHECK-NEXT:    },1030// CHECK-NEXT:    "range": {1031// CHECK-NEXT:     "begin": {1032// CHECK-NEXT:      "offset": {{[0-9]+}},1033// CHECK-NEXT:      "col": 29,1034// CHECK-NEXT:      "tokLen": 31035// CHECK-NEXT:     },1036// CHECK-NEXT:     "end": {1037// CHECK-NEXT:      "offset": {{[0-9]+}},1038// CHECK-NEXT:      "col": 33,1039// CHECK-NEXT:      "tokLen": 11040// CHECK-NEXT:     }1041// CHECK-NEXT:    },1042// CHECK-NEXT:    "isUsed": true,1043// CHECK-NEXT:    "name": "b",1044// CHECK-NEXT:    "type": {1045// CHECK-NEXT:     "qualType": "int"1046// CHECK-NEXT:    }1047// CHECK-NEXT:   },1048// CHECK-NEXT:   {1049// CHECK-NEXT:    "id": "0x{{.*}}",1050// CHECK-NEXT:    "kind": "CompoundStmt",1051// CHECK-NEXT:    "range": {1052// CHECK-NEXT:     "begin": {1053// CHECK-NEXT:      "offset": {{[0-9]+}},1054// CHECK-NEXT:      "col": 36,1055// CHECK-NEXT:      "tokLen": 11056// CHECK-NEXT:     },1057// CHECK-NEXT:     "end": {1058// CHECK-NEXT:      "offset": {{[0-9]+}},1059// CHECK-NEXT:      "line": 49,1060// CHECK-NEXT:      "col": 1,1061// CHECK-NEXT:      "tokLen": 11062// CHECK-NEXT:     }1063// CHECK-NEXT:    },1064// CHECK-NEXT:    "inner": [1065// CHECK-NEXT:     {1066// CHECK-NEXT:      "id": "0x{{.*}}",1067// CHECK-NEXT:      "kind": "BinaryOperator",1068// CHECK-NEXT:      "range": {1069// CHECK-NEXT:       "begin": {1070// CHECK-NEXT:        "offset": {{[0-9]+}},1071// CHECK-NEXT:        "line": 19,1072// CHECK-NEXT:        "col": 3,1073// CHECK-NEXT:        "tokLen": 11074// CHECK-NEXT:       },1075// CHECK-NEXT:       "end": {1076// CHECK-NEXT:        "offset": {{[0-9]+}},1077// CHECK-NEXT:        "col": 8,1078// CHECK-NEXT:        "tokLen": 11079// CHECK-NEXT:       }1080// CHECK-NEXT:      },1081// CHECK-NEXT:      "type": {1082// CHECK-NEXT:       "qualType": "int"1083// CHECK-NEXT:      },1084// CHECK-NEXT:      "valueCategory": "prvalue",1085// CHECK-NEXT:      "opcode": "||",1086// CHECK-NEXT:      "inner": [1087// CHECK-NEXT:       {1088// CHECK-NEXT:        "id": "0x{{.*}}",1089// CHECK-NEXT:        "kind": "ImplicitCastExpr",1090// CHECK-NEXT:        "range": {1091// CHECK-NEXT:         "begin": {1092// CHECK-NEXT:          "offset": {{[0-9]+}},1093// CHECK-NEXT:          "col": 3,1094// CHECK-NEXT:          "tokLen": 11095// CHECK-NEXT:         },1096// CHECK-NEXT:         "end": {1097// CHECK-NEXT:          "offset": {{[0-9]+}},1098// CHECK-NEXT:          "col": 3,1099// CHECK-NEXT:          "tokLen": 11100// CHECK-NEXT:         }1101// CHECK-NEXT:        },1102// CHECK-NEXT:        "type": {1103// CHECK-NEXT:         "qualType": "int"1104// CHECK-NEXT:        },1105// CHECK-NEXT:        "valueCategory": "prvalue",1106// CHECK-NEXT:        "castKind": "LValueToRValue",1107// CHECK-NEXT:        "inner": [1108// CHECK-NEXT:         {1109// CHECK-NEXT:          "id": "0x{{.*}}",1110// CHECK-NEXT:          "kind": "DeclRefExpr",1111// CHECK-NEXT:          "range": {1112// CHECK-NEXT:           "begin": {1113// CHECK-NEXT:            "offset": {{[0-9]+}},1114// CHECK-NEXT:            "col": 3,1115// CHECK-NEXT:            "tokLen": 11116// CHECK-NEXT:           },1117// CHECK-NEXT:           "end": {1118// CHECK-NEXT:            "offset": {{[0-9]+}},1119// CHECK-NEXT:            "col": 3,1120// CHECK-NEXT:            "tokLen": 11121// CHECK-NEXT:           }1122// CHECK-NEXT:          },1123// CHECK-NEXT:          "type": {1124// CHECK-NEXT:           "qualType": "int"1125// CHECK-NEXT:          },1126// CHECK-NEXT:          "valueCategory": "lvalue",1127// CHECK-NEXT:          "referencedDecl": {1128// CHECK-NEXT:           "id": "0x{{.*}}",1129// CHECK-NEXT:           "kind": "ParmVarDecl",1130// CHECK-NEXT:           "name": "a",1131// CHECK-NEXT:           "type": {1132// CHECK-NEXT:            "qualType": "int"1133// CHECK-NEXT:           }1134// CHECK-NEXT:          }1135// CHECK-NEXT:         }1136// CHECK-NEXT:        ]1137// CHECK-NEXT:       },1138// CHECK-NEXT:       {1139// CHECK-NEXT:        "id": "0x{{.*}}",1140// CHECK-NEXT:        "kind": "ImplicitCastExpr",1141// CHECK-NEXT:        "range": {1142// CHECK-NEXT:         "begin": {1143// CHECK-NEXT:          "offset": {{[0-9]+}},1144// CHECK-NEXT:          "col": 8,1145// CHECK-NEXT:          "tokLen": 11146// CHECK-NEXT:         },1147// CHECK-NEXT:         "end": {1148// CHECK-NEXT:          "offset": {{[0-9]+}},1149// CHECK-NEXT:          "col": 8,1150// CHECK-NEXT:          "tokLen": 11151// CHECK-NEXT:         }1152// CHECK-NEXT:        },1153// CHECK-NEXT:        "type": {1154// CHECK-NEXT:         "qualType": "int"1155// CHECK-NEXT:        },1156// CHECK-NEXT:        "valueCategory": "prvalue",1157// CHECK-NEXT:        "castKind": "LValueToRValue",1158// CHECK-NEXT:        "inner": [1159// CHECK-NEXT:         {1160// CHECK-NEXT:          "id": "0x{{.*}}",1161// CHECK-NEXT:          "kind": "DeclRefExpr",1162// CHECK-NEXT:          "range": {1163// CHECK-NEXT:           "begin": {1164// CHECK-NEXT:            "offset": {{[0-9]+}},1165// CHECK-NEXT:            "col": 8,1166// CHECK-NEXT:            "tokLen": 11167// CHECK-NEXT:           },1168// CHECK-NEXT:           "end": {1169// CHECK-NEXT:            "offset": {{[0-9]+}},1170// CHECK-NEXT:            "col": 8,1171// CHECK-NEXT:            "tokLen": 11172// CHECK-NEXT:           }1173// CHECK-NEXT:          },1174// CHECK-NEXT:          "type": {1175// CHECK-NEXT:           "qualType": "int"1176// CHECK-NEXT:          },1177// CHECK-NEXT:          "valueCategory": "lvalue",1178// CHECK-NEXT:          "referencedDecl": {1179// CHECK-NEXT:           "id": "0x{{.*}}",1180// CHECK-NEXT:           "kind": "ParmVarDecl",1181// CHECK-NEXT:           "name": "b",1182// CHECK-NEXT:           "type": {1183// CHECK-NEXT:            "qualType": "int"1184// CHECK-NEXT:           }1185// CHECK-NEXT:          }1186// CHECK-NEXT:         }1187// CHECK-NEXT:        ]1188// CHECK-NEXT:       }1189// CHECK-NEXT:      ]1190// CHECK-NEXT:     },1191// CHECK-NEXT:     {1192// CHECK-NEXT:      "id": "0x{{.*}}",1193// CHECK-NEXT:      "kind": "BinaryOperator",1194// CHECK-NEXT:      "range": {1195// CHECK-NEXT:       "begin": {1196// CHECK-NEXT:        "offset": {{[0-9]+}},1197// CHECK-NEXT:        "line": 20,1198// CHECK-NEXT:        "col": 3,1199// CHECK-NEXT:        "tokLen": 11200// CHECK-NEXT:       },1201// CHECK-NEXT:       "end": {1202// CHECK-NEXT:        "offset": {{[0-9]+}},1203// CHECK-NEXT:        "col": 8,1204// CHECK-NEXT:        "tokLen": 11205// CHECK-NEXT:       }1206// CHECK-NEXT:      },1207// CHECK-NEXT:      "type": {1208// CHECK-NEXT:       "qualType": "int"1209// CHECK-NEXT:      },1210// CHECK-NEXT:      "valueCategory": "prvalue",1211// CHECK-NEXT:      "opcode": "&&",1212// CHECK-NEXT:      "inner": [1213// CHECK-NEXT:       {1214// CHECK-NEXT:        "id": "0x{{.*}}",1215// CHECK-NEXT:        "kind": "ImplicitCastExpr",1216// CHECK-NEXT:        "range": {1217// CHECK-NEXT:         "begin": {1218// CHECK-NEXT:          "offset": {{[0-9]+}},1219// CHECK-NEXT:          "col": 3,1220// CHECK-NEXT:          "tokLen": 11221// CHECK-NEXT:         },1222// CHECK-NEXT:         "end": {1223// CHECK-NEXT:          "offset": {{[0-9]+}},1224// CHECK-NEXT:          "col": 3,1225// CHECK-NEXT:          "tokLen": 11226// CHECK-NEXT:         }1227// CHECK-NEXT:        },1228// CHECK-NEXT:        "type": {1229// CHECK-NEXT:         "qualType": "int"1230// CHECK-NEXT:        },1231// CHECK-NEXT:        "valueCategory": "prvalue",1232// CHECK-NEXT:        "castKind": "LValueToRValue",1233// CHECK-NEXT:        "inner": [1234// CHECK-NEXT:         {1235// CHECK-NEXT:          "id": "0x{{.*}}",1236// CHECK-NEXT:          "kind": "DeclRefExpr",1237// CHECK-NEXT:          "range": {1238// CHECK-NEXT:           "begin": {1239// CHECK-NEXT:            "offset": {{[0-9]+}},1240// CHECK-NEXT:            "col": 3,1241// CHECK-NEXT:            "tokLen": 11242// CHECK-NEXT:           },1243// CHECK-NEXT:           "end": {1244// CHECK-NEXT:            "offset": {{[0-9]+}},1245// CHECK-NEXT:            "col": 3,1246// CHECK-NEXT:            "tokLen": 11247// CHECK-NEXT:           }1248// CHECK-NEXT:          },1249// CHECK-NEXT:          "type": {1250// CHECK-NEXT:           "qualType": "int"1251// CHECK-NEXT:          },1252// CHECK-NEXT:          "valueCategory": "lvalue",1253// CHECK-NEXT:          "referencedDecl": {1254// CHECK-NEXT:           "id": "0x{{.*}}",1255// CHECK-NEXT:           "kind": "ParmVarDecl",1256// CHECK-NEXT:           "name": "a",1257// CHECK-NEXT:           "type": {1258// CHECK-NEXT:            "qualType": "int"1259// CHECK-NEXT:           }1260// CHECK-NEXT:          }1261// CHECK-NEXT:         }1262// CHECK-NEXT:        ]1263// CHECK-NEXT:       },1264// CHECK-NEXT:       {1265// CHECK-NEXT:        "id": "0x{{.*}}",1266// CHECK-NEXT:        "kind": "ImplicitCastExpr",1267// CHECK-NEXT:        "range": {1268// CHECK-NEXT:         "begin": {1269// CHECK-NEXT:          "offset": {{[0-9]+}},1270// CHECK-NEXT:          "col": 8,1271// CHECK-NEXT:          "tokLen": 11272// CHECK-NEXT:         },1273// CHECK-NEXT:         "end": {1274// CHECK-NEXT:          "offset": {{[0-9]+}},1275// CHECK-NEXT:          "col": 8,1276// CHECK-NEXT:          "tokLen": 11277// CHECK-NEXT:         }1278// CHECK-NEXT:        },1279// CHECK-NEXT:        "type": {1280// CHECK-NEXT:         "qualType": "int"1281// CHECK-NEXT:        },1282// CHECK-NEXT:        "valueCategory": "prvalue",1283// CHECK-NEXT:        "castKind": "LValueToRValue",1284// CHECK-NEXT:        "inner": [1285// CHECK-NEXT:         {1286// CHECK-NEXT:          "id": "0x{{.*}}",1287// CHECK-NEXT:          "kind": "DeclRefExpr",1288// CHECK-NEXT:          "range": {1289// CHECK-NEXT:           "begin": {1290// CHECK-NEXT:            "offset": {{[0-9]+}},1291// CHECK-NEXT:            "col": 8,1292// CHECK-NEXT:            "tokLen": 11293// CHECK-NEXT:           },1294// CHECK-NEXT:           "end": {1295// CHECK-NEXT:            "offset": {{[0-9]+}},1296// CHECK-NEXT:            "col": 8,1297// CHECK-NEXT:            "tokLen": 11298// CHECK-NEXT:           }1299// CHECK-NEXT:          },1300// CHECK-NEXT:          "type": {1301// CHECK-NEXT:           "qualType": "int"1302// CHECK-NEXT:          },1303// CHECK-NEXT:          "valueCategory": "lvalue",1304// CHECK-NEXT:          "referencedDecl": {1305// CHECK-NEXT:           "id": "0x{{.*}}",1306// CHECK-NEXT:           "kind": "ParmVarDecl",1307// CHECK-NEXT:           "name": "b",1308// CHECK-NEXT:           "type": {1309// CHECK-NEXT:            "qualType": "int"1310// CHECK-NEXT:           }1311// CHECK-NEXT:          }1312// CHECK-NEXT:         }1313// CHECK-NEXT:        ]1314// CHECK-NEXT:       }1315// CHECK-NEXT:      ]1316// CHECK-NEXT:     },1317// CHECK-NEXT:     {1318// CHECK-NEXT:      "id": "0x{{.*}}",1319// CHECK-NEXT:      "kind": "BinaryOperator",1320// CHECK-NEXT:      "range": {1321// CHECK-NEXT:       "begin": {1322// CHECK-NEXT:        "offset": {{[0-9]+}},1323// CHECK-NEXT:        "line": 23,1324// CHECK-NEXT:        "col": 3,1325// CHECK-NEXT:        "tokLen": 11326// CHECK-NEXT:       },1327// CHECK-NEXT:       "end": {1328// CHECK-NEXT:        "offset": {{[0-9]+}},1329// CHECK-NEXT:        "col": 7,1330// CHECK-NEXT:        "tokLen": 11331// CHECK-NEXT:       }1332// CHECK-NEXT:      },1333// CHECK-NEXT:      "type": {1334// CHECK-NEXT:       "qualType": "int"1335// CHECK-NEXT:      },1336// CHECK-NEXT:      "valueCategory": "prvalue",1337// CHECK-NEXT:      "opcode": "|",1338// CHECK-NEXT:      "inner": [1339// CHECK-NEXT:       {1340// CHECK-NEXT:        "id": "0x{{.*}}",1341// CHECK-NEXT:        "kind": "ImplicitCastExpr",1342// CHECK-NEXT:        "range": {1343// CHECK-NEXT:         "begin": {1344// CHECK-NEXT:          "offset": {{[0-9]+}},1345// CHECK-NEXT:          "col": 3,1346// CHECK-NEXT:          "tokLen": 11347// CHECK-NEXT:         },1348// CHECK-NEXT:         "end": {1349// CHECK-NEXT:          "offset": {{[0-9]+}},1350// CHECK-NEXT:          "col": 3,1351// CHECK-NEXT:          "tokLen": 11352// CHECK-NEXT:         }1353// CHECK-NEXT:        },1354// CHECK-NEXT:        "type": {1355// CHECK-NEXT:         "qualType": "int"1356// CHECK-NEXT:        },1357// CHECK-NEXT:        "valueCategory": "prvalue",1358// CHECK-NEXT:        "castKind": "LValueToRValue",1359// CHECK-NEXT:        "inner": [1360// CHECK-NEXT:         {1361// CHECK-NEXT:          "id": "0x{{.*}}",1362// CHECK-NEXT:          "kind": "DeclRefExpr",1363// CHECK-NEXT:          "range": {1364// CHECK-NEXT:           "begin": {1365// CHECK-NEXT:            "offset": {{[0-9]+}},1366// CHECK-NEXT:            "col": 3,1367// CHECK-NEXT:            "tokLen": 11368// CHECK-NEXT:           },1369// CHECK-NEXT:           "end": {1370// CHECK-NEXT:            "offset": {{[0-9]+}},1371// CHECK-NEXT:            "col": 3,1372// CHECK-NEXT:            "tokLen": 11373// CHECK-NEXT:           }1374// CHECK-NEXT:          },1375// CHECK-NEXT:          "type": {1376// CHECK-NEXT:           "qualType": "int"1377// CHECK-NEXT:          },1378// CHECK-NEXT:          "valueCategory": "lvalue",1379// CHECK-NEXT:          "referencedDecl": {1380// CHECK-NEXT:           "id": "0x{{.*}}",1381// CHECK-NEXT:           "kind": "ParmVarDecl",1382// CHECK-NEXT:           "name": "a",1383// CHECK-NEXT:           "type": {1384// CHECK-NEXT:            "qualType": "int"1385// CHECK-NEXT:           }1386// CHECK-NEXT:          }1387// CHECK-NEXT:         }1388// CHECK-NEXT:        ]1389// CHECK-NEXT:       },1390// CHECK-NEXT:       {1391// CHECK-NEXT:        "id": "0x{{.*}}",1392// CHECK-NEXT:        "kind": "ImplicitCastExpr",1393// CHECK-NEXT:        "range": {1394// CHECK-NEXT:         "begin": {1395// CHECK-NEXT:          "offset": {{[0-9]+}},1396// CHECK-NEXT:          "col": 7,1397// CHECK-NEXT:          "tokLen": 11398// CHECK-NEXT:         },1399// CHECK-NEXT:         "end": {1400// CHECK-NEXT:          "offset": {{[0-9]+}},1401// CHECK-NEXT:          "col": 7,1402// CHECK-NEXT:          "tokLen": 11403// CHECK-NEXT:         }1404// CHECK-NEXT:        },1405// CHECK-NEXT:        "type": {1406// CHECK-NEXT:         "qualType": "int"1407// CHECK-NEXT:        },1408// CHECK-NEXT:        "valueCategory": "prvalue",1409// CHECK-NEXT:        "castKind": "LValueToRValue",1410// CHECK-NEXT:        "inner": [1411// CHECK-NEXT:         {1412// CHECK-NEXT:          "id": "0x{{.*}}",1413// CHECK-NEXT:          "kind": "DeclRefExpr",1414// CHECK-NEXT:          "range": {1415// CHECK-NEXT:           "begin": {1416// CHECK-NEXT:            "offset": {{[0-9]+}},1417// CHECK-NEXT:            "col": 7,1418// CHECK-NEXT:            "tokLen": 11419// CHECK-NEXT:           },1420// CHECK-NEXT:           "end": {1421// CHECK-NEXT:            "offset": {{[0-9]+}},1422// CHECK-NEXT:            "col": 7,1423// CHECK-NEXT:            "tokLen": 11424// CHECK-NEXT:           }1425// CHECK-NEXT:          },1426// CHECK-NEXT:          "type": {1427// CHECK-NEXT:           "qualType": "int"1428// CHECK-NEXT:          },1429// CHECK-NEXT:          "valueCategory": "lvalue",1430// CHECK-NEXT:          "referencedDecl": {1431// CHECK-NEXT:           "id": "0x{{.*}}",1432// CHECK-NEXT:           "kind": "ParmVarDecl",1433// CHECK-NEXT:           "name": "b",1434// CHECK-NEXT:           "type": {1435// CHECK-NEXT:            "qualType": "int"1436// CHECK-NEXT:           }1437// CHECK-NEXT:          }1438// CHECK-NEXT:         }1439// CHECK-NEXT:        ]1440// CHECK-NEXT:       }1441// CHECK-NEXT:      ]1442// CHECK-NEXT:     },1443// CHECK-NEXT:     {1444// CHECK-NEXT:      "id": "0x{{.*}}",1445// CHECK-NEXT:      "kind": "BinaryOperator",1446// CHECK-NEXT:      "range": {1447// CHECK-NEXT:       "begin": {1448// CHECK-NEXT:        "offset": {{[0-9]+}},1449// CHECK-NEXT:        "line": 24,1450// CHECK-NEXT:        "col": 3,1451// CHECK-NEXT:        "tokLen": 11452// CHECK-NEXT:       },1453// CHECK-NEXT:       "end": {1454// CHECK-NEXT:        "offset": {{[0-9]+}},1455// CHECK-NEXT:        "col": 7,1456// CHECK-NEXT:        "tokLen": 11457// CHECK-NEXT:       }1458// CHECK-NEXT:      },1459// CHECK-NEXT:      "type": {1460// CHECK-NEXT:       "qualType": "int"1461// CHECK-NEXT:      },1462// CHECK-NEXT:      "valueCategory": "prvalue",1463// CHECK-NEXT:      "opcode": "^",1464// CHECK-NEXT:      "inner": [1465// CHECK-NEXT:       {1466// CHECK-NEXT:        "id": "0x{{.*}}",1467// CHECK-NEXT:        "kind": "ImplicitCastExpr",1468// CHECK-NEXT:        "range": {1469// CHECK-NEXT:         "begin": {1470// CHECK-NEXT:          "offset": {{[0-9]+}},1471// CHECK-NEXT:          "col": 3,1472// CHECK-NEXT:          "tokLen": 11473// CHECK-NEXT:         },1474// CHECK-NEXT:         "end": {1475// CHECK-NEXT:          "offset": {{[0-9]+}},1476// CHECK-NEXT:          "col": 3,1477// CHECK-NEXT:          "tokLen": 11478// CHECK-NEXT:         }1479// CHECK-NEXT:        },1480// CHECK-NEXT:        "type": {1481// CHECK-NEXT:         "qualType": "int"1482// CHECK-NEXT:        },1483// CHECK-NEXT:        "valueCategory": "prvalue",1484// CHECK-NEXT:        "castKind": "LValueToRValue",1485// CHECK-NEXT:        "inner": [1486// CHECK-NEXT:         {1487// CHECK-NEXT:          "id": "0x{{.*}}",1488// CHECK-NEXT:          "kind": "DeclRefExpr",1489// CHECK-NEXT:          "range": {1490// CHECK-NEXT:           "begin": {1491// CHECK-NEXT:            "offset": {{[0-9]+}},1492// CHECK-NEXT:            "col": 3,1493// CHECK-NEXT:            "tokLen": 11494// CHECK-NEXT:           },1495// CHECK-NEXT:           "end": {1496// CHECK-NEXT:            "offset": {{[0-9]+}},1497// CHECK-NEXT:            "col": 3,1498// CHECK-NEXT:            "tokLen": 11499// CHECK-NEXT:           }1500// CHECK-NEXT:          },1501// CHECK-NEXT:          "type": {1502// CHECK-NEXT:           "qualType": "int"1503// CHECK-NEXT:          },1504// CHECK-NEXT:          "valueCategory": "lvalue",1505// CHECK-NEXT:          "referencedDecl": {1506// CHECK-NEXT:           "id": "0x{{.*}}",1507// CHECK-NEXT:           "kind": "ParmVarDecl",1508// CHECK-NEXT:           "name": "a",1509// CHECK-NEXT:           "type": {1510// CHECK-NEXT:            "qualType": "int"1511// CHECK-NEXT:           }1512// CHECK-NEXT:          }1513// CHECK-NEXT:         }1514// CHECK-NEXT:        ]1515// CHECK-NEXT:       },1516// CHECK-NEXT:       {1517// CHECK-NEXT:        "id": "0x{{.*}}",1518// CHECK-NEXT:        "kind": "ImplicitCastExpr",1519// CHECK-NEXT:        "range": {1520// CHECK-NEXT:         "begin": {1521// CHECK-NEXT:          "offset": {{[0-9]+}},1522// CHECK-NEXT:          "col": 7,1523// CHECK-NEXT:          "tokLen": 11524// CHECK-NEXT:         },1525// CHECK-NEXT:         "end": {1526// CHECK-NEXT:          "offset": {{[0-9]+}},1527// CHECK-NEXT:          "col": 7,1528// CHECK-NEXT:          "tokLen": 11529// CHECK-NEXT:         }1530// CHECK-NEXT:        },1531// CHECK-NEXT:        "type": {1532// CHECK-NEXT:         "qualType": "int"1533// CHECK-NEXT:        },1534// CHECK-NEXT:        "valueCategory": "prvalue",1535// CHECK-NEXT:        "castKind": "LValueToRValue",1536// CHECK-NEXT:        "inner": [1537// CHECK-NEXT:         {1538// CHECK-NEXT:          "id": "0x{{.*}}",1539// CHECK-NEXT:          "kind": "DeclRefExpr",1540// CHECK-NEXT:          "range": {1541// CHECK-NEXT:           "begin": {1542// CHECK-NEXT:            "offset": {{[0-9]+}},1543// CHECK-NEXT:            "col": 7,1544// CHECK-NEXT:            "tokLen": 11545// CHECK-NEXT:           },1546// CHECK-NEXT:           "end": {1547// CHECK-NEXT:            "offset": {{[0-9]+}},1548// CHECK-NEXT:            "col": 7,1549// CHECK-NEXT:            "tokLen": 11550// CHECK-NEXT:           }1551// CHECK-NEXT:          },1552// CHECK-NEXT:          "type": {1553// CHECK-NEXT:           "qualType": "int"1554// CHECK-NEXT:          },1555// CHECK-NEXT:          "valueCategory": "lvalue",1556// CHECK-NEXT:          "referencedDecl": {1557// CHECK-NEXT:           "id": "0x{{.*}}",1558// CHECK-NEXT:           "kind": "ParmVarDecl",1559// CHECK-NEXT:           "name": "b",1560// CHECK-NEXT:           "type": {1561// CHECK-NEXT:            "qualType": "int"1562// CHECK-NEXT:           }1563// CHECK-NEXT:          }1564// CHECK-NEXT:         }1565// CHECK-NEXT:        ]1566// CHECK-NEXT:       }1567// CHECK-NEXT:      ]1568// CHECK-NEXT:     },1569// CHECK-NEXT:     {1570// CHECK-NEXT:      "id": "0x{{.*}}",1571// CHECK-NEXT:      "kind": "BinaryOperator",1572// CHECK-NEXT:      "range": {1573// CHECK-NEXT:       "begin": {1574// CHECK-NEXT:        "offset": {{[0-9]+}},1575// CHECK-NEXT:        "line": 25,1576// CHECK-NEXT:        "col": 3,1577// CHECK-NEXT:        "tokLen": 11578// CHECK-NEXT:       },1579// CHECK-NEXT:       "end": {1580// CHECK-NEXT:        "offset": {{[0-9]+}},1581// CHECK-NEXT:        "col": 7,1582// CHECK-NEXT:        "tokLen": 11583// CHECK-NEXT:       }1584// CHECK-NEXT:      },1585// CHECK-NEXT:      "type": {1586// CHECK-NEXT:       "qualType": "int"1587// CHECK-NEXT:      },1588// CHECK-NEXT:      "valueCategory": "prvalue",1589// CHECK-NEXT:      "opcode": "&",1590// CHECK-NEXT:      "inner": [1591// CHECK-NEXT:       {1592// CHECK-NEXT:        "id": "0x{{.*}}",1593// CHECK-NEXT:        "kind": "ImplicitCastExpr",1594// CHECK-NEXT:        "range": {1595// CHECK-NEXT:         "begin": {1596// CHECK-NEXT:          "offset": {{[0-9]+}},1597// CHECK-NEXT:          "col": 3,1598// CHECK-NEXT:          "tokLen": 11599// CHECK-NEXT:         },1600// CHECK-NEXT:         "end": {1601// CHECK-NEXT:          "offset": {{[0-9]+}},1602// CHECK-NEXT:          "col": 3,1603// CHECK-NEXT:          "tokLen": 11604// CHECK-NEXT:         }1605// CHECK-NEXT:        },1606// CHECK-NEXT:        "type": {1607// CHECK-NEXT:         "qualType": "int"1608// CHECK-NEXT:        },1609// CHECK-NEXT:        "valueCategory": "prvalue",1610// CHECK-NEXT:        "castKind": "LValueToRValue",1611// CHECK-NEXT:        "inner": [1612// CHECK-NEXT:         {1613// CHECK-NEXT:          "id": "0x{{.*}}",1614// CHECK-NEXT:          "kind": "DeclRefExpr",1615// CHECK-NEXT:          "range": {1616// CHECK-NEXT:           "begin": {1617// CHECK-NEXT:            "offset": {{[0-9]+}},1618// CHECK-NEXT:            "col": 3,1619// CHECK-NEXT:            "tokLen": 11620// CHECK-NEXT:           },1621// CHECK-NEXT:           "end": {1622// CHECK-NEXT:            "offset": {{[0-9]+}},1623// CHECK-NEXT:            "col": 3,1624// CHECK-NEXT:            "tokLen": 11625// CHECK-NEXT:           }1626// CHECK-NEXT:          },1627// CHECK-NEXT:          "type": {1628// CHECK-NEXT:           "qualType": "int"1629// CHECK-NEXT:          },1630// CHECK-NEXT:          "valueCategory": "lvalue",1631// CHECK-NEXT:          "referencedDecl": {1632// CHECK-NEXT:           "id": "0x{{.*}}",1633// CHECK-NEXT:           "kind": "ParmVarDecl",1634// CHECK-NEXT:           "name": "a",1635// CHECK-NEXT:           "type": {1636// CHECK-NEXT:            "qualType": "int"1637// CHECK-NEXT:           }1638// CHECK-NEXT:          }1639// CHECK-NEXT:         }1640// CHECK-NEXT:        ]1641// CHECK-NEXT:       },1642// CHECK-NEXT:       {1643// CHECK-NEXT:        "id": "0x{{.*}}",1644// CHECK-NEXT:        "kind": "ImplicitCastExpr",1645// CHECK-NEXT:        "range": {1646// CHECK-NEXT:         "begin": {1647// CHECK-NEXT:          "offset": {{[0-9]+}},1648// CHECK-NEXT:          "col": 7,1649// CHECK-NEXT:          "tokLen": 11650// CHECK-NEXT:         },1651// CHECK-NEXT:         "end": {1652// CHECK-NEXT:          "offset": {{[0-9]+}},1653// CHECK-NEXT:          "col": 7,1654// CHECK-NEXT:          "tokLen": 11655// CHECK-NEXT:         }1656// CHECK-NEXT:        },1657// CHECK-NEXT:        "type": {1658// CHECK-NEXT:         "qualType": "int"1659// CHECK-NEXT:        },1660// CHECK-NEXT:        "valueCategory": "prvalue",1661// CHECK-NEXT:        "castKind": "LValueToRValue",1662// CHECK-NEXT:        "inner": [1663// CHECK-NEXT:         {1664// CHECK-NEXT:          "id": "0x{{.*}}",1665// CHECK-NEXT:          "kind": "DeclRefExpr",1666// CHECK-NEXT:          "range": {1667// CHECK-NEXT:           "begin": {1668// CHECK-NEXT:            "offset": {{[0-9]+}},1669// CHECK-NEXT:            "col": 7,1670// CHECK-NEXT:            "tokLen": 11671// CHECK-NEXT:           },1672// CHECK-NEXT:           "end": {1673// CHECK-NEXT:            "offset": {{[0-9]+}},1674// CHECK-NEXT:            "col": 7,1675// CHECK-NEXT:            "tokLen": 11676// CHECK-NEXT:           }1677// CHECK-NEXT:          },1678// CHECK-NEXT:          "type": {1679// CHECK-NEXT:           "qualType": "int"1680// CHECK-NEXT:          },1681// CHECK-NEXT:          "valueCategory": "lvalue",1682// CHECK-NEXT:          "referencedDecl": {1683// CHECK-NEXT:           "id": "0x{{.*}}",1684// CHECK-NEXT:           "kind": "ParmVarDecl",1685// CHECK-NEXT:           "name": "b",1686// CHECK-NEXT:           "type": {1687// CHECK-NEXT:            "qualType": "int"1688// CHECK-NEXT:           }1689// CHECK-NEXT:          }1690// CHECK-NEXT:         }1691// CHECK-NEXT:        ]1692// CHECK-NEXT:       }1693// CHECK-NEXT:      ]1694// CHECK-NEXT:     },1695// CHECK-NEXT:     {1696// CHECK-NEXT:      "id": "0x{{.*}}",1697// CHECK-NEXT:      "kind": "BinaryOperator",1698// CHECK-NEXT:      "range": {1699// CHECK-NEXT:       "begin": {1700// CHECK-NEXT:        "offset": {{[0-9]+}},1701// CHECK-NEXT:        "line": 28,1702// CHECK-NEXT:        "col": 3,1703// CHECK-NEXT:        "tokLen": 11704// CHECK-NEXT:       },1705// CHECK-NEXT:       "end": {1706// CHECK-NEXT:        "offset": {{[0-9]+}},1707// CHECK-NEXT:        "col": 8,1708// CHECK-NEXT:        "tokLen": 11709// CHECK-NEXT:       }1710// CHECK-NEXT:      },1711// CHECK-NEXT:      "type": {1712// CHECK-NEXT:       "qualType": "int"1713// CHECK-NEXT:      },1714// CHECK-NEXT:      "valueCategory": "prvalue",1715// CHECK-NEXT:      "opcode": "==",1716// CHECK-NEXT:      "inner": [1717// CHECK-NEXT:       {1718// CHECK-NEXT:        "id": "0x{{.*}}",1719// CHECK-NEXT:        "kind": "ImplicitCastExpr",1720// CHECK-NEXT:        "range": {1721// CHECK-NEXT:         "begin": {1722// CHECK-NEXT:          "offset": {{[0-9]+}},1723// CHECK-NEXT:          "col": 3,1724// CHECK-NEXT:          "tokLen": 11725// CHECK-NEXT:         },1726// CHECK-NEXT:         "end": {1727// CHECK-NEXT:          "offset": {{[0-9]+}},1728// CHECK-NEXT:          "col": 3,1729// CHECK-NEXT:          "tokLen": 11730// CHECK-NEXT:         }1731// CHECK-NEXT:        },1732// CHECK-NEXT:        "type": {1733// CHECK-NEXT:         "qualType": "int"1734// CHECK-NEXT:        },1735// CHECK-NEXT:        "valueCategory": "prvalue",1736// CHECK-NEXT:        "castKind": "LValueToRValue",1737// CHECK-NEXT:        "inner": [1738// CHECK-NEXT:         {1739// CHECK-NEXT:          "id": "0x{{.*}}",1740// CHECK-NEXT:          "kind": "DeclRefExpr",1741// CHECK-NEXT:          "range": {1742// CHECK-NEXT:           "begin": {1743// CHECK-NEXT:            "offset": {{[0-9]+}},1744// CHECK-NEXT:            "col": 3,1745// CHECK-NEXT:            "tokLen": 11746// CHECK-NEXT:           },1747// CHECK-NEXT:           "end": {1748// CHECK-NEXT:            "offset": {{[0-9]+}},1749// CHECK-NEXT:            "col": 3,1750// CHECK-NEXT:            "tokLen": 11751// CHECK-NEXT:           }1752// CHECK-NEXT:          },1753// CHECK-NEXT:          "type": {1754// CHECK-NEXT:           "qualType": "int"1755// CHECK-NEXT:          },1756// CHECK-NEXT:          "valueCategory": "lvalue",1757// CHECK-NEXT:          "referencedDecl": {1758// CHECK-NEXT:           "id": "0x{{.*}}",1759// CHECK-NEXT:           "kind": "ParmVarDecl",1760// CHECK-NEXT:           "name": "a",1761// CHECK-NEXT:           "type": {1762// CHECK-NEXT:            "qualType": "int"1763// CHECK-NEXT:           }1764// CHECK-NEXT:          }1765// CHECK-NEXT:         }1766// CHECK-NEXT:        ]1767// CHECK-NEXT:       },1768// CHECK-NEXT:       {1769// CHECK-NEXT:        "id": "0x{{.*}}",1770// CHECK-NEXT:        "kind": "ImplicitCastExpr",1771// CHECK-NEXT:        "range": {1772// CHECK-NEXT:         "begin": {1773// CHECK-NEXT:          "offset": {{[0-9]+}},1774// CHECK-NEXT:          "col": 8,1775// CHECK-NEXT:          "tokLen": 11776// CHECK-NEXT:         },1777// CHECK-NEXT:         "end": {1778// CHECK-NEXT:          "offset": {{[0-9]+}},1779// CHECK-NEXT:          "col": 8,1780// CHECK-NEXT:          "tokLen": 11781// CHECK-NEXT:         }1782// CHECK-NEXT:        },1783// CHECK-NEXT:        "type": {1784// CHECK-NEXT:         "qualType": "int"1785// CHECK-NEXT:        },1786// CHECK-NEXT:        "valueCategory": "prvalue",1787// CHECK-NEXT:        "castKind": "LValueToRValue",1788// CHECK-NEXT:        "inner": [1789// CHECK-NEXT:         {1790// CHECK-NEXT:          "id": "0x{{.*}}",1791// CHECK-NEXT:          "kind": "DeclRefExpr",1792// CHECK-NEXT:          "range": {1793// CHECK-NEXT:           "begin": {1794// CHECK-NEXT:            "offset": {{[0-9]+}},1795// CHECK-NEXT:            "col": 8,1796// CHECK-NEXT:            "tokLen": 11797// CHECK-NEXT:           },1798// CHECK-NEXT:           "end": {1799// CHECK-NEXT:            "offset": {{[0-9]+}},1800// CHECK-NEXT:            "col": 8,1801// CHECK-NEXT:            "tokLen": 11802// CHECK-NEXT:           }1803// CHECK-NEXT:          },1804// CHECK-NEXT:          "type": {1805// CHECK-NEXT:           "qualType": "int"1806// CHECK-NEXT:          },1807// CHECK-NEXT:          "valueCategory": "lvalue",1808// CHECK-NEXT:          "referencedDecl": {1809// CHECK-NEXT:           "id": "0x{{.*}}",1810// CHECK-NEXT:           "kind": "ParmVarDecl",1811// CHECK-NEXT:           "name": "b",1812// CHECK-NEXT:           "type": {1813// CHECK-NEXT:            "qualType": "int"1814// CHECK-NEXT:           }1815// CHECK-NEXT:          }1816// CHECK-NEXT:         }1817// CHECK-NEXT:        ]1818// CHECK-NEXT:       }1819// CHECK-NEXT:      ]1820// CHECK-NEXT:     },1821// CHECK-NEXT:     {1822// CHECK-NEXT:      "id": "0x{{.*}}",1823// CHECK-NEXT:      "kind": "BinaryOperator",1824// CHECK-NEXT:      "range": {1825// CHECK-NEXT:       "begin": {1826// CHECK-NEXT:        "offset": {{[0-9]+}},1827// CHECK-NEXT:        "line": 29,1828// CHECK-NEXT:        "col": 3,1829// CHECK-NEXT:        "tokLen": 11830// CHECK-NEXT:       },1831// CHECK-NEXT:       "end": {1832// CHECK-NEXT:        "offset": {{[0-9]+}},1833// CHECK-NEXT:        "col": 8,1834// CHECK-NEXT:        "tokLen": 11835// CHECK-NEXT:       }1836// CHECK-NEXT:      },1837// CHECK-NEXT:      "type": {1838// CHECK-NEXT:       "qualType": "int"1839// CHECK-NEXT:      },1840// CHECK-NEXT:      "valueCategory": "prvalue",1841// CHECK-NEXT:      "opcode": "!=",1842// CHECK-NEXT:      "inner": [1843// CHECK-NEXT:       {1844// CHECK-NEXT:        "id": "0x{{.*}}",1845// CHECK-NEXT:        "kind": "ImplicitCastExpr",1846// CHECK-NEXT:        "range": {1847// CHECK-NEXT:         "begin": {1848// CHECK-NEXT:          "offset": {{[0-9]+}},1849// CHECK-NEXT:          "col": 3,1850// CHECK-NEXT:          "tokLen": 11851// CHECK-NEXT:         },1852// CHECK-NEXT:         "end": {1853// CHECK-NEXT:          "offset": {{[0-9]+}},1854// CHECK-NEXT:          "col": 3,1855// CHECK-NEXT:          "tokLen": 11856// CHECK-NEXT:         }1857// CHECK-NEXT:        },1858// CHECK-NEXT:        "type": {1859// CHECK-NEXT:         "qualType": "int"1860// CHECK-NEXT:        },1861// CHECK-NEXT:        "valueCategory": "prvalue",1862// CHECK-NEXT:        "castKind": "LValueToRValue",1863// CHECK-NEXT:        "inner": [1864// CHECK-NEXT:         {1865// CHECK-NEXT:          "id": "0x{{.*}}",1866// CHECK-NEXT:          "kind": "DeclRefExpr",1867// CHECK-NEXT:          "range": {1868// CHECK-NEXT:           "begin": {1869// CHECK-NEXT:            "offset": {{[0-9]+}},1870// CHECK-NEXT:            "col": 3,1871// CHECK-NEXT:            "tokLen": 11872// CHECK-NEXT:           },1873// CHECK-NEXT:           "end": {1874// CHECK-NEXT:            "offset": {{[0-9]+}},1875// CHECK-NEXT:            "col": 3,1876// CHECK-NEXT:            "tokLen": 11877// CHECK-NEXT:           }1878// CHECK-NEXT:          },1879// CHECK-NEXT:          "type": {1880// CHECK-NEXT:           "qualType": "int"1881// CHECK-NEXT:          },1882// CHECK-NEXT:          "valueCategory": "lvalue",1883// CHECK-NEXT:          "referencedDecl": {1884// CHECK-NEXT:           "id": "0x{{.*}}",1885// CHECK-NEXT:           "kind": "ParmVarDecl",1886// CHECK-NEXT:           "name": "a",1887// CHECK-NEXT:           "type": {1888// CHECK-NEXT:            "qualType": "int"1889// CHECK-NEXT:           }1890// CHECK-NEXT:          }1891// CHECK-NEXT:         }1892// CHECK-NEXT:        ]1893// CHECK-NEXT:       },1894// CHECK-NEXT:       {1895// CHECK-NEXT:        "id": "0x{{.*}}",1896// CHECK-NEXT:        "kind": "ImplicitCastExpr",1897// CHECK-NEXT:        "range": {1898// CHECK-NEXT:         "begin": {1899// CHECK-NEXT:          "offset": {{[0-9]+}},1900// CHECK-NEXT:          "col": 8,1901// CHECK-NEXT:          "tokLen": 11902// CHECK-NEXT:         },1903// CHECK-NEXT:         "end": {1904// CHECK-NEXT:          "offset": {{[0-9]+}},1905// CHECK-NEXT:          "col": 8,1906// CHECK-NEXT:          "tokLen": 11907// CHECK-NEXT:         }1908// CHECK-NEXT:        },1909// CHECK-NEXT:        "type": {1910// CHECK-NEXT:         "qualType": "int"1911// CHECK-NEXT:        },1912// CHECK-NEXT:        "valueCategory": "prvalue",1913// CHECK-NEXT:        "castKind": "LValueToRValue",1914// CHECK-NEXT:        "inner": [1915// CHECK-NEXT:         {1916// CHECK-NEXT:          "id": "0x{{.*}}",1917// CHECK-NEXT:          "kind": "DeclRefExpr",1918// CHECK-NEXT:          "range": {1919// CHECK-NEXT:           "begin": {1920// CHECK-NEXT:            "offset": {{[0-9]+}},1921// CHECK-NEXT:            "col": 8,1922// CHECK-NEXT:            "tokLen": 11923// CHECK-NEXT:           },1924// CHECK-NEXT:           "end": {1925// CHECK-NEXT:            "offset": {{[0-9]+}},1926// CHECK-NEXT:            "col": 8,1927// CHECK-NEXT:            "tokLen": 11928// CHECK-NEXT:           }1929// CHECK-NEXT:          },1930// CHECK-NEXT:          "type": {1931// CHECK-NEXT:           "qualType": "int"1932// CHECK-NEXT:          },1933// CHECK-NEXT:          "valueCategory": "lvalue",1934// CHECK-NEXT:          "referencedDecl": {1935// CHECK-NEXT:           "id": "0x{{.*}}",1936// CHECK-NEXT:           "kind": "ParmVarDecl",1937// CHECK-NEXT:           "name": "b",1938// CHECK-NEXT:           "type": {1939// CHECK-NEXT:            "qualType": "int"1940// CHECK-NEXT:           }1941// CHECK-NEXT:          }1942// CHECK-NEXT:         }1943// CHECK-NEXT:        ]1944// CHECK-NEXT:       }1945// CHECK-NEXT:      ]1946// CHECK-NEXT:     },1947// CHECK-NEXT:     {1948// CHECK-NEXT:      "id": "0x{{.*}}",1949// CHECK-NEXT:      "kind": "BinaryOperator",1950// CHECK-NEXT:      "range": {1951// CHECK-NEXT:       "begin": {1952// CHECK-NEXT:        "offset": {{[0-9]+}},1953// CHECK-NEXT:        "line": 32,1954// CHECK-NEXT:        "col": 3,1955// CHECK-NEXT:        "tokLen": 11956// CHECK-NEXT:       },1957// CHECK-NEXT:       "end": {1958// CHECK-NEXT:        "offset": {{[0-9]+}},1959// CHECK-NEXT:        "col": 7,1960// CHECK-NEXT:        "tokLen": 11961// CHECK-NEXT:       }1962// CHECK-NEXT:      },1963// CHECK-NEXT:      "type": {1964// CHECK-NEXT:       "qualType": "int"1965// CHECK-NEXT:      },1966// CHECK-NEXT:      "valueCategory": "prvalue",1967// CHECK-NEXT:      "opcode": "<",1968// CHECK-NEXT:      "inner": [1969// CHECK-NEXT:       {1970// CHECK-NEXT:        "id": "0x{{.*}}",1971// CHECK-NEXT:        "kind": "ImplicitCastExpr",1972// CHECK-NEXT:        "range": {1973// CHECK-NEXT:         "begin": {1974// CHECK-NEXT:          "offset": {{[0-9]+}},1975// CHECK-NEXT:          "col": 3,1976// CHECK-NEXT:          "tokLen": 11977// CHECK-NEXT:         },1978// CHECK-NEXT:         "end": {1979// CHECK-NEXT:          "offset": {{[0-9]+}},1980// CHECK-NEXT:          "col": 3,1981// CHECK-NEXT:          "tokLen": 11982// CHECK-NEXT:         }1983// CHECK-NEXT:        },1984// CHECK-NEXT:        "type": {1985// CHECK-NEXT:         "qualType": "int"1986// CHECK-NEXT:        },1987// CHECK-NEXT:        "valueCategory": "prvalue",1988// CHECK-NEXT:        "castKind": "LValueToRValue",1989// CHECK-NEXT:        "inner": [1990// CHECK-NEXT:         {1991// CHECK-NEXT:          "id": "0x{{.*}}",1992// CHECK-NEXT:          "kind": "DeclRefExpr",1993// CHECK-NEXT:          "range": {1994// CHECK-NEXT:           "begin": {1995// CHECK-NEXT:            "offset": {{[0-9]+}},1996// CHECK-NEXT:            "col": 3,1997// CHECK-NEXT:            "tokLen": 11998// CHECK-NEXT:           },1999// CHECK-NEXT:           "end": {2000// CHECK-NEXT:            "offset": {{[0-9]+}},2001// CHECK-NEXT:            "col": 3,2002// CHECK-NEXT:            "tokLen": 12003// CHECK-NEXT:           }2004// CHECK-NEXT:          },2005// CHECK-NEXT:          "type": {2006// CHECK-NEXT:           "qualType": "int"2007// CHECK-NEXT:          },2008// CHECK-NEXT:          "valueCategory": "lvalue",2009// CHECK-NEXT:          "referencedDecl": {2010// CHECK-NEXT:           "id": "0x{{.*}}",2011// CHECK-NEXT:           "kind": "ParmVarDecl",2012// CHECK-NEXT:           "name": "a",2013// CHECK-NEXT:           "type": {2014// CHECK-NEXT:            "qualType": "int"2015// CHECK-NEXT:           }2016// CHECK-NEXT:          }2017// CHECK-NEXT:         }2018// CHECK-NEXT:        ]2019// CHECK-NEXT:       },2020// CHECK-NEXT:       {2021// CHECK-NEXT:        "id": "0x{{.*}}",2022// CHECK-NEXT:        "kind": "ImplicitCastExpr",2023// CHECK-NEXT:        "range": {2024// CHECK-NEXT:         "begin": {2025// CHECK-NEXT:          "offset": {{[0-9]+}},2026// CHECK-NEXT:          "col": 7,2027// CHECK-NEXT:          "tokLen": 12028// CHECK-NEXT:         },2029// CHECK-NEXT:         "end": {2030// CHECK-NEXT:          "offset": {{[0-9]+}},2031// CHECK-NEXT:          "col": 7,2032// CHECK-NEXT:          "tokLen": 12033// CHECK-NEXT:         }2034// CHECK-NEXT:        },2035// CHECK-NEXT:        "type": {2036// CHECK-NEXT:         "qualType": "int"2037// CHECK-NEXT:        },2038// CHECK-NEXT:        "valueCategory": "prvalue",2039// CHECK-NEXT:        "castKind": "LValueToRValue",2040// CHECK-NEXT:        "inner": [2041// CHECK-NEXT:         {2042// CHECK-NEXT:          "id": "0x{{.*}}",2043// CHECK-NEXT:          "kind": "DeclRefExpr",2044// CHECK-NEXT:          "range": {2045// CHECK-NEXT:           "begin": {2046// CHECK-NEXT:            "offset": {{[0-9]+}},2047// CHECK-NEXT:            "col": 7,2048// CHECK-NEXT:            "tokLen": 12049// CHECK-NEXT:           },2050// CHECK-NEXT:           "end": {2051// CHECK-NEXT:            "offset": {{[0-9]+}},2052// CHECK-NEXT:            "col": 7,2053// CHECK-NEXT:            "tokLen": 12054// CHECK-NEXT:           }2055// CHECK-NEXT:          },2056// CHECK-NEXT:          "type": {2057// CHECK-NEXT:           "qualType": "int"2058// CHECK-NEXT:          },2059// CHECK-NEXT:          "valueCategory": "lvalue",2060// CHECK-NEXT:          "referencedDecl": {2061// CHECK-NEXT:           "id": "0x{{.*}}",2062// CHECK-NEXT:           "kind": "ParmVarDecl",2063// CHECK-NEXT:           "name": "b",2064// CHECK-NEXT:           "type": {2065// CHECK-NEXT:            "qualType": "int"2066// CHECK-NEXT:           }2067// CHECK-NEXT:          }2068// CHECK-NEXT:         }2069// CHECK-NEXT:        ]2070// CHECK-NEXT:       }2071// CHECK-NEXT:      ]2072// CHECK-NEXT:     },2073// CHECK-NEXT:     {2074// CHECK-NEXT:      "id": "0x{{.*}}",2075// CHECK-NEXT:      "kind": "BinaryOperator",2076// CHECK-NEXT:      "range": {2077// CHECK-NEXT:       "begin": {2078// CHECK-NEXT:        "offset": {{[0-9]+}},2079// CHECK-NEXT:        "line": 33,2080// CHECK-NEXT:        "col": 3,2081// CHECK-NEXT:        "tokLen": 12082// CHECK-NEXT:       },2083// CHECK-NEXT:       "end": {2084// CHECK-NEXT:        "offset": {{[0-9]+}},2085// CHECK-NEXT:        "col": 7,2086// CHECK-NEXT:        "tokLen": 12087// CHECK-NEXT:       }2088// CHECK-NEXT:      },2089// CHECK-NEXT:      "type": {2090// CHECK-NEXT:       "qualType": "int"2091// CHECK-NEXT:      },2092// CHECK-NEXT:      "valueCategory": "prvalue",2093// CHECK-NEXT:      "opcode": ">",2094// CHECK-NEXT:      "inner": [2095// CHECK-NEXT:       {2096// CHECK-NEXT:        "id": "0x{{.*}}",2097// CHECK-NEXT:        "kind": "ImplicitCastExpr",2098// CHECK-NEXT:        "range": {2099// CHECK-NEXT:         "begin": {2100// CHECK-NEXT:          "offset": {{[0-9]+}},2101// CHECK-NEXT:          "col": 3,2102// CHECK-NEXT:          "tokLen": 12103// CHECK-NEXT:         },2104// CHECK-NEXT:         "end": {2105// CHECK-NEXT:          "offset": {{[0-9]+}},2106// CHECK-NEXT:          "col": 3,2107// CHECK-NEXT:          "tokLen": 12108// CHECK-NEXT:         }2109// CHECK-NEXT:        },2110// CHECK-NEXT:        "type": {2111// CHECK-NEXT:         "qualType": "int"2112// CHECK-NEXT:        },2113// CHECK-NEXT:        "valueCategory": "prvalue",2114// CHECK-NEXT:        "castKind": "LValueToRValue",2115// CHECK-NEXT:        "inner": [2116// CHECK-NEXT:         {2117// CHECK-NEXT:          "id": "0x{{.*}}",2118// CHECK-NEXT:          "kind": "DeclRefExpr",2119// CHECK-NEXT:          "range": {2120// CHECK-NEXT:           "begin": {2121// CHECK-NEXT:            "offset": {{[0-9]+}},2122// CHECK-NEXT:            "col": 3,2123// CHECK-NEXT:            "tokLen": 12124// CHECK-NEXT:           },2125// CHECK-NEXT:           "end": {2126// CHECK-NEXT:            "offset": {{[0-9]+}},2127// CHECK-NEXT:            "col": 3,2128// CHECK-NEXT:            "tokLen": 12129// CHECK-NEXT:           }2130// CHECK-NEXT:          },2131// CHECK-NEXT:          "type": {2132// CHECK-NEXT:           "qualType": "int"2133// CHECK-NEXT:          },2134// CHECK-NEXT:          "valueCategory": "lvalue",2135// CHECK-NEXT:          "referencedDecl": {2136// CHECK-NEXT:           "id": "0x{{.*}}",2137// CHECK-NEXT:           "kind": "ParmVarDecl",2138// CHECK-NEXT:           "name": "a",2139// CHECK-NEXT:           "type": {2140// CHECK-NEXT:            "qualType": "int"2141// CHECK-NEXT:           }2142// CHECK-NEXT:          }2143// CHECK-NEXT:         }2144// CHECK-NEXT:        ]2145// CHECK-NEXT:       },2146// CHECK-NEXT:       {2147// CHECK-NEXT:        "id": "0x{{.*}}",2148// CHECK-NEXT:        "kind": "ImplicitCastExpr",2149// CHECK-NEXT:        "range": {2150// CHECK-NEXT:         "begin": {2151// CHECK-NEXT:          "offset": {{[0-9]+}},2152// CHECK-NEXT:          "col": 7,2153// CHECK-NEXT:          "tokLen": 12154// CHECK-NEXT:         },2155// CHECK-NEXT:         "end": {2156// CHECK-NEXT:          "offset": {{[0-9]+}},2157// CHECK-NEXT:          "col": 7,2158// CHECK-NEXT:          "tokLen": 12159// CHECK-NEXT:         }2160// CHECK-NEXT:        },2161// CHECK-NEXT:        "type": {2162// CHECK-NEXT:         "qualType": "int"2163// CHECK-NEXT:        },2164// CHECK-NEXT:        "valueCategory": "prvalue",2165// CHECK-NEXT:        "castKind": "LValueToRValue",2166// CHECK-NEXT:        "inner": [2167// CHECK-NEXT:         {2168// CHECK-NEXT:          "id": "0x{{.*}}",2169// CHECK-NEXT:          "kind": "DeclRefExpr",2170// CHECK-NEXT:          "range": {2171// CHECK-NEXT:           "begin": {2172// CHECK-NEXT:            "offset": {{[0-9]+}},2173// CHECK-NEXT:            "col": 7,2174// CHECK-NEXT:            "tokLen": 12175// CHECK-NEXT:           },2176// CHECK-NEXT:           "end": {2177// CHECK-NEXT:            "offset": {{[0-9]+}},2178// CHECK-NEXT:            "col": 7,2179// CHECK-NEXT:            "tokLen": 12180// CHECK-NEXT:           }2181// CHECK-NEXT:          },2182// CHECK-NEXT:          "type": {2183// CHECK-NEXT:           "qualType": "int"2184// CHECK-NEXT:          },2185// CHECK-NEXT:          "valueCategory": "lvalue",2186// CHECK-NEXT:          "referencedDecl": {2187// CHECK-NEXT:           "id": "0x{{.*}}",2188// CHECK-NEXT:           "kind": "ParmVarDecl",2189// CHECK-NEXT:           "name": "b",2190// CHECK-NEXT:           "type": {2191// CHECK-NEXT:            "qualType": "int"2192// CHECK-NEXT:           }2193// CHECK-NEXT:          }2194// CHECK-NEXT:         }2195// CHECK-NEXT:        ]2196// CHECK-NEXT:       }2197// CHECK-NEXT:      ]2198// CHECK-NEXT:     },2199// CHECK-NEXT:     {2200// CHECK-NEXT:      "id": "0x{{.*}}",2201// CHECK-NEXT:      "kind": "BinaryOperator",2202// CHECK-NEXT:      "range": {2203// CHECK-NEXT:       "begin": {2204// CHECK-NEXT:        "offset": {{[0-9]+}},2205// CHECK-NEXT:        "line": 34,2206// CHECK-NEXT:        "col": 3,2207// CHECK-NEXT:        "tokLen": 12208// CHECK-NEXT:       },2209// CHECK-NEXT:       "end": {2210// CHECK-NEXT:        "offset": {{[0-9]+}},2211// CHECK-NEXT:        "col": 8,2212// CHECK-NEXT:        "tokLen": 12213// CHECK-NEXT:       }2214// CHECK-NEXT:      },2215// CHECK-NEXT:      "type": {2216// CHECK-NEXT:       "qualType": "int"2217// CHECK-NEXT:      },2218// CHECK-NEXT:      "valueCategory": "prvalue",2219// CHECK-NEXT:      "opcode": "<=",2220// CHECK-NEXT:      "inner": [2221// CHECK-NEXT:       {2222// CHECK-NEXT:        "id": "0x{{.*}}",2223// CHECK-NEXT:        "kind": "ImplicitCastExpr",2224// CHECK-NEXT:        "range": {2225// CHECK-NEXT:         "begin": {2226// CHECK-NEXT:          "offset": {{[0-9]+}},2227// CHECK-NEXT:          "col": 3,2228// CHECK-NEXT:          "tokLen": 12229// CHECK-NEXT:         },2230// CHECK-NEXT:         "end": {2231// CHECK-NEXT:          "offset": {{[0-9]+}},2232// CHECK-NEXT:          "col": 3,2233// CHECK-NEXT:          "tokLen": 12234// CHECK-NEXT:         }2235// CHECK-NEXT:        },2236// CHECK-NEXT:        "type": {2237// CHECK-NEXT:         "qualType": "int"2238// CHECK-NEXT:        },2239// CHECK-NEXT:        "valueCategory": "prvalue",2240// CHECK-NEXT:        "castKind": "LValueToRValue",2241// CHECK-NEXT:        "inner": [2242// CHECK-NEXT:         {2243// CHECK-NEXT:          "id": "0x{{.*}}",2244// CHECK-NEXT:          "kind": "DeclRefExpr",2245// CHECK-NEXT:          "range": {2246// CHECK-NEXT:           "begin": {2247// CHECK-NEXT:            "offset": {{[0-9]+}},2248// CHECK-NEXT:            "col": 3,2249// CHECK-NEXT:            "tokLen": 12250// CHECK-NEXT:           },2251// CHECK-NEXT:           "end": {2252// CHECK-NEXT:            "offset": {{[0-9]+}},2253// CHECK-NEXT:            "col": 3,2254// CHECK-NEXT:            "tokLen": 12255// CHECK-NEXT:           }2256// CHECK-NEXT:          },2257// CHECK-NEXT:          "type": {2258// CHECK-NEXT:           "qualType": "int"2259// CHECK-NEXT:          },2260// CHECK-NEXT:          "valueCategory": "lvalue",2261// CHECK-NEXT:          "referencedDecl": {2262// CHECK-NEXT:           "id": "0x{{.*}}",2263// CHECK-NEXT:           "kind": "ParmVarDecl",2264// CHECK-NEXT:           "name": "a",2265// CHECK-NEXT:           "type": {2266// CHECK-NEXT:            "qualType": "int"2267// CHECK-NEXT:           }2268// CHECK-NEXT:          }2269// CHECK-NEXT:         }2270// CHECK-NEXT:        ]2271// CHECK-NEXT:       },2272// CHECK-NEXT:       {2273// CHECK-NEXT:        "id": "0x{{.*}}",2274// CHECK-NEXT:        "kind": "ImplicitCastExpr",2275// CHECK-NEXT:        "range": {2276// CHECK-NEXT:         "begin": {2277// CHECK-NEXT:          "offset": {{[0-9]+}},2278// CHECK-NEXT:          "col": 8,2279// CHECK-NEXT:          "tokLen": 12280// CHECK-NEXT:         },2281// CHECK-NEXT:         "end": {2282// CHECK-NEXT:          "offset": {{[0-9]+}},2283// CHECK-NEXT:          "col": 8,2284// CHECK-NEXT:          "tokLen": 12285// CHECK-NEXT:         }2286// CHECK-NEXT:        },2287// CHECK-NEXT:        "type": {2288// CHECK-NEXT:         "qualType": "int"2289// CHECK-NEXT:        },2290// CHECK-NEXT:        "valueCategory": "prvalue",2291// CHECK-NEXT:        "castKind": "LValueToRValue",2292// CHECK-NEXT:        "inner": [2293// CHECK-NEXT:         {2294// CHECK-NEXT:          "id": "0x{{.*}}",2295// CHECK-NEXT:          "kind": "DeclRefExpr",2296// CHECK-NEXT:          "range": {2297// CHECK-NEXT:           "begin": {2298// CHECK-NEXT:            "offset": {{[0-9]+}},2299// CHECK-NEXT:            "col": 8,2300// CHECK-NEXT:            "tokLen": 12301// CHECK-NEXT:           },2302// CHECK-NEXT:           "end": {2303// CHECK-NEXT:            "offset": {{[0-9]+}},2304// CHECK-NEXT:            "col": 8,2305// CHECK-NEXT:            "tokLen": 12306// CHECK-NEXT:           }2307// CHECK-NEXT:          },2308// CHECK-NEXT:          "type": {2309// CHECK-NEXT:           "qualType": "int"2310// CHECK-NEXT:          },2311// CHECK-NEXT:          "valueCategory": "lvalue",2312// CHECK-NEXT:          "referencedDecl": {2313// CHECK-NEXT:           "id": "0x{{.*}}",2314// CHECK-NEXT:           "kind": "ParmVarDecl",2315// CHECK-NEXT:           "name": "b",2316// CHECK-NEXT:           "type": {2317// CHECK-NEXT:            "qualType": "int"2318// CHECK-NEXT:           }2319// CHECK-NEXT:          }2320// CHECK-NEXT:         }2321// CHECK-NEXT:        ]2322// CHECK-NEXT:       }2323// CHECK-NEXT:      ]2324// CHECK-NEXT:     },2325// CHECK-NEXT:     {2326// CHECK-NEXT:      "id": "0x{{.*}}",2327// CHECK-NEXT:      "kind": "BinaryOperator",2328// CHECK-NEXT:      "range": {2329// CHECK-NEXT:       "begin": {2330// CHECK-NEXT:        "offset": {{[0-9]+}},2331// CHECK-NEXT:        "line": 35,2332// CHECK-NEXT:        "col": 3,2333// CHECK-NEXT:        "tokLen": 12334// CHECK-NEXT:       },2335// CHECK-NEXT:       "end": {2336// CHECK-NEXT:        "offset": {{[0-9]+}},2337// CHECK-NEXT:        "col": 8,2338// CHECK-NEXT:        "tokLen": 12339// CHECK-NEXT:       }2340// CHECK-NEXT:      },2341// CHECK-NEXT:      "type": {2342// CHECK-NEXT:       "qualType": "int"2343// CHECK-NEXT:      },2344// CHECK-NEXT:      "valueCategory": "prvalue",2345// CHECK-NEXT:      "opcode": ">=",2346// CHECK-NEXT:      "inner": [2347// CHECK-NEXT:       {2348// CHECK-NEXT:        "id": "0x{{.*}}",2349// CHECK-NEXT:        "kind": "ImplicitCastExpr",2350// CHECK-NEXT:        "range": {2351// CHECK-NEXT:         "begin": {2352// CHECK-NEXT:          "offset": {{[0-9]+}},2353// CHECK-NEXT:          "col": 3,2354// CHECK-NEXT:          "tokLen": 12355// CHECK-NEXT:         },2356// CHECK-NEXT:         "end": {2357// CHECK-NEXT:          "offset": {{[0-9]+}},2358// CHECK-NEXT:          "col": 3,2359// CHECK-NEXT:          "tokLen": 12360// CHECK-NEXT:         }2361// CHECK-NEXT:        },2362// CHECK-NEXT:        "type": {2363// CHECK-NEXT:         "qualType": "int"2364// CHECK-NEXT:        },2365// CHECK-NEXT:        "valueCategory": "prvalue",2366// CHECK-NEXT:        "castKind": "LValueToRValue",2367// CHECK-NEXT:        "inner": [2368// CHECK-NEXT:         {2369// CHECK-NEXT:          "id": "0x{{.*}}",2370// CHECK-NEXT:          "kind": "DeclRefExpr",2371// CHECK-NEXT:          "range": {2372// CHECK-NEXT:           "begin": {2373// CHECK-NEXT:            "offset": {{[0-9]+}},2374// CHECK-NEXT:            "col": 3,2375// CHECK-NEXT:            "tokLen": 12376// CHECK-NEXT:           },2377// CHECK-NEXT:           "end": {2378// CHECK-NEXT:            "offset": {{[0-9]+}},2379// CHECK-NEXT:            "col": 3,2380// CHECK-NEXT:            "tokLen": 12381// CHECK-NEXT:           }2382// CHECK-NEXT:          },2383// CHECK-NEXT:          "type": {2384// CHECK-NEXT:           "qualType": "int"2385// CHECK-NEXT:          },2386// CHECK-NEXT:          "valueCategory": "lvalue",2387// CHECK-NEXT:          "referencedDecl": {2388// CHECK-NEXT:           "id": "0x{{.*}}",2389// CHECK-NEXT:           "kind": "ParmVarDecl",2390// CHECK-NEXT:           "name": "a",2391// CHECK-NEXT:           "type": {2392// CHECK-NEXT:            "qualType": "int"2393// CHECK-NEXT:           }2394// CHECK-NEXT:          }2395// CHECK-NEXT:         }2396// CHECK-NEXT:        ]2397// CHECK-NEXT:       },2398// CHECK-NEXT:       {2399// CHECK-NEXT:        "id": "0x{{.*}}",2400// CHECK-NEXT:        "kind": "ImplicitCastExpr",2401// CHECK-NEXT:        "range": {2402// CHECK-NEXT:         "begin": {2403// CHECK-NEXT:          "offset": {{[0-9]+}},2404// CHECK-NEXT:          "col": 8,2405// CHECK-NEXT:          "tokLen": 12406// CHECK-NEXT:         },2407// CHECK-NEXT:         "end": {2408// CHECK-NEXT:          "offset": {{[0-9]+}},2409// CHECK-NEXT:          "col": 8,2410// CHECK-NEXT:          "tokLen": 12411// CHECK-NEXT:         }2412// CHECK-NEXT:        },2413// CHECK-NEXT:        "type": {2414// CHECK-NEXT:         "qualType": "int"2415// CHECK-NEXT:        },2416// CHECK-NEXT:        "valueCategory": "prvalue",2417// CHECK-NEXT:        "castKind": "LValueToRValue",2418// CHECK-NEXT:        "inner": [2419// CHECK-NEXT:         {2420// CHECK-NEXT:          "id": "0x{{.*}}",2421// CHECK-NEXT:          "kind": "DeclRefExpr",2422// CHECK-NEXT:          "range": {2423// CHECK-NEXT:           "begin": {2424// CHECK-NEXT:            "offset": {{[0-9]+}},2425// CHECK-NEXT:            "col": 8,2426// CHECK-NEXT:            "tokLen": 12427// CHECK-NEXT:           },2428// CHECK-NEXT:           "end": {2429// CHECK-NEXT:            "offset": {{[0-9]+}},2430// CHECK-NEXT:            "col": 8,2431// CHECK-NEXT:            "tokLen": 12432// CHECK-NEXT:           }2433// CHECK-NEXT:          },2434// CHECK-NEXT:          "type": {2435// CHECK-NEXT:           "qualType": "int"2436// CHECK-NEXT:          },2437// CHECK-NEXT:          "valueCategory": "lvalue",2438// CHECK-NEXT:          "referencedDecl": {2439// CHECK-NEXT:           "id": "0x{{.*}}",2440// CHECK-NEXT:           "kind": "ParmVarDecl",2441// CHECK-NEXT:           "name": "b",2442// CHECK-NEXT:           "type": {2443// CHECK-NEXT:            "qualType": "int"2444// CHECK-NEXT:           }2445// CHECK-NEXT:          }2446// CHECK-NEXT:         }2447// CHECK-NEXT:        ]2448// CHECK-NEXT:       }2449// CHECK-NEXT:      ]2450// CHECK-NEXT:     },2451// CHECK-NEXT:     {2452// CHECK-NEXT:      "id": "0x{{.*}}",2453// CHECK-NEXT:      "kind": "BinaryOperator",2454// CHECK-NEXT:      "range": {2455// CHECK-NEXT:       "begin": {2456// CHECK-NEXT:        "offset": {{[0-9]+}},2457// CHECK-NEXT:        "line": 38,2458// CHECK-NEXT:        "col": 3,2459// CHECK-NEXT:        "tokLen": 12460// CHECK-NEXT:       },2461// CHECK-NEXT:       "end": {2462// CHECK-NEXT:        "offset": {{[0-9]+}},2463// CHECK-NEXT:        "col": 8,2464// CHECK-NEXT:        "tokLen": 12465// CHECK-NEXT:       }2466// CHECK-NEXT:      },2467// CHECK-NEXT:      "type": {2468// CHECK-NEXT:       "qualType": "int"2469// CHECK-NEXT:      },2470// CHECK-NEXT:      "valueCategory": "prvalue",2471// CHECK-NEXT:      "opcode": "<<",2472// CHECK-NEXT:      "inner": [2473// CHECK-NEXT:       {2474// CHECK-NEXT:        "id": "0x{{.*}}",2475// CHECK-NEXT:        "kind": "ImplicitCastExpr",2476// CHECK-NEXT:        "range": {2477// CHECK-NEXT:         "begin": {2478// CHECK-NEXT:          "offset": {{[0-9]+}},2479// CHECK-NEXT:          "col": 3,2480// CHECK-NEXT:          "tokLen": 12481// CHECK-NEXT:         },2482// CHECK-NEXT:         "end": {2483// CHECK-NEXT:          "offset": {{[0-9]+}},2484// CHECK-NEXT:          "col": 3,2485// CHECK-NEXT:          "tokLen": 12486// CHECK-NEXT:         }2487// CHECK-NEXT:        },2488// CHECK-NEXT:        "type": {2489// CHECK-NEXT:         "qualType": "int"2490// CHECK-NEXT:        },2491// CHECK-NEXT:        "valueCategory": "prvalue",2492// CHECK-NEXT:        "castKind": "LValueToRValue",2493// CHECK-NEXT:        "inner": [2494// CHECK-NEXT:         {2495// CHECK-NEXT:          "id": "0x{{.*}}",2496// CHECK-NEXT:          "kind": "DeclRefExpr",2497// CHECK-NEXT:          "range": {2498// CHECK-NEXT:           "begin": {2499// CHECK-NEXT:            "offset": {{[0-9]+}},2500// CHECK-NEXT:            "col": 3,2501// CHECK-NEXT:            "tokLen": 12502// CHECK-NEXT:           },2503// CHECK-NEXT:           "end": {2504// CHECK-NEXT:            "offset": {{[0-9]+}},2505// CHECK-NEXT:            "col": 3,2506// CHECK-NEXT:            "tokLen": 12507// CHECK-NEXT:           }2508// CHECK-NEXT:          },2509// CHECK-NEXT:          "type": {2510// CHECK-NEXT:           "qualType": "int"2511// CHECK-NEXT:          },2512// CHECK-NEXT:          "valueCategory": "lvalue",2513// CHECK-NEXT:          "referencedDecl": {2514// CHECK-NEXT:           "id": "0x{{.*}}",2515// CHECK-NEXT:           "kind": "ParmVarDecl",2516// CHECK-NEXT:           "name": "a",2517// CHECK-NEXT:           "type": {2518// CHECK-NEXT:            "qualType": "int"2519// CHECK-NEXT:           }2520// CHECK-NEXT:          }2521// CHECK-NEXT:         }2522// CHECK-NEXT:        ]2523// CHECK-NEXT:       },2524// CHECK-NEXT:       {2525// CHECK-NEXT:        "id": "0x{{.*}}",2526// CHECK-NEXT:        "kind": "ImplicitCastExpr",2527// CHECK-NEXT:        "range": {2528// CHECK-NEXT:         "begin": {2529// CHECK-NEXT:          "offset": {{[0-9]+}},2530// CHECK-NEXT:          "col": 8,2531// CHECK-NEXT:          "tokLen": 12532// CHECK-NEXT:         },2533// CHECK-NEXT:         "end": {2534// CHECK-NEXT:          "offset": {{[0-9]+}},2535// CHECK-NEXT:          "col": 8,2536// CHECK-NEXT:          "tokLen": 12537// CHECK-NEXT:         }2538// CHECK-NEXT:        },2539// CHECK-NEXT:        "type": {2540// CHECK-NEXT:         "qualType": "int"2541// CHECK-NEXT:        },2542// CHECK-NEXT:        "valueCategory": "prvalue",2543// CHECK-NEXT:        "castKind": "LValueToRValue",2544// CHECK-NEXT:        "inner": [2545// CHECK-NEXT:         {2546// CHECK-NEXT:          "id": "0x{{.*}}",2547// CHECK-NEXT:          "kind": "DeclRefExpr",2548// CHECK-NEXT:          "range": {2549// CHECK-NEXT:           "begin": {2550// CHECK-NEXT:            "offset": {{[0-9]+}},2551// CHECK-NEXT:            "col": 8,2552// CHECK-NEXT:            "tokLen": 12553// CHECK-NEXT:           },2554// CHECK-NEXT:           "end": {2555// CHECK-NEXT:            "offset": {{[0-9]+}},2556// CHECK-NEXT:            "col": 8,2557// CHECK-NEXT:            "tokLen": 12558// CHECK-NEXT:           }2559// CHECK-NEXT:          },2560// CHECK-NEXT:          "type": {2561// CHECK-NEXT:           "qualType": "int"2562// CHECK-NEXT:          },2563// CHECK-NEXT:          "valueCategory": "lvalue",2564// CHECK-NEXT:          "referencedDecl": {2565// CHECK-NEXT:           "id": "0x{{.*}}",2566// CHECK-NEXT:           "kind": "ParmVarDecl",2567// CHECK-NEXT:           "name": "b",2568// CHECK-NEXT:           "type": {2569// CHECK-NEXT:            "qualType": "int"2570// CHECK-NEXT:           }2571// CHECK-NEXT:          }2572// CHECK-NEXT:         }2573// CHECK-NEXT:        ]2574// CHECK-NEXT:       }2575// CHECK-NEXT:      ]2576// CHECK-NEXT:     },2577// CHECK-NEXT:     {2578// CHECK-NEXT:      "id": "0x{{.*}}",2579// CHECK-NEXT:      "kind": "BinaryOperator",2580// CHECK-NEXT:      "range": {2581// CHECK-NEXT:       "begin": {2582// CHECK-NEXT:        "offset": {{[0-9]+}},2583// CHECK-NEXT:        "line": 39,2584// CHECK-NEXT:        "col": 3,2585// CHECK-NEXT:        "tokLen": 12586// CHECK-NEXT:       },2587// CHECK-NEXT:       "end": {2588// CHECK-NEXT:        "offset": {{[0-9]+}},2589// CHECK-NEXT:        "col": 8,2590// CHECK-NEXT:        "tokLen": 12591// CHECK-NEXT:       }2592// CHECK-NEXT:      },2593// CHECK-NEXT:      "type": {2594// CHECK-NEXT:       "qualType": "int"2595// CHECK-NEXT:      },2596// CHECK-NEXT:      "valueCategory": "prvalue",2597// CHECK-NEXT:      "opcode": ">>",2598// CHECK-NEXT:      "inner": [2599// CHECK-NEXT:       {2600// CHECK-NEXT:        "id": "0x{{.*}}",2601// CHECK-NEXT:        "kind": "ImplicitCastExpr",2602// CHECK-NEXT:        "range": {2603// CHECK-NEXT:         "begin": {2604// CHECK-NEXT:          "offset": {{[0-9]+}},2605// CHECK-NEXT:          "col": 3,2606// CHECK-NEXT:          "tokLen": 12607// CHECK-NEXT:         },2608// CHECK-NEXT:         "end": {2609// CHECK-NEXT:          "offset": {{[0-9]+}},2610// CHECK-NEXT:          "col": 3,2611// CHECK-NEXT:          "tokLen": 12612// CHECK-NEXT:         }2613// CHECK-NEXT:        },2614// CHECK-NEXT:        "type": {2615// CHECK-NEXT:         "qualType": "int"2616// CHECK-NEXT:        },2617// CHECK-NEXT:        "valueCategory": "prvalue",2618// CHECK-NEXT:        "castKind": "LValueToRValue",2619// CHECK-NEXT:        "inner": [2620// CHECK-NEXT:         {2621// CHECK-NEXT:          "id": "0x{{.*}}",2622// CHECK-NEXT:          "kind": "DeclRefExpr",2623// CHECK-NEXT:          "range": {2624// CHECK-NEXT:           "begin": {2625// CHECK-NEXT:            "offset": {{[0-9]+}},2626// CHECK-NEXT:            "col": 3,2627// CHECK-NEXT:            "tokLen": 12628// CHECK-NEXT:           },2629// CHECK-NEXT:           "end": {2630// CHECK-NEXT:            "offset": {{[0-9]+}},2631// CHECK-NEXT:            "col": 3,2632// CHECK-NEXT:            "tokLen": 12633// CHECK-NEXT:           }2634// CHECK-NEXT:          },2635// CHECK-NEXT:          "type": {2636// CHECK-NEXT:           "qualType": "int"2637// CHECK-NEXT:          },2638// CHECK-NEXT:          "valueCategory": "lvalue",2639// CHECK-NEXT:          "referencedDecl": {2640// CHECK-NEXT:           "id": "0x{{.*}}",2641// CHECK-NEXT:           "kind": "ParmVarDecl",2642// CHECK-NEXT:           "name": "a",2643// CHECK-NEXT:           "type": {2644// CHECK-NEXT:            "qualType": "int"2645// CHECK-NEXT:           }2646// CHECK-NEXT:          }2647// CHECK-NEXT:         }2648// CHECK-NEXT:        ]2649// CHECK-NEXT:       },2650// CHECK-NEXT:       {2651// CHECK-NEXT:        "id": "0x{{.*}}",2652// CHECK-NEXT:        "kind": "ImplicitCastExpr",2653// CHECK-NEXT:        "range": {2654// CHECK-NEXT:         "begin": {2655// CHECK-NEXT:          "offset": {{[0-9]+}},2656// CHECK-NEXT:          "col": 8,2657// CHECK-NEXT:          "tokLen": 12658// CHECK-NEXT:         },2659// CHECK-NEXT:         "end": {2660// CHECK-NEXT:          "offset": {{[0-9]+}},2661// CHECK-NEXT:          "col": 8,2662// CHECK-NEXT:          "tokLen": 12663// CHECK-NEXT:         }2664// CHECK-NEXT:        },2665// CHECK-NEXT:        "type": {2666// CHECK-NEXT:         "qualType": "int"2667// CHECK-NEXT:        },2668// CHECK-NEXT:        "valueCategory": "prvalue",2669// CHECK-NEXT:        "castKind": "LValueToRValue",2670// CHECK-NEXT:        "inner": [2671// CHECK-NEXT:         {2672// CHECK-NEXT:          "id": "0x{{.*}}",2673// CHECK-NEXT:          "kind": "DeclRefExpr",2674// CHECK-NEXT:          "range": {2675// CHECK-NEXT:           "begin": {2676// CHECK-NEXT:            "offset": {{[0-9]+}},2677// CHECK-NEXT:            "col": 8,2678// CHECK-NEXT:            "tokLen": 12679// CHECK-NEXT:           },2680// CHECK-NEXT:           "end": {2681// CHECK-NEXT:            "offset": {{[0-9]+}},2682// CHECK-NEXT:            "col": 8,2683// CHECK-NEXT:            "tokLen": 12684// CHECK-NEXT:           }2685// CHECK-NEXT:          },2686// CHECK-NEXT:          "type": {2687// CHECK-NEXT:           "qualType": "int"2688// CHECK-NEXT:          },2689// CHECK-NEXT:          "valueCategory": "lvalue",2690// CHECK-NEXT:          "referencedDecl": {2691// CHECK-NEXT:           "id": "0x{{.*}}",2692// CHECK-NEXT:           "kind": "ParmVarDecl",2693// CHECK-NEXT:           "name": "b",2694// CHECK-NEXT:           "type": {2695// CHECK-NEXT:            "qualType": "int"2696// CHECK-NEXT:           }2697// CHECK-NEXT:          }2698// CHECK-NEXT:         }2699// CHECK-NEXT:        ]2700// CHECK-NEXT:       }2701// CHECK-NEXT:      ]2702// CHECK-NEXT:     },2703// CHECK-NEXT:     {2704// CHECK-NEXT:      "id": "0x{{.*}}",2705// CHECK-NEXT:      "kind": "BinaryOperator",2706// CHECK-NEXT:      "range": {2707// CHECK-NEXT:       "begin": {2708// CHECK-NEXT:        "offset": {{[0-9]+}},2709// CHECK-NEXT:        "line": 42,2710// CHECK-NEXT:        "col": 3,2711// CHECK-NEXT:        "tokLen": 12712// CHECK-NEXT:       },2713// CHECK-NEXT:       "end": {2714// CHECK-NEXT:        "offset": {{[0-9]+}},2715// CHECK-NEXT:        "col": 7,2716// CHECK-NEXT:        "tokLen": 12717// CHECK-NEXT:       }2718// CHECK-NEXT:      },2719// CHECK-NEXT:      "type": {2720// CHECK-NEXT:       "qualType": "int"2721// CHECK-NEXT:      },2722// CHECK-NEXT:      "valueCategory": "prvalue",2723// CHECK-NEXT:      "opcode": "+",2724// CHECK-NEXT:      "inner": [2725// CHECK-NEXT:       {2726// CHECK-NEXT:        "id": "0x{{.*}}",2727// CHECK-NEXT:        "kind": "ImplicitCastExpr",2728// CHECK-NEXT:        "range": {2729// CHECK-NEXT:         "begin": {2730// CHECK-NEXT:          "offset": {{[0-9]+}},2731// CHECK-NEXT:          "col": 3,2732// CHECK-NEXT:          "tokLen": 12733// CHECK-NEXT:         },2734// CHECK-NEXT:         "end": {2735// CHECK-NEXT:          "offset": {{[0-9]+}},2736// CHECK-NEXT:          "col": 3,2737// CHECK-NEXT:          "tokLen": 12738// CHECK-NEXT:         }2739// CHECK-NEXT:        },2740// CHECK-NEXT:        "type": {2741// CHECK-NEXT:         "qualType": "int"2742// CHECK-NEXT:        },2743// CHECK-NEXT:        "valueCategory": "prvalue",2744// CHECK-NEXT:        "castKind": "LValueToRValue",2745// CHECK-NEXT:        "inner": [2746// CHECK-NEXT:         {2747// CHECK-NEXT:          "id": "0x{{.*}}",2748// CHECK-NEXT:          "kind": "DeclRefExpr",2749// CHECK-NEXT:          "range": {2750// CHECK-NEXT:           "begin": {2751// CHECK-NEXT:            "offset": {{[0-9]+}},2752// CHECK-NEXT:            "col": 3,2753// CHECK-NEXT:            "tokLen": 12754// CHECK-NEXT:           },2755// CHECK-NEXT:           "end": {2756// CHECK-NEXT:            "offset": {{[0-9]+}},2757// CHECK-NEXT:            "col": 3,2758// CHECK-NEXT:            "tokLen": 12759// CHECK-NEXT:           }2760// CHECK-NEXT:          },2761// CHECK-NEXT:          "type": {2762// CHECK-NEXT:           "qualType": "int"2763// CHECK-NEXT:          },2764// CHECK-NEXT:          "valueCategory": "lvalue",2765// CHECK-NEXT:          "referencedDecl": {2766// CHECK-NEXT:           "id": "0x{{.*}}",2767// CHECK-NEXT:           "kind": "ParmVarDecl",2768// CHECK-NEXT:           "name": "a",2769// CHECK-NEXT:           "type": {2770// CHECK-NEXT:            "qualType": "int"2771// CHECK-NEXT:           }2772// CHECK-NEXT:          }2773// CHECK-NEXT:         }2774// CHECK-NEXT:        ]2775// CHECK-NEXT:       },2776// CHECK-NEXT:       {2777// CHECK-NEXT:        "id": "0x{{.*}}",2778// CHECK-NEXT:        "kind": "ImplicitCastExpr",2779// CHECK-NEXT:        "range": {2780// CHECK-NEXT:         "begin": {2781// CHECK-NEXT:          "offset": {{[0-9]+}},2782// CHECK-NEXT:          "col": 7,2783// CHECK-NEXT:          "tokLen": 12784// CHECK-NEXT:         },2785// CHECK-NEXT:         "end": {2786// CHECK-NEXT:          "offset": {{[0-9]+}},2787// CHECK-NEXT:          "col": 7,2788// CHECK-NEXT:          "tokLen": 12789// CHECK-NEXT:         }2790// CHECK-NEXT:        },2791// CHECK-NEXT:        "type": {2792// CHECK-NEXT:         "qualType": "int"2793// CHECK-NEXT:        },2794// CHECK-NEXT:        "valueCategory": "prvalue",2795// CHECK-NEXT:        "castKind": "LValueToRValue",2796// CHECK-NEXT:        "inner": [2797// CHECK-NEXT:         {2798// CHECK-NEXT:          "id": "0x{{.*}}",2799// CHECK-NEXT:          "kind": "DeclRefExpr",2800// CHECK-NEXT:          "range": {2801// CHECK-NEXT:           "begin": {2802// CHECK-NEXT:            "offset": {{[0-9]+}},2803// CHECK-NEXT:            "col": 7,2804// CHECK-NEXT:            "tokLen": 12805// CHECK-NEXT:           },2806// CHECK-NEXT:           "end": {2807// CHECK-NEXT:            "offset": {{[0-9]+}},2808// CHECK-NEXT:            "col": 7,2809// CHECK-NEXT:            "tokLen": 12810// CHECK-NEXT:           }2811// CHECK-NEXT:          },2812// CHECK-NEXT:          "type": {2813// CHECK-NEXT:           "qualType": "int"2814// CHECK-NEXT:          },2815// CHECK-NEXT:          "valueCategory": "lvalue",2816// CHECK-NEXT:          "referencedDecl": {2817// CHECK-NEXT:           "id": "0x{{.*}}",2818// CHECK-NEXT:           "kind": "ParmVarDecl",2819// CHECK-NEXT:           "name": "b",2820// CHECK-NEXT:           "type": {2821// CHECK-NEXT:            "qualType": "int"2822// CHECK-NEXT:           }2823// CHECK-NEXT:          }2824// CHECK-NEXT:         }2825// CHECK-NEXT:        ]2826// CHECK-NEXT:       }2827// CHECK-NEXT:      ]2828// CHECK-NEXT:     },2829// CHECK-NEXT:     {2830// CHECK-NEXT:      "id": "0x{{.*}}",2831// CHECK-NEXT:      "kind": "BinaryOperator",2832// CHECK-NEXT:      "range": {2833// CHECK-NEXT:       "begin": {2834// CHECK-NEXT:        "offset": {{[0-9]+}},2835// CHECK-NEXT:        "line": 43,2836// CHECK-NEXT:        "col": 3,2837// CHECK-NEXT:        "tokLen": 12838// CHECK-NEXT:       },2839// CHECK-NEXT:       "end": {2840// CHECK-NEXT:        "offset": {{[0-9]+}},2841// CHECK-NEXT:        "col": 7,2842// CHECK-NEXT:        "tokLen": 12843// CHECK-NEXT:       }2844// CHECK-NEXT:      },2845// CHECK-NEXT:      "type": {2846// CHECK-NEXT:       "qualType": "int"2847// CHECK-NEXT:      },2848// CHECK-NEXT:      "valueCategory": "prvalue",2849// CHECK-NEXT:      "opcode": "-",2850// CHECK-NEXT:      "inner": [2851// CHECK-NEXT:       {2852// CHECK-NEXT:        "id": "0x{{.*}}",2853// CHECK-NEXT:        "kind": "ImplicitCastExpr",2854// CHECK-NEXT:        "range": {2855// CHECK-NEXT:         "begin": {2856// CHECK-NEXT:          "offset": {{[0-9]+}},2857// CHECK-NEXT:          "col": 3,2858// CHECK-NEXT:          "tokLen": 12859// CHECK-NEXT:         },2860// CHECK-NEXT:         "end": {2861// CHECK-NEXT:          "offset": {{[0-9]+}},2862// CHECK-NEXT:          "col": 3,2863// CHECK-NEXT:          "tokLen": 12864// CHECK-NEXT:         }2865// CHECK-NEXT:        },2866// CHECK-NEXT:        "type": {2867// CHECK-NEXT:         "qualType": "int"2868// CHECK-NEXT:        },2869// CHECK-NEXT:        "valueCategory": "prvalue",2870// CHECK-NEXT:        "castKind": "LValueToRValue",2871// CHECK-NEXT:        "inner": [2872// CHECK-NEXT:         {2873// CHECK-NEXT:          "id": "0x{{.*}}",2874// CHECK-NEXT:          "kind": "DeclRefExpr",2875// CHECK-NEXT:          "range": {2876// CHECK-NEXT:           "begin": {2877// CHECK-NEXT:            "offset": {{[0-9]+}},2878// CHECK-NEXT:            "col": 3,2879// CHECK-NEXT:            "tokLen": 12880// CHECK-NEXT:           },2881// CHECK-NEXT:           "end": {2882// CHECK-NEXT:            "offset": {{[0-9]+}},2883// CHECK-NEXT:            "col": 3,2884// CHECK-NEXT:            "tokLen": 12885// CHECK-NEXT:           }2886// CHECK-NEXT:          },2887// CHECK-NEXT:          "type": {2888// CHECK-NEXT:           "qualType": "int"2889// CHECK-NEXT:          },2890// CHECK-NEXT:          "valueCategory": "lvalue",2891// CHECK-NEXT:          "referencedDecl": {2892// CHECK-NEXT:           "id": "0x{{.*}}",2893// CHECK-NEXT:           "kind": "ParmVarDecl",2894// CHECK-NEXT:           "name": "a",2895// CHECK-NEXT:           "type": {2896// CHECK-NEXT:            "qualType": "int"2897// CHECK-NEXT:           }2898// CHECK-NEXT:          }2899// CHECK-NEXT:         }2900// CHECK-NEXT:        ]2901// CHECK-NEXT:       },2902// CHECK-NEXT:       {2903// CHECK-NEXT:        "id": "0x{{.*}}",2904// CHECK-NEXT:        "kind": "ImplicitCastExpr",2905// CHECK-NEXT:        "range": {2906// CHECK-NEXT:         "begin": {2907// CHECK-NEXT:          "offset": {{[0-9]+}},2908// CHECK-NEXT:          "col": 7,2909// CHECK-NEXT:          "tokLen": 12910// CHECK-NEXT:         },2911// CHECK-NEXT:         "end": {2912// CHECK-NEXT:          "offset": {{[0-9]+}},2913// CHECK-NEXT:          "col": 7,2914// CHECK-NEXT:          "tokLen": 12915// CHECK-NEXT:         }2916// CHECK-NEXT:        },2917// CHECK-NEXT:        "type": {2918// CHECK-NEXT:         "qualType": "int"2919// CHECK-NEXT:        },2920// CHECK-NEXT:        "valueCategory": "prvalue",2921// CHECK-NEXT:        "castKind": "LValueToRValue",2922// CHECK-NEXT:        "inner": [2923// CHECK-NEXT:         {2924// CHECK-NEXT:          "id": "0x{{.*}}",2925// CHECK-NEXT:          "kind": "DeclRefExpr",2926// CHECK-NEXT:          "range": {2927// CHECK-NEXT:           "begin": {2928// CHECK-NEXT:            "offset": {{[0-9]+}},2929// CHECK-NEXT:            "col": 7,2930// CHECK-NEXT:            "tokLen": 12931// CHECK-NEXT:           },2932// CHECK-NEXT:           "end": {2933// CHECK-NEXT:            "offset": {{[0-9]+}},2934// CHECK-NEXT:            "col": 7,2935// CHECK-NEXT:            "tokLen": 12936// CHECK-NEXT:           }2937// CHECK-NEXT:          },2938// CHECK-NEXT:          "type": {2939// CHECK-NEXT:           "qualType": "int"2940// CHECK-NEXT:          },2941// CHECK-NEXT:          "valueCategory": "lvalue",2942// CHECK-NEXT:          "referencedDecl": {2943// CHECK-NEXT:           "id": "0x{{.*}}",2944// CHECK-NEXT:           "kind": "ParmVarDecl",2945// CHECK-NEXT:           "name": "b",2946// CHECK-NEXT:           "type": {2947// CHECK-NEXT:            "qualType": "int"2948// CHECK-NEXT:           }2949// CHECK-NEXT:          }2950// CHECK-NEXT:         }2951// CHECK-NEXT:        ]2952// CHECK-NEXT:       }2953// CHECK-NEXT:      ]2954// CHECK-NEXT:     },2955// CHECK-NEXT:     {2956// CHECK-NEXT:      "id": "0x{{.*}}",2957// CHECK-NEXT:      "kind": "BinaryOperator",2958// CHECK-NEXT:      "range": {2959// CHECK-NEXT:       "begin": {2960// CHECK-NEXT:        "offset": {{[0-9]+}},2961// CHECK-NEXT:        "line": 46,2962// CHECK-NEXT:        "col": 3,2963// CHECK-NEXT:        "tokLen": 12964// CHECK-NEXT:       },2965// CHECK-NEXT:       "end": {2966// CHECK-NEXT:        "offset": {{[0-9]+}},2967// CHECK-NEXT:        "col": 7,2968// CHECK-NEXT:        "tokLen": 12969// CHECK-NEXT:       }2970// CHECK-NEXT:      },2971// CHECK-NEXT:      "type": {2972// CHECK-NEXT:       "qualType": "int"2973// CHECK-NEXT:      },2974// CHECK-NEXT:      "valueCategory": "prvalue",2975// CHECK-NEXT:      "opcode": "*",2976// CHECK-NEXT:      "inner": [2977// CHECK-NEXT:       {2978// CHECK-NEXT:        "id": "0x{{.*}}",2979// CHECK-NEXT:        "kind": "ImplicitCastExpr",2980// CHECK-NEXT:        "range": {2981// CHECK-NEXT:         "begin": {2982// CHECK-NEXT:          "offset": {{[0-9]+}},2983// CHECK-NEXT:          "col": 3,2984// CHECK-NEXT:          "tokLen": 12985// CHECK-NEXT:         },2986// CHECK-NEXT:         "end": {2987// CHECK-NEXT:          "offset": {{[0-9]+}},2988// CHECK-NEXT:          "col": 3,2989// CHECK-NEXT:          "tokLen": 12990// CHECK-NEXT:         }2991// CHECK-NEXT:        },2992// CHECK-NEXT:        "type": {2993// CHECK-NEXT:         "qualType": "int"2994// CHECK-NEXT:        },2995// CHECK-NEXT:        "valueCategory": "prvalue",2996// CHECK-NEXT:        "castKind": "LValueToRValue",2997// CHECK-NEXT:        "inner": [2998// CHECK-NEXT:         {2999// CHECK-NEXT:          "id": "0x{{.*}}",3000// CHECK-NEXT:          "kind": "DeclRefExpr",3001// CHECK-NEXT:          "range": {3002// CHECK-NEXT:           "begin": {3003// CHECK-NEXT:            "offset": {{[0-9]+}},3004// CHECK-NEXT:            "col": 3,3005// CHECK-NEXT:            "tokLen": 13006// CHECK-NEXT:           },3007// CHECK-NEXT:           "end": {3008// CHECK-NEXT:            "offset": {{[0-9]+}},3009// CHECK-NEXT:            "col": 3,3010// CHECK-NEXT:            "tokLen": 13011// CHECK-NEXT:           }3012// CHECK-NEXT:          },3013// CHECK-NEXT:          "type": {3014// CHECK-NEXT:           "qualType": "int"3015// CHECK-NEXT:          },3016// CHECK-NEXT:          "valueCategory": "lvalue",3017// CHECK-NEXT:          "referencedDecl": {3018// CHECK-NEXT:           "id": "0x{{.*}}",3019// CHECK-NEXT:           "kind": "ParmVarDecl",3020// CHECK-NEXT:           "name": "a",3021// CHECK-NEXT:           "type": {3022// CHECK-NEXT:            "qualType": "int"3023// CHECK-NEXT:           }3024// CHECK-NEXT:          }3025// CHECK-NEXT:         }3026// CHECK-NEXT:        ]3027// CHECK-NEXT:       },3028// CHECK-NEXT:       {3029// CHECK-NEXT:        "id": "0x{{.*}}",3030// CHECK-NEXT:        "kind": "ImplicitCastExpr",3031// CHECK-NEXT:        "range": {3032// CHECK-NEXT:         "begin": {3033// CHECK-NEXT:          "offset": {{[0-9]+}},3034// CHECK-NEXT:          "col": 7,3035// CHECK-NEXT:          "tokLen": 13036// CHECK-NEXT:         },3037// CHECK-NEXT:         "end": {3038// CHECK-NEXT:          "offset": {{[0-9]+}},3039// CHECK-NEXT:          "col": 7,3040// CHECK-NEXT:          "tokLen": 13041// CHECK-NEXT:         }3042// CHECK-NEXT:        },3043// CHECK-NEXT:        "type": {3044// CHECK-NEXT:         "qualType": "int"3045// CHECK-NEXT:        },3046// CHECK-NEXT:        "valueCategory": "prvalue",3047// CHECK-NEXT:        "castKind": "LValueToRValue",3048// CHECK-NEXT:        "inner": [3049// CHECK-NEXT:         {3050// CHECK-NEXT:          "id": "0x{{.*}}",3051// CHECK-NEXT:          "kind": "DeclRefExpr",3052// CHECK-NEXT:          "range": {3053// CHECK-NEXT:           "begin": {3054// CHECK-NEXT:            "offset": {{[0-9]+}},3055// CHECK-NEXT:            "col": 7,3056// CHECK-NEXT:            "tokLen": 13057// CHECK-NEXT:           },3058// CHECK-NEXT:           "end": {3059// CHECK-NEXT:            "offset": {{[0-9]+}},3060// CHECK-NEXT:            "col": 7,3061// CHECK-NEXT:            "tokLen": 13062// CHECK-NEXT:           }3063// CHECK-NEXT:          },3064// CHECK-NEXT:          "type": {3065// CHECK-NEXT:           "qualType": "int"3066// CHECK-NEXT:          },3067// CHECK-NEXT:          "valueCategory": "lvalue",3068// CHECK-NEXT:          "referencedDecl": {3069// CHECK-NEXT:           "id": "0x{{.*}}",3070// CHECK-NEXT:           "kind": "ParmVarDecl",3071// CHECK-NEXT:           "name": "b",3072// CHECK-NEXT:           "type": {3073// CHECK-NEXT:            "qualType": "int"3074// CHECK-NEXT:           }3075// CHECK-NEXT:          }3076// CHECK-NEXT:         }3077// CHECK-NEXT:        ]3078// CHECK-NEXT:       }3079// CHECK-NEXT:      ]3080// CHECK-NEXT:     },3081// CHECK-NEXT:     {3082// CHECK-NEXT:      "id": "0x{{.*}}",3083// CHECK-NEXT:      "kind": "BinaryOperator",3084// CHECK-NEXT:      "range": {3085// CHECK-NEXT:       "begin": {3086// CHECK-NEXT:        "offset": {{[0-9]+}},3087// CHECK-NEXT:        "line": 47,3088// CHECK-NEXT:        "col": 3,3089// CHECK-NEXT:        "tokLen": 13090// CHECK-NEXT:       },3091// CHECK-NEXT:       "end": {3092// CHECK-NEXT:        "offset": {{[0-9]+}},3093// CHECK-NEXT:        "col": 7,3094// CHECK-NEXT:        "tokLen": 13095// CHECK-NEXT:       }3096// CHECK-NEXT:      },3097// CHECK-NEXT:      "type": {3098// CHECK-NEXT:       "qualType": "int"3099// CHECK-NEXT:      },3100// CHECK-NEXT:      "valueCategory": "prvalue",3101// CHECK-NEXT:      "opcode": "/",3102// CHECK-NEXT:      "inner": [3103// CHECK-NEXT:       {3104// CHECK-NEXT:        "id": "0x{{.*}}",3105// CHECK-NEXT:        "kind": "ImplicitCastExpr",3106// CHECK-NEXT:        "range": {3107// CHECK-NEXT:         "begin": {3108// CHECK-NEXT:          "offset": {{[0-9]+}},3109// CHECK-NEXT:          "col": 3,3110// CHECK-NEXT:          "tokLen": 13111// CHECK-NEXT:         },3112// CHECK-NEXT:         "end": {3113// CHECK-NEXT:          "offset": {{[0-9]+}},3114// CHECK-NEXT:          "col": 3,3115// CHECK-NEXT:          "tokLen": 13116// CHECK-NEXT:         }3117// CHECK-NEXT:        },3118// CHECK-NEXT:        "type": {3119// CHECK-NEXT:         "qualType": "int"3120// CHECK-NEXT:        },3121// CHECK-NEXT:        "valueCategory": "prvalue",3122// CHECK-NEXT:        "castKind": "LValueToRValue",3123// CHECK-NEXT:        "inner": [3124// CHECK-NEXT:         {3125// CHECK-NEXT:          "id": "0x{{.*}}",3126// CHECK-NEXT:          "kind": "DeclRefExpr",3127// CHECK-NEXT:          "range": {3128// CHECK-NEXT:           "begin": {3129// CHECK-NEXT:            "offset": {{[0-9]+}},3130// CHECK-NEXT:            "col": 3,3131// CHECK-NEXT:            "tokLen": 13132// CHECK-NEXT:           },3133// CHECK-NEXT:           "end": {3134// CHECK-NEXT:            "offset": {{[0-9]+}},3135// CHECK-NEXT:            "col": 3,3136// CHECK-NEXT:            "tokLen": 13137// CHECK-NEXT:           }3138// CHECK-NEXT:          },3139// CHECK-NEXT:          "type": {3140// CHECK-NEXT:           "qualType": "int"3141// CHECK-NEXT:          },3142// CHECK-NEXT:          "valueCategory": "lvalue",3143// CHECK-NEXT:          "referencedDecl": {3144// CHECK-NEXT:           "id": "0x{{.*}}",3145// CHECK-NEXT:           "kind": "ParmVarDecl",3146// CHECK-NEXT:           "name": "a",3147// CHECK-NEXT:           "type": {3148// CHECK-NEXT:            "qualType": "int"3149// CHECK-NEXT:           }3150// CHECK-NEXT:          }3151// CHECK-NEXT:         }3152// CHECK-NEXT:        ]3153// CHECK-NEXT:       },3154// CHECK-NEXT:       {3155// CHECK-NEXT:        "id": "0x{{.*}}",3156// CHECK-NEXT:        "kind": "ImplicitCastExpr",3157// CHECK-NEXT:        "range": {3158// CHECK-NEXT:         "begin": {3159// CHECK-NEXT:          "offset": {{[0-9]+}},3160// CHECK-NEXT:          "col": 7,3161// CHECK-NEXT:          "tokLen": 13162// CHECK-NEXT:         },3163// CHECK-NEXT:         "end": {3164// CHECK-NEXT:          "offset": {{[0-9]+}},3165// CHECK-NEXT:          "col": 7,3166// CHECK-NEXT:          "tokLen": 13167// CHECK-NEXT:         }3168// CHECK-NEXT:        },3169// CHECK-NEXT:        "type": {3170// CHECK-NEXT:         "qualType": "int"3171// CHECK-NEXT:        },3172// CHECK-NEXT:        "valueCategory": "prvalue",3173// CHECK-NEXT:        "castKind": "LValueToRValue",3174// CHECK-NEXT:        "inner": [3175// CHECK-NEXT:         {3176// CHECK-NEXT:          "id": "0x{{.*}}",3177// CHECK-NEXT:          "kind": "DeclRefExpr",3178// CHECK-NEXT:          "range": {3179// CHECK-NEXT:           "begin": {3180// CHECK-NEXT:            "offset": {{[0-9]+}},3181// CHECK-NEXT:            "col": 7,3182// CHECK-NEXT:            "tokLen": 13183// CHECK-NEXT:           },3184// CHECK-NEXT:           "end": {3185// CHECK-NEXT:            "offset": {{[0-9]+}},3186// CHECK-NEXT:            "col": 7,3187// CHECK-NEXT:            "tokLen": 13188// CHECK-NEXT:           }3189// CHECK-NEXT:          },3190// CHECK-NEXT:          "type": {3191// CHECK-NEXT:           "qualType": "int"3192// CHECK-NEXT:          },3193// CHECK-NEXT:          "valueCategory": "lvalue",3194// CHECK-NEXT:          "referencedDecl": {3195// CHECK-NEXT:           "id": "0x{{.*}}",3196// CHECK-NEXT:           "kind": "ParmVarDecl",3197// CHECK-NEXT:           "name": "b",3198// CHECK-NEXT:           "type": {3199// CHECK-NEXT:            "qualType": "int"3200// CHECK-NEXT:           }3201// CHECK-NEXT:          }3202// CHECK-NEXT:         }3203// CHECK-NEXT:        ]3204// CHECK-NEXT:       }3205// CHECK-NEXT:      ]3206// CHECK-NEXT:     },3207// CHECK-NEXT:     {3208// CHECK-NEXT:      "id": "0x{{.*}}",3209// CHECK-NEXT:      "kind": "BinaryOperator",3210// CHECK-NEXT:      "range": {3211// CHECK-NEXT:       "begin": {3212// CHECK-NEXT:        "offset": {{[0-9]+}},3213// CHECK-NEXT:        "line": 48,3214// CHECK-NEXT:        "col": 3,3215// CHECK-NEXT:        "tokLen": 13216// CHECK-NEXT:       },3217// CHECK-NEXT:       "end": {3218// CHECK-NEXT:        "offset": {{[0-9]+}},3219// CHECK-NEXT:        "col": 7,3220// CHECK-NEXT:        "tokLen": 13221// CHECK-NEXT:       }3222// CHECK-NEXT:      },3223// CHECK-NEXT:      "type": {3224// CHECK-NEXT:       "qualType": "int"3225// CHECK-NEXT:      },3226// CHECK-NEXT:      "valueCategory": "prvalue",3227// CHECK-NEXT:      "opcode": "%",3228// CHECK-NEXT:      "inner": [3229// CHECK-NEXT:       {3230// CHECK-NEXT:        "id": "0x{{.*}}",3231// CHECK-NEXT:        "kind": "ImplicitCastExpr",3232// CHECK-NEXT:        "range": {3233// CHECK-NEXT:         "begin": {3234// CHECK-NEXT:          "offset": {{[0-9]+}},3235// CHECK-NEXT:          "col": 3,3236// CHECK-NEXT:          "tokLen": 13237// CHECK-NEXT:         },3238// CHECK-NEXT:         "end": {3239// CHECK-NEXT:          "offset": {{[0-9]+}},3240// CHECK-NEXT:          "col": 3,3241// CHECK-NEXT:          "tokLen": 13242// CHECK-NEXT:         }3243// CHECK-NEXT:        },3244// CHECK-NEXT:        "type": {3245// CHECK-NEXT:         "qualType": "int"3246// CHECK-NEXT:        },3247// CHECK-NEXT:        "valueCategory": "prvalue",3248// CHECK-NEXT:        "castKind": "LValueToRValue",3249// CHECK-NEXT:        "inner": [3250// CHECK-NEXT:         {3251// CHECK-NEXT:          "id": "0x{{.*}}",3252// CHECK-NEXT:          "kind": "DeclRefExpr",3253// CHECK-NEXT:          "range": {3254// CHECK-NEXT:           "begin": {3255// CHECK-NEXT:            "offset": {{[0-9]+}},3256// CHECK-NEXT:            "col": 3,3257// CHECK-NEXT:            "tokLen": 13258// CHECK-NEXT:           },3259// CHECK-NEXT:           "end": {3260// CHECK-NEXT:            "offset": {{[0-9]+}},3261// CHECK-NEXT:            "col": 3,3262// CHECK-NEXT:            "tokLen": 13263// CHECK-NEXT:           }3264// CHECK-NEXT:          },3265// CHECK-NEXT:          "type": {3266// CHECK-NEXT:           "qualType": "int"3267// CHECK-NEXT:          },3268// CHECK-NEXT:          "valueCategory": "lvalue",3269// CHECK-NEXT:          "referencedDecl": {3270// CHECK-NEXT:           "id": "0x{{.*}}",3271// CHECK-NEXT:           "kind": "ParmVarDecl",3272// CHECK-NEXT:           "name": "a",3273// CHECK-NEXT:           "type": {3274// CHECK-NEXT:            "qualType": "int"3275// CHECK-NEXT:           }3276// CHECK-NEXT:          }3277// CHECK-NEXT:         }3278// CHECK-NEXT:        ]3279// CHECK-NEXT:       },3280// CHECK-NEXT:       {3281// CHECK-NEXT:        "id": "0x{{.*}}",3282// CHECK-NEXT:        "kind": "ImplicitCastExpr",3283// CHECK-NEXT:        "range": {3284// CHECK-NEXT:         "begin": {3285// CHECK-NEXT:          "offset": {{[0-9]+}},3286// CHECK-NEXT:          "col": 7,3287// CHECK-NEXT:          "tokLen": 13288// CHECK-NEXT:         },3289// CHECK-NEXT:         "end": {3290// CHECK-NEXT:          "offset": {{[0-9]+}},3291// CHECK-NEXT:          "col": 7,3292// CHECK-NEXT:          "tokLen": 13293// CHECK-NEXT:         }3294// CHECK-NEXT:        },3295// CHECK-NEXT:        "type": {3296// CHECK-NEXT:         "qualType": "int"3297// CHECK-NEXT:        },3298// CHECK-NEXT:        "valueCategory": "prvalue",3299// CHECK-NEXT:        "castKind": "LValueToRValue",3300// CHECK-NEXT:        "inner": [3301// CHECK-NEXT:         {3302// CHECK-NEXT:          "id": "0x{{.*}}",3303// CHECK-NEXT:          "kind": "DeclRefExpr",3304// CHECK-NEXT:          "range": {3305// CHECK-NEXT:           "begin": {3306// CHECK-NEXT:            "offset": {{[0-9]+}},3307// CHECK-NEXT:            "col": 7,3308// CHECK-NEXT:            "tokLen": 13309// CHECK-NEXT:           },3310// CHECK-NEXT:           "end": {3311// CHECK-NEXT:            "offset": {{[0-9]+}},3312// CHECK-NEXT:            "col": 7,3313// CHECK-NEXT:            "tokLen": 13314// CHECK-NEXT:           }3315// CHECK-NEXT:          },3316// CHECK-NEXT:          "type": {3317// CHECK-NEXT:           "qualType": "int"3318// CHECK-NEXT:          },3319// CHECK-NEXT:          "valueCategory": "lvalue",3320// CHECK-NEXT:          "referencedDecl": {3321// CHECK-NEXT:           "id": "0x{{.*}}",3322// CHECK-NEXT:           "kind": "ParmVarDecl",3323// CHECK-NEXT:           "name": "b",3324// CHECK-NEXT:           "type": {3325// CHECK-NEXT:            "qualType": "int"3326// CHECK-NEXT:           }3327// CHECK-NEXT:          }3328// CHECK-NEXT:         }3329// CHECK-NEXT:        ]3330// CHECK-NEXT:       }3331// CHECK-NEXT:      ]3332// CHECK-NEXT:     }3333// CHECK-NEXT:    ]3334// CHECK-NEXT:   }3335// CHECK-NEXT:  ]3336// CHECK-NEXT: }3337 3338 3339// CHECK-NOT: {{^}}Dumping3340// CHECK:  "kind": "FunctionDecl",3341// CHECK-NEXT:  "loc": {3342// CHECK-NEXT:   "offset": {{[0-9]+}},3343// CHECK-NEXT:   "line": 51,3344// CHECK-NEXT:   "col": 6,3345// CHECK-NEXT:   "tokLen": 143346// CHECK-NEXT:  },3347// CHECK-NEXT:  "range": {3348// CHECK-NEXT:   "begin": {3349// CHECK-NEXT:    "offset": {{[0-9]+}},3350// CHECK-NEXT:    "col": 1,3351// CHECK-NEXT:    "tokLen": 43352// CHECK-NEXT:   },3353// CHECK-NEXT:   "end": {3354// CHECK-NEXT:    "offset": {{[0-9]+}},3355// CHECK-NEXT:    "line": 66,3356// CHECK-NEXT:    "col": 1,3357// CHECK-NEXT:    "tokLen": 13358// CHECK-NEXT:   }3359// CHECK-NEXT:  },3360// CHECK-NEXT:  "isUsed": true,3361// CHECK-NEXT:  "name": "UnaryOperators",3362// CHECK-NEXT:  "mangledName": "UnaryOperators",3363// CHECK-NEXT:  "type": {3364// CHECK-NEXT:   "qualType": "void (int, int *)"3365// CHECK-NEXT:  },3366// CHECK-NEXT:  "inner": [3367// CHECK-NEXT:   {3368// CHECK-NEXT:    "id": "0x{{.*}}",3369// CHECK-NEXT:    "kind": "ParmVarDecl",3370// CHECK-NEXT:    "loc": {3371// CHECK-NEXT:     "offset": {{[0-9]+}},3372// CHECK-NEXT:     "line": 51,3373// CHECK-NEXT:     "col": 25,3374// CHECK-NEXT:     "tokLen": 13375// CHECK-NEXT:    },3376// CHECK-NEXT:    "range": {3377// CHECK-NEXT:     "begin": {3378// CHECK-NEXT:      "offset": {{[0-9]+}},3379// CHECK-NEXT:      "col": 21,3380// CHECK-NEXT:      "tokLen": 33381// CHECK-NEXT:     },3382// CHECK-NEXT:     "end": {3383// CHECK-NEXT:      "offset": {{[0-9]+}},3384// CHECK-NEXT:      "col": 25,3385// CHECK-NEXT:      "tokLen": 13386// CHECK-NEXT:     }3387// CHECK-NEXT:    },3388// CHECK-NEXT:    "isUsed": true,3389// CHECK-NEXT:    "name": "a",3390// CHECK-NEXT:    "type": {3391// CHECK-NEXT:     "qualType": "int"3392// CHECK-NEXT:    }3393// CHECK-NEXT:   },3394// CHECK-NEXT:   {3395// CHECK-NEXT:    "id": "0x{{.*}}",3396// CHECK-NEXT:    "kind": "ParmVarDecl",3397// CHECK-NEXT:    "loc": {3398// CHECK-NEXT:     "offset": {{[0-9]+}},3399// CHECK-NEXT:     "col": 33,3400// CHECK-NEXT:     "tokLen": 13401// CHECK-NEXT:    },3402// CHECK-NEXT:    "range": {3403// CHECK-NEXT:     "begin": {3404// CHECK-NEXT:      "offset": {{[0-9]+}},3405// CHECK-NEXT:      "col": 28,3406// CHECK-NEXT:      "tokLen": 33407// CHECK-NEXT:     },3408// CHECK-NEXT:     "end": {3409// CHECK-NEXT:      "offset": {{[0-9]+}},3410// CHECK-NEXT:      "col": 33,3411// CHECK-NEXT:      "tokLen": 13412// CHECK-NEXT:     }3413// CHECK-NEXT:    },3414// CHECK-NEXT:    "isUsed": true,3415// CHECK-NEXT:    "name": "b",3416// CHECK-NEXT:    "type": {3417// CHECK-NEXT:     "qualType": "int *"3418// CHECK-NEXT:    }3419// CHECK-NEXT:   },3420// CHECK-NEXT:   {3421// CHECK-NEXT:    "id": "0x{{.*}}",3422// CHECK-NEXT:    "kind": "CompoundStmt",3423// CHECK-NEXT:    "range": {3424// CHECK-NEXT:     "begin": {3425// CHECK-NEXT:      "offset": {{[0-9]+}},3426// CHECK-NEXT:      "col": 36,3427// CHECK-NEXT:      "tokLen": 13428// CHECK-NEXT:     },3429// CHECK-NEXT:     "end": {3430// CHECK-NEXT:      "offset": {{[0-9]+}},3431// CHECK-NEXT:      "line": 66,3432// CHECK-NEXT:      "col": 1,3433// CHECK-NEXT:      "tokLen": 13434// CHECK-NEXT:     }3435// CHECK-NEXT:    },3436// CHECK-NEXT:    "inner": [3437// CHECK-NEXT:     {3438// CHECK-NEXT:      "id": "0x{{.*}}",3439// CHECK-NEXT:      "kind": "CStyleCastExpr",3440// CHECK-NEXT:      "range": {3441// CHECK-NEXT:       "begin": {3442// CHECK-NEXT:        "offset": {{[0-9]+}},3443// CHECK-NEXT:        "line": 53,3444// CHECK-NEXT:        "col": 3,3445// CHECK-NEXT:        "tokLen": 13446// CHECK-NEXT:       },3447// CHECK-NEXT:       "end": {3448// CHECK-NEXT:        "offset": {{[0-9]+}},3449// CHECK-NEXT:        "col": 10,3450// CHECK-NEXT:        "tokLen": 13451// CHECK-NEXT:       }3452// CHECK-NEXT:      },3453// CHECK-NEXT:      "type": {3454// CHECK-NEXT:       "qualType": "float"3455// CHECK-NEXT:      },3456// CHECK-NEXT:      "valueCategory": "prvalue",3457// CHECK-NEXT:      "castKind": "IntegralToFloating",3458// CHECK-NEXT:      "inner": [3459// CHECK-NEXT:       {3460// CHECK-NEXT:        "id": "0x{{.*}}",3461// CHECK-NEXT:        "kind": "ImplicitCastExpr",3462// CHECK-NEXT:        "range": {3463// CHECK-NEXT:         "begin": {3464// CHECK-NEXT:          "offset": {{[0-9]+}},3465// CHECK-NEXT:          "col": 10,3466// CHECK-NEXT:          "tokLen": 13467// CHECK-NEXT:         },3468// CHECK-NEXT:         "end": {3469// CHECK-NEXT:          "offset": {{[0-9]+}},3470// CHECK-NEXT:          "col": 10,3471// CHECK-NEXT:          "tokLen": 13472// CHECK-NEXT:         }3473// CHECK-NEXT:        },3474// CHECK-NEXT:        "type": {3475// CHECK-NEXT:         "qualType": "int"3476// CHECK-NEXT:        },3477// CHECK-NEXT:        "valueCategory": "prvalue",3478// CHECK-NEXT:        "castKind": "LValueToRValue",3479// CHECK-NEXT:        "isPartOfExplicitCast": true,3480// CHECK-NEXT:        "inner": [3481// CHECK-NEXT:         {3482// CHECK-NEXT:          "id": "0x{{.*}}",3483// CHECK-NEXT:          "kind": "DeclRefExpr",3484// CHECK-NEXT:          "range": {3485// CHECK-NEXT:           "begin": {3486// CHECK-NEXT:            "offset": {{[0-9]+}},3487// CHECK-NEXT:            "col": 10,3488// CHECK-NEXT:            "tokLen": 13489// CHECK-NEXT:           },3490// CHECK-NEXT:           "end": {3491// CHECK-NEXT:            "offset": {{[0-9]+}},3492// CHECK-NEXT:            "col": 10,3493// CHECK-NEXT:            "tokLen": 13494// CHECK-NEXT:           }3495// CHECK-NEXT:          },3496// CHECK-NEXT:          "type": {3497// CHECK-NEXT:           "qualType": "int"3498// CHECK-NEXT:          },3499// CHECK-NEXT:          "valueCategory": "lvalue",3500// CHECK-NEXT:          "referencedDecl": {3501// CHECK-NEXT:           "id": "0x{{.*}}",3502// CHECK-NEXT:           "kind": "ParmVarDecl",3503// CHECK-NEXT:           "name": "a",3504// CHECK-NEXT:           "type": {3505// CHECK-NEXT:            "qualType": "int"3506// CHECK-NEXT:           }3507// CHECK-NEXT:          }3508// CHECK-NEXT:         }3509// CHECK-NEXT:        ]3510// CHECK-NEXT:       }3511// CHECK-NEXT:      ]3512// CHECK-NEXT:     },3513// CHECK-NEXT:     {3514// CHECK-NEXT:      "id": "0x{{.*}}",3515// CHECK-NEXT:      "kind": "UnaryOperator",3516// CHECK-NEXT:      "range": {3517// CHECK-NEXT:       "begin": {3518// CHECK-NEXT:        "offset": {{[0-9]+}},3519// CHECK-NEXT:        "line": 57,3520// CHECK-NEXT:        "col": 3,3521// CHECK-NEXT:        "tokLen": 13522// CHECK-NEXT:       },3523// CHECK-NEXT:       "end": {3524// CHECK-NEXT:        "offset": {{[0-9]+}},3525// CHECK-NEXT:        "col": 4,3526// CHECK-NEXT:        "tokLen": 13527// CHECK-NEXT:       }3528// CHECK-NEXT:      },3529// CHECK-NEXT:      "type": {3530// CHECK-NEXT:       "qualType": "int"3531// CHECK-NEXT:      },3532// CHECK-NEXT:      "valueCategory": "prvalue",3533// CHECK-NEXT:      "isPostfix": false,3534// CHECK-NEXT:      "opcode": "-",3535// CHECK-NEXT:      "inner": [3536// CHECK-NEXT:       {3537// CHECK-NEXT:        "id": "0x{{.*}}",3538// CHECK-NEXT:        "kind": "ImplicitCastExpr",3539// CHECK-NEXT:        "range": {3540// CHECK-NEXT:         "begin": {3541// CHECK-NEXT:          "offset": {{[0-9]+}},3542// CHECK-NEXT:          "col": 4,3543// CHECK-NEXT:          "tokLen": 13544// CHECK-NEXT:         },3545// CHECK-NEXT:         "end": {3546// CHECK-NEXT:          "offset": {{[0-9]+}},3547// CHECK-NEXT:          "col": 4,3548// CHECK-NEXT:          "tokLen": 13549// CHECK-NEXT:         }3550// CHECK-NEXT:        },3551// CHECK-NEXT:        "type": {3552// CHECK-NEXT:         "qualType": "int"3553// CHECK-NEXT:        },3554// CHECK-NEXT:        "valueCategory": "prvalue",3555// CHECK-NEXT:        "castKind": "LValueToRValue",3556// CHECK-NEXT:        "inner": [3557// CHECK-NEXT:         {3558// CHECK-NEXT:          "id": "0x{{.*}}",3559// CHECK-NEXT:          "kind": "DeclRefExpr",3560// CHECK-NEXT:          "range": {3561// CHECK-NEXT:           "begin": {3562// CHECK-NEXT:            "offset": {{[0-9]+}},3563// CHECK-NEXT:            "col": 4,3564// CHECK-NEXT:            "tokLen": 13565// CHECK-NEXT:           },3566// CHECK-NEXT:           "end": {3567// CHECK-NEXT:            "offset": {{[0-9]+}},3568// CHECK-NEXT:            "col": 4,3569// CHECK-NEXT:            "tokLen": 13570// CHECK-NEXT:           }3571// CHECK-NEXT:          },3572// CHECK-NEXT:          "type": {3573// CHECK-NEXT:           "qualType": "int"3574// CHECK-NEXT:          },3575// CHECK-NEXT:          "valueCategory": "lvalue",3576// CHECK-NEXT:          "referencedDecl": {3577// CHECK-NEXT:           "id": "0x{{.*}}",3578// CHECK-NEXT:           "kind": "ParmVarDecl",3579// CHECK-NEXT:           "name": "a",3580// CHECK-NEXT:           "type": {3581// CHECK-NEXT:            "qualType": "int"3582// CHECK-NEXT:           }3583// CHECK-NEXT:          }3584// CHECK-NEXT:         }3585// CHECK-NEXT:        ]3586// CHECK-NEXT:       }3587// CHECK-NEXT:      ]3588// CHECK-NEXT:     },3589// CHECK-NEXT:     {3590// CHECK-NEXT:      "id": "0x{{.*}}",3591// CHECK-NEXT:      "kind": "UnaryOperator",3592// CHECK-NEXT:      "range": {3593// CHECK-NEXT:       "begin": {3594// CHECK-NEXT:        "offset": {{[0-9]+}},3595// CHECK-NEXT:        "line": 58,3596// CHECK-NEXT:        "col": 3,3597// CHECK-NEXT:        "tokLen": 13598// CHECK-NEXT:       },3599// CHECK-NEXT:       "end": {3600// CHECK-NEXT:        "offset": {{[0-9]+}},3601// CHECK-NEXT:        "col": 4,3602// CHECK-NEXT:        "tokLen": 13603// CHECK-NEXT:       }3604// CHECK-NEXT:      },3605// CHECK-NEXT:      "type": {3606// CHECK-NEXT:       "qualType": "int"3607// CHECK-NEXT:      },3608// CHECK-NEXT:      "valueCategory": "prvalue",3609// CHECK-NEXT:      "isPostfix": false,3610// CHECK-NEXT:      "opcode": "+",3611// CHECK-NEXT:      "canOverflow": false,3612// CHECK-NEXT:      "inner": [3613// CHECK-NEXT:       {3614// CHECK-NEXT:        "id": "0x{{.*}}",3615// CHECK-NEXT:        "kind": "ImplicitCastExpr",3616// CHECK-NEXT:        "range": {3617// CHECK-NEXT:         "begin": {3618// CHECK-NEXT:          "offset": {{[0-9]+}},3619// CHECK-NEXT:          "col": 4,3620// CHECK-NEXT:          "tokLen": 13621// CHECK-NEXT:         },3622// CHECK-NEXT:         "end": {3623// CHECK-NEXT:          "offset": {{[0-9]+}},3624// CHECK-NEXT:          "col": 4,3625// CHECK-NEXT:          "tokLen": 13626// CHECK-NEXT:         }3627// CHECK-NEXT:        },3628// CHECK-NEXT:        "type": {3629// CHECK-NEXT:         "qualType": "int"3630// CHECK-NEXT:        },3631// CHECK-NEXT:        "valueCategory": "prvalue",3632// CHECK-NEXT:        "castKind": "LValueToRValue",3633// CHECK-NEXT:        "inner": [3634// CHECK-NEXT:         {3635// CHECK-NEXT:          "id": "0x{{.*}}",3636// CHECK-NEXT:          "kind": "DeclRefExpr",3637// CHECK-NEXT:          "range": {3638// CHECK-NEXT:           "begin": {3639// CHECK-NEXT:            "offset": {{[0-9]+}},3640// CHECK-NEXT:            "col": 4,3641// CHECK-NEXT:            "tokLen": 13642// CHECK-NEXT:           },3643// CHECK-NEXT:           "end": {3644// CHECK-NEXT:            "offset": {{[0-9]+}},3645// CHECK-NEXT:            "col": 4,3646// CHECK-NEXT:            "tokLen": 13647// CHECK-NEXT:           }3648// CHECK-NEXT:          },3649// CHECK-NEXT:          "type": {3650// CHECK-NEXT:           "qualType": "int"3651// CHECK-NEXT:          },3652// CHECK-NEXT:          "valueCategory": "lvalue",3653// CHECK-NEXT:          "referencedDecl": {3654// CHECK-NEXT:           "id": "0x{{.*}}",3655// CHECK-NEXT:           "kind": "ParmVarDecl",3656// CHECK-NEXT:           "name": "a",3657// CHECK-NEXT:           "type": {3658// CHECK-NEXT:            "qualType": "int"3659// CHECK-NEXT:           }3660// CHECK-NEXT:          }3661// CHECK-NEXT:         }3662// CHECK-NEXT:        ]3663// CHECK-NEXT:       }3664// CHECK-NEXT:      ]3665// CHECK-NEXT:     },3666// CHECK-NEXT:     {3667// CHECK-NEXT:      "id": "0x{{.*}}",3668// CHECK-NEXT:      "kind": "UnaryOperator",3669// CHECK-NEXT:      "range": {3670// CHECK-NEXT:       "begin": {3671// CHECK-NEXT:        "offset": {{[0-9]+}},3672// CHECK-NEXT:        "line": 59,3673// CHECK-NEXT:        "col": 3,3674// CHECK-NEXT:        "tokLen": 13675// CHECK-NEXT:       },3676// CHECK-NEXT:       "end": {3677// CHECK-NEXT:        "offset": {{[0-9]+}},3678// CHECK-NEXT:        "col": 4,3679// CHECK-NEXT:        "tokLen": 13680// CHECK-NEXT:       }3681// CHECK-NEXT:      },3682// CHECK-NEXT:      "type": {3683// CHECK-NEXT:       "qualType": "int *"3684// CHECK-NEXT:      },3685// CHECK-NEXT:      "valueCategory": "prvalue",3686// CHECK-NEXT:      "isPostfix": false,3687// CHECK-NEXT:      "opcode": "&",3688// CHECK-NEXT:      "canOverflow": false,3689// CHECK-NEXT:      "inner": [3690// CHECK-NEXT:       {3691// CHECK-NEXT:        "id": "0x{{.*}}",3692// CHECK-NEXT:        "kind": "DeclRefExpr",3693// CHECK-NEXT:        "range": {3694// CHECK-NEXT:         "begin": {3695// CHECK-NEXT:          "offset": {{[0-9]+}},3696// CHECK-NEXT:          "col": 4,3697// CHECK-NEXT:          "tokLen": 13698// CHECK-NEXT:         },3699// CHECK-NEXT:         "end": {3700// CHECK-NEXT:          "offset": {{[0-9]+}},3701// CHECK-NEXT:          "col": 4,3702// CHECK-NEXT:          "tokLen": 13703// CHECK-NEXT:         }3704// CHECK-NEXT:        },3705// CHECK-NEXT:        "type": {3706// CHECK-NEXT:         "qualType": "int"3707// CHECK-NEXT:        },3708// CHECK-NEXT:        "valueCategory": "lvalue",3709// CHECK-NEXT:        "referencedDecl": {3710// CHECK-NEXT:         "id": "0x{{.*}}",3711// CHECK-NEXT:         "kind": "ParmVarDecl",3712// CHECK-NEXT:         "name": "a",3713// CHECK-NEXT:         "type": {3714// CHECK-NEXT:          "qualType": "int"3715// CHECK-NEXT:         }3716// CHECK-NEXT:        }3717// CHECK-NEXT:       }3718// CHECK-NEXT:      ]3719// CHECK-NEXT:     },3720// CHECK-NEXT:     {3721// CHECK-NEXT:      "id": "0x{{.*}}",3722// CHECK-NEXT:      "kind": "ImplicitCastExpr",3723// CHECK-NEXT:      "range": {3724// CHECK-NEXT:       "begin": {3725// CHECK-NEXT:        "offset": {{[0-9]+}},3726// CHECK-NEXT:        "line": 60,3727// CHECK-NEXT:        "col": 3,3728// CHECK-NEXT:        "tokLen": 13729// CHECK-NEXT:       },3730// CHECK-NEXT:       "end": {3731// CHECK-NEXT:        "offset": {{[0-9]+}},3732// CHECK-NEXT:        "col": 4,3733// CHECK-NEXT:        "tokLen": 13734// CHECK-NEXT:       }3735// CHECK-NEXT:      },3736// CHECK-NEXT:      "type": {3737// CHECK-NEXT:       "qualType": "int"3738// CHECK-NEXT:      },3739// CHECK-NEXT:      "valueCategory": "prvalue",3740// CHECK-NEXT:      "castKind": "LValueToRValue",3741// CHECK-NEXT:      "inner": [3742// CHECK-NEXT:       {3743// CHECK-NEXT:        "id": "0x{{.*}}",3744// CHECK-NEXT:        "kind": "UnaryOperator",3745// CHECK-NEXT:        "range": {3746// CHECK-NEXT:         "begin": {3747// CHECK-NEXT:          "offset": {{[0-9]+}},3748// CHECK-NEXT:          "col": 3,3749// CHECK-NEXT:          "tokLen": 13750// CHECK-NEXT:         },3751// CHECK-NEXT:         "end": {3752// CHECK-NEXT:          "offset": {{[0-9]+}},3753// CHECK-NEXT:          "col": 4,3754// CHECK-NEXT:          "tokLen": 13755// CHECK-NEXT:         }3756// CHECK-NEXT:        },3757// CHECK-NEXT:        "type": {3758// CHECK-NEXT:         "qualType": "int"3759// CHECK-NEXT:        },3760// CHECK-NEXT:        "valueCategory": "lvalue",3761// CHECK-NEXT:        "isPostfix": false,3762// CHECK-NEXT:        "opcode": "*",3763// CHECK-NEXT:        "canOverflow": false,3764// CHECK-NEXT:        "inner": [3765// CHECK-NEXT:         {3766// CHECK-NEXT:          "id": "0x{{.*}}",3767// CHECK-NEXT:          "kind": "ImplicitCastExpr",3768// CHECK-NEXT:          "range": {3769// CHECK-NEXT:           "begin": {3770// CHECK-NEXT:            "offset": {{[0-9]+}},3771// CHECK-NEXT:            "col": 4,3772// CHECK-NEXT:            "tokLen": 13773// CHECK-NEXT:           },3774// CHECK-NEXT:           "end": {3775// CHECK-NEXT:            "offset": {{[0-9]+}},3776// CHECK-NEXT:            "col": 4,3777// CHECK-NEXT:            "tokLen": 13778// CHECK-NEXT:           }3779// CHECK-NEXT:          },3780// CHECK-NEXT:          "type": {3781// CHECK-NEXT:           "qualType": "int *"3782// CHECK-NEXT:          },3783// CHECK-NEXT:          "valueCategory": "prvalue",3784// CHECK-NEXT:          "castKind": "LValueToRValue",3785// CHECK-NEXT:          "inner": [3786// CHECK-NEXT:           {3787// CHECK-NEXT:            "id": "0x{{.*}}",3788// CHECK-NEXT:            "kind": "DeclRefExpr",3789// CHECK-NEXT:            "range": {3790// CHECK-NEXT:             "begin": {3791// CHECK-NEXT:              "offset": {{[0-9]+}},3792// CHECK-NEXT:              "col": 4,3793// CHECK-NEXT:              "tokLen": 13794// CHECK-NEXT:             },3795// CHECK-NEXT:             "end": {3796// CHECK-NEXT:              "offset": {{[0-9]+}},3797// CHECK-NEXT:              "col": 4,3798// CHECK-NEXT:              "tokLen": 13799// CHECK-NEXT:             }3800// CHECK-NEXT:            },3801// CHECK-NEXT:            "type": {3802// CHECK-NEXT:             "qualType": "int *"3803// CHECK-NEXT:            },3804// CHECK-NEXT:            "valueCategory": "lvalue",3805// CHECK-NEXT:            "referencedDecl": {3806// CHECK-NEXT:             "id": "0x{{.*}}",3807// CHECK-NEXT:             "kind": "ParmVarDecl",3808// CHECK-NEXT:             "name": "b",3809// CHECK-NEXT:             "type": {3810// CHECK-NEXT:              "qualType": "int *"3811// CHECK-NEXT:             }3812// CHECK-NEXT:            }3813// CHECK-NEXT:           }3814// CHECK-NEXT:          ]3815// CHECK-NEXT:         }3816// CHECK-NEXT:        ]3817// CHECK-NEXT:       }3818// CHECK-NEXT:      ]3819// CHECK-NEXT:     },3820// CHECK-NEXT:     {3821// CHECK-NEXT:      "id": "0x{{.*}}",3822// CHECK-NEXT:      "kind": "UnaryOperator",3823// CHECK-NEXT:      "range": {3824// CHECK-NEXT:       "begin": {3825// CHECK-NEXT:        "offset": {{[0-9]+}},3826// CHECK-NEXT:        "line": 61,3827// CHECK-NEXT:        "col": 3,3828// CHECK-NEXT:        "tokLen": 13829// CHECK-NEXT:       },3830// CHECK-NEXT:       "end": {3831// CHECK-NEXT:        "offset": {{[0-9]+}},3832// CHECK-NEXT:        "col": 4,3833// CHECK-NEXT:        "tokLen": 13834// CHECK-NEXT:       }3835// CHECK-NEXT:      },3836// CHECK-NEXT:      "type": {3837// CHECK-NEXT:       "qualType": "int"3838// CHECK-NEXT:      },3839// CHECK-NEXT:      "valueCategory": "prvalue",3840// CHECK-NEXT:      "isPostfix": false,3841// CHECK-NEXT:      "opcode": "!",3842// CHECK-NEXT:      "canOverflow": false,3843// CHECK-NEXT:      "inner": [3844// CHECK-NEXT:       {3845// CHECK-NEXT:        "id": "0x{{.*}}",3846// CHECK-NEXT:        "kind": "ImplicitCastExpr",3847// CHECK-NEXT:        "range": {3848// CHECK-NEXT:         "begin": {3849// CHECK-NEXT:          "offset": {{[0-9]+}},3850// CHECK-NEXT:          "col": 4,3851// CHECK-NEXT:          "tokLen": 13852// CHECK-NEXT:         },3853// CHECK-NEXT:         "end": {3854// CHECK-NEXT:          "offset": {{[0-9]+}},3855// CHECK-NEXT:          "col": 4,3856// CHECK-NEXT:          "tokLen": 13857// CHECK-NEXT:         }3858// CHECK-NEXT:        },3859// CHECK-NEXT:        "type": {3860// CHECK-NEXT:         "qualType": "int"3861// CHECK-NEXT:        },3862// CHECK-NEXT:        "valueCategory": "prvalue",3863// CHECK-NEXT:        "castKind": "LValueToRValue",3864// CHECK-NEXT:        "inner": [3865// CHECK-NEXT:         {3866// CHECK-NEXT:          "id": "0x{{.*}}",3867// CHECK-NEXT:          "kind": "DeclRefExpr",3868// CHECK-NEXT:          "range": {3869// CHECK-NEXT:           "begin": {3870// CHECK-NEXT:            "offset": {{[0-9]+}},3871// CHECK-NEXT:            "col": 4,3872// CHECK-NEXT:            "tokLen": 13873// CHECK-NEXT:           },3874// CHECK-NEXT:           "end": {3875// CHECK-NEXT:            "offset": {{[0-9]+}},3876// CHECK-NEXT:            "col": 4,3877// CHECK-NEXT:            "tokLen": 13878// CHECK-NEXT:           }3879// CHECK-NEXT:          },3880// CHECK-NEXT:          "type": {3881// CHECK-NEXT:           "qualType": "int"3882// CHECK-NEXT:          },3883// CHECK-NEXT:          "valueCategory": "lvalue",3884// CHECK-NEXT:          "referencedDecl": {3885// CHECK-NEXT:           "id": "0x{{.*}}",3886// CHECK-NEXT:           "kind": "ParmVarDecl",3887// CHECK-NEXT:           "name": "a",3888// CHECK-NEXT:           "type": {3889// CHECK-NEXT:            "qualType": "int"3890// CHECK-NEXT:           }3891// CHECK-NEXT:          }3892// CHECK-NEXT:         }3893// CHECK-NEXT:        ]3894// CHECK-NEXT:       }3895// CHECK-NEXT:      ]3896// CHECK-NEXT:     },3897// CHECK-NEXT:     {3898// CHECK-NEXT:      "id": "0x{{.*}}",3899// CHECK-NEXT:      "kind": "UnaryExprOrTypeTraitExpr",3900// CHECK-NEXT:      "range": {3901// CHECK-NEXT:       "begin": {3902// CHECK-NEXT:        "offset": {{[0-9]+}},3903// CHECK-NEXT:        "line": 63,3904// CHECK-NEXT:        "col": 3,3905// CHECK-NEXT:        "tokLen": 63906// CHECK-NEXT:       },3907// CHECK-NEXT:       "end": {3908// CHECK-NEXT:        "offset": {{[0-9]+}},3909// CHECK-NEXT:        "col": 10,3910// CHECK-NEXT:        "tokLen": 13911// CHECK-NEXT:       }3912// CHECK-NEXT:      },3913// CHECK-NEXT:      "type": {3914// CHECK-NEXT:       "desugaredQualType": "unsigned long",3915// CHECK-NEXT:       "qualType": "__size_t"3916// CHECK-NEXT:      },3917// CHECK-NEXT:      "valueCategory": "prvalue",3918// CHECK-NEXT:      "name": "sizeof",3919// CHECK-NEXT:      "inner": [3920// CHECK-NEXT:       {3921// CHECK-NEXT:        "id": "0x{{.*}}",3922// CHECK-NEXT:        "kind": "DeclRefExpr",3923// CHECK-NEXT:        "range": {3924// CHECK-NEXT:         "begin": {3925// CHECK-NEXT:          "offset": {{[0-9]+}},3926// CHECK-NEXT:          "col": 10,3927// CHECK-NEXT:          "tokLen": 13928// CHECK-NEXT:         },3929// CHECK-NEXT:         "end": {3930// CHECK-NEXT:          "offset": {{[0-9]+}},3931// CHECK-NEXT:          "col": 10,3932// CHECK-NEXT:          "tokLen": 13933// CHECK-NEXT:         }3934// CHECK-NEXT:        },3935// CHECK-NEXT:        "type": {3936// CHECK-NEXT:         "qualType": "int"3937// CHECK-NEXT:        },3938// CHECK-NEXT:        "valueCategory": "lvalue",3939// CHECK-NEXT:        "referencedDecl": {3940// CHECK-NEXT:         "id": "0x{{.*}}",3941// CHECK-NEXT:         "kind": "ParmVarDecl",3942// CHECK-NEXT:         "name": "a",3943// CHECK-NEXT:         "type": {3944// CHECK-NEXT:          "qualType": "int"3945// CHECK-NEXT:         }3946// CHECK-NEXT:        },3947// CHECK-NEXT:        "nonOdrUseReason": "unevaluated"3948// CHECK-NEXT:       }3949// CHECK-NEXT:      ]3950// CHECK-NEXT:     },3951// CHECK-NEXT:     {3952// CHECK-NEXT:      "id": "0x{{.*}}",3953// CHECK-NEXT:      "kind": "UnaryExprOrTypeTraitExpr",3954// CHECK-NEXT:      "range": {3955// CHECK-NEXT:       "begin": {3956// CHECK-NEXT:        "offset": {{[0-9]+}},3957// CHECK-NEXT:        "line": 64,3958// CHECK-NEXT:        "col": 3,3959// CHECK-NEXT:        "tokLen": 63960// CHECK-NEXT:       },3961// CHECK-NEXT:       "end": {3962// CHECK-NEXT:        "offset": {{[0-9]+}},3963// CHECK-NEXT:        "col": 13,3964// CHECK-NEXT:        "tokLen": 13965// CHECK-NEXT:       }3966// CHECK-NEXT:      },3967// CHECK-NEXT:      "type": {3968// CHECK-NEXT:       "desugaredQualType": "unsigned long",3969// CHECK-NEXT:       "qualType": "__size_t"3970// CHECK-NEXT:      },3971// CHECK-NEXT:      "valueCategory": "prvalue",3972// CHECK-NEXT:      "name": "sizeof",3973// CHECK-NEXT:      "argType": {3974// CHECK-NEXT:       "qualType": "int"3975// CHECK-NEXT:      }3976// CHECK-NEXT:     },3977// CHECK-NEXT:     {3978// CHECK-NEXT:      "id": "0x{{.*}}",3979// CHECK-NEXT:      "kind": "UnaryExprOrTypeTraitExpr",3980// CHECK-NEXT:      "range": {3981// CHECK-NEXT:       "begin": {3982// CHECK-NEXT:        "offset": {{[0-9]+}},3983// CHECK-NEXT:        "line": 65,3984// CHECK-NEXT:        "col": 3,3985// CHECK-NEXT:        "tokLen": 83986// CHECK-NEXT:       },3987// CHECK-NEXT:       "end": {3988// CHECK-NEXT:        "offset": {{[0-9]+}},3989// CHECK-NEXT:        "col": 15,3990// CHECK-NEXT:        "tokLen": 13991// CHECK-NEXT:       }3992// CHECK-NEXT:      },3993// CHECK-NEXT:      "type": {3994// CHECK-NEXT:       "desugaredQualType": "unsigned long",3995// CHECK-NEXT:       "qualType": "__size_t"3996// CHECK-NEXT:      },3997// CHECK-NEXT:      "valueCategory": "prvalue",3998// CHECK-NEXT:      "name": "alignof",3999// CHECK-NEXT:      "argType": {4000// CHECK-NEXT:       "qualType": "int"4001// CHECK-NEXT:      }4002// CHECK-NEXT:     }4003// CHECK-NEXT:    ]4004// CHECK-NEXT:   }4005// CHECK-NEXT:  ]4006// CHECK-NEXT: }4007 4008 4009// CHECK-NOT: {{^}}Dumping4010// CHECK:  "kind": "FunctionDecl",4011// CHECK-NEXT:  "loc": {4012// CHECK-NEXT:   "offset": {{[0-9]+}},4013// CHECK-NEXT:   "line": 72,4014// CHECK-NEXT:   "col": 6,4015// CHECK-NEXT:   "tokLen": 164016// CHECK-NEXT:  },4017// CHECK-NEXT:  "range": {4018// CHECK-NEXT:   "begin": {4019// CHECK-NEXT:    "offset": {{[0-9]+}},4020// CHECK-NEXT:    "col": 1,4021// CHECK-NEXT:    "tokLen": 44022// CHECK-NEXT:   },4023// CHECK-NEXT:   "end": {4024// CHECK-NEXT:    "offset": {{[0-9]+}},4025// CHECK-NEXT:    "line": 83,4026// CHECK-NEXT:    "col": 1,4027// CHECK-NEXT:    "tokLen": 14028// CHECK-NEXT:   }4029// CHECK-NEXT:  },4030// CHECK-NEXT:  "name": "PostfixOperators",4031// CHECK-NEXT:  "mangledName": "PostfixOperators",4032// CHECK-NEXT:  "type": {4033// CHECK-NEXT:   "qualType": "void (int *, struct S, struct S *)"4034// CHECK-NEXT:  },4035// CHECK-NEXT:  "inner": [4036// CHECK-NEXT:   {4037// CHECK-NEXT:    "id": "0x{{.*}}",4038// CHECK-NEXT:    "kind": "ParmVarDecl",4039// CHECK-NEXT:    "loc": {4040// CHECK-NEXT:     "offset": {{[0-9]+}},4041// CHECK-NEXT:     "line": 72,4042// CHECK-NEXT:     "col": 28,4043// CHECK-NEXT:     "tokLen": 14044// CHECK-NEXT:    },4045// CHECK-NEXT:    "range": {4046// CHECK-NEXT:     "begin": {4047// CHECK-NEXT:      "offset": {{[0-9]+}},4048// CHECK-NEXT:      "col": 23,4049// CHECK-NEXT:      "tokLen": 34050// CHECK-NEXT:     },4051// CHECK-NEXT:     "end": {4052// CHECK-NEXT:      "offset": {{[0-9]+}},4053// CHECK-NEXT:      "col": 28,4054// CHECK-NEXT:      "tokLen": 14055// CHECK-NEXT:     }4056// CHECK-NEXT:    },4057// CHECK-NEXT:    "isUsed": true,4058// CHECK-NEXT:    "name": "a",4059// CHECK-NEXT:    "type": {4060// CHECK-NEXT:     "qualType": "int *"4061// CHECK-NEXT:    }4062// CHECK-NEXT:   },4063// CHECK-NEXT:   {4064// CHECK-NEXT:    "id": "0x{{.*}}",4065// CHECK-NEXT:    "kind": "ParmVarDecl",4066// CHECK-NEXT:    "loc": {4067// CHECK-NEXT:     "offset": {{[0-9]+}},4068// CHECK-NEXT:     "col": 40,4069// CHECK-NEXT:     "tokLen": 14070// CHECK-NEXT:    },4071// CHECK-NEXT:    "range": {4072// CHECK-NEXT:     "begin": {4073// CHECK-NEXT:      "offset": {{[0-9]+}},4074// CHECK-NEXT:      "col": 31,4075// CHECK-NEXT:      "tokLen": 64076// CHECK-NEXT:     },4077// CHECK-NEXT:     "end": {4078// CHECK-NEXT:      "offset": {{[0-9]+}},4079// CHECK-NEXT:      "col": 40,4080// CHECK-NEXT:      "tokLen": 14081// CHECK-NEXT:     }4082// CHECK-NEXT:    },4083// CHECK-NEXT:    "isUsed": true,4084// CHECK-NEXT:    "name": "b",4085// CHECK-NEXT:    "type": {4086// CHECK-NEXT:     "qualType": "struct S"4087// CHECK-NEXT:    }4088// CHECK-NEXT:   },4089// CHECK-NEXT:   {4090// CHECK-NEXT:    "id": "0x{{.*}}",4091// CHECK-NEXT:    "kind": "ParmVarDecl",4092// CHECK-NEXT:    "loc": {4093// CHECK-NEXT:     "offset": {{[0-9]+}},4094// CHECK-NEXT:     "col": 53,4095// CHECK-NEXT:     "tokLen": 14096// CHECK-NEXT:    },4097// CHECK-NEXT:    "range": {4098// CHECK-NEXT:     "begin": {4099// CHECK-NEXT:      "offset": {{[0-9]+}},4100// CHECK-NEXT:      "col": 43,4101// CHECK-NEXT:      "tokLen": 64102// CHECK-NEXT:     },4103// CHECK-NEXT:     "end": {4104// CHECK-NEXT:      "offset": {{[0-9]+}},4105// CHECK-NEXT:      "col": 53,4106// CHECK-NEXT:      "tokLen": 14107// CHECK-NEXT:     }4108// CHECK-NEXT:    },4109// CHECK-NEXT:    "isUsed": true,4110// CHECK-NEXT:    "name": "c",4111// CHECK-NEXT:    "type": {4112// CHECK-NEXT:     "qualType": "struct S *"4113// CHECK-NEXT:    }4114// CHECK-NEXT:   },4115// CHECK-NEXT:   {4116// CHECK-NEXT:    "id": "0x{{.*}}",4117// CHECK-NEXT:    "kind": "CompoundStmt",4118// CHECK-NEXT:    "range": {4119// CHECK-NEXT:     "begin": {4120// CHECK-NEXT:      "offset": {{[0-9]+}},4121// CHECK-NEXT:      "col": 56,4122// CHECK-NEXT:      "tokLen": 14123// CHECK-NEXT:     },4124// CHECK-NEXT:     "end": {4125// CHECK-NEXT:      "offset": {{[0-9]+}},4126// CHECK-NEXT:      "line": 83,4127// CHECK-NEXT:      "col": 1,4128// CHECK-NEXT:      "tokLen": 14129// CHECK-NEXT:     }4130// CHECK-NEXT:    },4131// CHECK-NEXT:    "inner": [4132// CHECK-NEXT:     {4133// CHECK-NEXT:      "id": "0x{{.*}}",4134// CHECK-NEXT:      "kind": "ImplicitCastExpr",4135// CHECK-NEXT:      "range": {4136// CHECK-NEXT:       "begin": {4137// CHECK-NEXT:        "offset": {{[0-9]+}},4138// CHECK-NEXT:        "line": 73,4139// CHECK-NEXT:        "col": 3,4140// CHECK-NEXT:        "tokLen": 14141// CHECK-NEXT:       },4142// CHECK-NEXT:       "end": {4143// CHECK-NEXT:        "offset": {{[0-9]+}},4144// CHECK-NEXT:        "col": 6,4145// CHECK-NEXT:        "tokLen": 14146// CHECK-NEXT:       }4147// CHECK-NEXT:      },4148// CHECK-NEXT:      "type": {4149// CHECK-NEXT:       "qualType": "int"4150// CHECK-NEXT:      },4151// CHECK-NEXT:      "valueCategory": "prvalue",4152// CHECK-NEXT:      "castKind": "LValueToRValue",4153// CHECK-NEXT:      "inner": [4154// CHECK-NEXT:       {4155// CHECK-NEXT:        "id": "0x{{.*}}",4156// CHECK-NEXT:        "kind": "ArraySubscriptExpr",4157// CHECK-NEXT:        "range": {4158// CHECK-NEXT:         "begin": {4159// CHECK-NEXT:          "offset": {{[0-9]+}},4160// CHECK-NEXT:          "col": 3,4161// CHECK-NEXT:          "tokLen": 14162// CHECK-NEXT:         },4163// CHECK-NEXT:         "end": {4164// CHECK-NEXT:          "offset": {{[0-9]+}},4165// CHECK-NEXT:          "col": 6,4166// CHECK-NEXT:          "tokLen": 14167// CHECK-NEXT:         }4168// CHECK-NEXT:        },4169// CHECK-NEXT:        "type": {4170// CHECK-NEXT:         "qualType": "int"4171// CHECK-NEXT:        },4172// CHECK-NEXT:        "valueCategory": "lvalue",4173// CHECK-NEXT:        "inner": [4174// CHECK-NEXT:         {4175// CHECK-NEXT:          "id": "0x{{.*}}",4176// CHECK-NEXT:          "kind": "ImplicitCastExpr",4177// CHECK-NEXT:          "range": {4178// CHECK-NEXT:           "begin": {4179// CHECK-NEXT:            "offset": {{[0-9]+}},4180// CHECK-NEXT:            "col": 3,4181// CHECK-NEXT:            "tokLen": 14182// CHECK-NEXT:           },4183// CHECK-NEXT:           "end": {4184// CHECK-NEXT:            "offset": {{[0-9]+}},4185// CHECK-NEXT:            "col": 3,4186// CHECK-NEXT:            "tokLen": 14187// CHECK-NEXT:           }4188// CHECK-NEXT:          },4189// CHECK-NEXT:          "type": {4190// CHECK-NEXT:           "qualType": "int *"4191// CHECK-NEXT:          },4192// CHECK-NEXT:          "valueCategory": "prvalue",4193// CHECK-NEXT:          "castKind": "LValueToRValue",4194// CHECK-NEXT:          "inner": [4195// CHECK-NEXT:           {4196// CHECK-NEXT:            "id": "0x{{.*}}",4197// CHECK-NEXT:            "kind": "DeclRefExpr",4198// CHECK-NEXT:            "range": {4199// CHECK-NEXT:             "begin": {4200// CHECK-NEXT:              "offset": {{[0-9]+}},4201// CHECK-NEXT:              "col": 3,4202// CHECK-NEXT:              "tokLen": 14203// CHECK-NEXT:             },4204// CHECK-NEXT:             "end": {4205// CHECK-NEXT:              "offset": {{[0-9]+}},4206// CHECK-NEXT:              "col": 3,4207// CHECK-NEXT:              "tokLen": 14208// CHECK-NEXT:             }4209// CHECK-NEXT:            },4210// CHECK-NEXT:            "type": {4211// CHECK-NEXT:             "qualType": "int *"4212// CHECK-NEXT:            },4213// CHECK-NEXT:            "valueCategory": "lvalue",4214// CHECK-NEXT:            "referencedDecl": {4215// CHECK-NEXT:             "id": "0x{{.*}}",4216// CHECK-NEXT:             "kind": "ParmVarDecl",4217// CHECK-NEXT:             "name": "a",4218// CHECK-NEXT:             "type": {4219// CHECK-NEXT:              "qualType": "int *"4220// CHECK-NEXT:             }4221// CHECK-NEXT:            }4222// CHECK-NEXT:           }4223// CHECK-NEXT:          ]4224// CHECK-NEXT:         },4225// CHECK-NEXT:         {4226// CHECK-NEXT:          "id": "0x{{.*}}",4227// CHECK-NEXT:          "kind": "IntegerLiteral",4228// CHECK-NEXT:          "range": {4229// CHECK-NEXT:           "begin": {4230// CHECK-NEXT:            "offset": {{[0-9]+}},4231// CHECK-NEXT:            "col": 5,4232// CHECK-NEXT:            "tokLen": 14233// CHECK-NEXT:           },4234// CHECK-NEXT:           "end": {4235// CHECK-NEXT:            "offset": {{[0-9]+}},4236// CHECK-NEXT:            "col": 5,4237// CHECK-NEXT:            "tokLen": 14238// CHECK-NEXT:           }4239// CHECK-NEXT:          },4240// CHECK-NEXT:          "type": {4241// CHECK-NEXT:           "qualType": "int"4242// CHECK-NEXT:          },4243// CHECK-NEXT:          "valueCategory": "prvalue",4244// CHECK-NEXT:          "value": "0"4245// CHECK-NEXT:         }4246// CHECK-NEXT:        ]4247// CHECK-NEXT:       }4248// CHECK-NEXT:      ]4249// CHECK-NEXT:     },4250// CHECK-NEXT:     {4251// CHECK-NEXT:      "id": "0x{{.*}}",4252// CHECK-NEXT:      "kind": "CallExpr",4253// CHECK-NEXT:      "range": {4254// CHECK-NEXT:       "begin": {4255// CHECK-NEXT:        "offset": {{[0-9]+}},4256// CHECK-NEXT:        "line": 74,4257// CHECK-NEXT:        "col": 3,4258// CHECK-NEXT:        "tokLen": 144259// CHECK-NEXT:       },4260// CHECK-NEXT:       "end": {4261// CHECK-NEXT:        "offset": {{[0-9]+}},4262// CHECK-NEXT:        "col": 23,4263// CHECK-NEXT:        "tokLen": 14264// CHECK-NEXT:       }4265// CHECK-NEXT:      },4266// CHECK-NEXT:      "type": {4267// CHECK-NEXT:       "qualType": "void"4268// CHECK-NEXT:      },4269// CHECK-NEXT:      "valueCategory": "prvalue",4270// CHECK-NEXT:      "inner": [4271// CHECK-NEXT:       {4272// CHECK-NEXT:        "id": "0x{{.*}}",4273// CHECK-NEXT:        "kind": "ImplicitCastExpr",4274// CHECK-NEXT:        "range": {4275// CHECK-NEXT:         "begin": {4276// CHECK-NEXT:          "offset": {{[0-9]+}},4277// CHECK-NEXT:          "col": 3,4278// CHECK-NEXT:          "tokLen": 144279// CHECK-NEXT:         },4280// CHECK-NEXT:         "end": {4281// CHECK-NEXT:          "offset": {{[0-9]+}},4282// CHECK-NEXT:          "col": 3,4283// CHECK-NEXT:          "tokLen": 144284// CHECK-NEXT:         }4285// CHECK-NEXT:        },4286// CHECK-NEXT:        "type": {4287// CHECK-NEXT:         "qualType": "void (*)(int, int *)"4288// CHECK-NEXT:        },4289// CHECK-NEXT:        "valueCategory": "prvalue",4290// CHECK-NEXT:        "castKind": "FunctionToPointerDecay",4291// CHECK-NEXT:        "inner": [4292// CHECK-NEXT:         {4293// CHECK-NEXT:          "id": "0x{{.*}}",4294// CHECK-NEXT:          "kind": "DeclRefExpr",4295// CHECK-NEXT:          "range": {4296// CHECK-NEXT:           "begin": {4297// CHECK-NEXT:            "offset": {{[0-9]+}},4298// CHECK-NEXT:            "col": 3,4299// CHECK-NEXT:            "tokLen": 144300// CHECK-NEXT:           },4301// CHECK-NEXT:           "end": {4302// CHECK-NEXT:            "offset": {{[0-9]+}},4303// CHECK-NEXT:            "col": 3,4304// CHECK-NEXT:            "tokLen": 144305// CHECK-NEXT:           }4306// CHECK-NEXT:          },4307// CHECK-NEXT:          "type": {4308// CHECK-NEXT:           "qualType": "void (int, int *)"4309// CHECK-NEXT:          },4310// CHECK-NEXT:          "valueCategory": "prvalue",4311// CHECK-NEXT:          "referencedDecl": {4312// CHECK-NEXT:           "id": "0x{{.*}}",4313// CHECK-NEXT:           "kind": "FunctionDecl",4314// CHECK-NEXT:           "name": "UnaryOperators",4315// CHECK-NEXT:           "type": {4316// CHECK-NEXT:            "qualType": "void (int, int *)"4317// CHECK-NEXT:           }4318// CHECK-NEXT:          }4319// CHECK-NEXT:         }4320// CHECK-NEXT:        ]4321// CHECK-NEXT:       },4322// CHECK-NEXT:       {4323// CHECK-NEXT:        "id": "0x{{.*}}",4324// CHECK-NEXT:        "kind": "ImplicitCastExpr",4325// CHECK-NEXT:        "range": {4326// CHECK-NEXT:         "begin": {4327// CHECK-NEXT:          "offset": {{[0-9]+}},4328// CHECK-NEXT:          "col": 18,4329// CHECK-NEXT:          "tokLen": 14330// CHECK-NEXT:         },4331// CHECK-NEXT:         "end": {4332// CHECK-NEXT:          "offset": {{[0-9]+}},4333// CHECK-NEXT:          "col": 19,4334// CHECK-NEXT:          "tokLen": 14335// CHECK-NEXT:         }4336// CHECK-NEXT:        },4337// CHECK-NEXT:        "type": {4338// CHECK-NEXT:         "qualType": "int"4339// CHECK-NEXT:        },4340// CHECK-NEXT:        "valueCategory": "prvalue",4341// CHECK-NEXT:        "castKind": "LValueToRValue",4342// CHECK-NEXT:        "inner": [4343// CHECK-NEXT:         {4344// CHECK-NEXT:          "id": "0x{{.*}}",4345// CHECK-NEXT:          "kind": "UnaryOperator",4346// CHECK-NEXT:          "range": {4347// CHECK-NEXT:           "begin": {4348// CHECK-NEXT:            "offset": {{[0-9]+}},4349// CHECK-NEXT:            "col": 18,4350// CHECK-NEXT:            "tokLen": 14351// CHECK-NEXT:           },4352// CHECK-NEXT:           "end": {4353// CHECK-NEXT:            "offset": {{[0-9]+}},4354// CHECK-NEXT:            "col": 19,4355// CHECK-NEXT:            "tokLen": 14356// CHECK-NEXT:           }4357// CHECK-NEXT:          },4358// CHECK-NEXT:          "type": {4359// CHECK-NEXT:           "qualType": "int"4360// CHECK-NEXT:          },4361// CHECK-NEXT:          "valueCategory": "lvalue",4362// CHECK-NEXT:          "isPostfix": false,4363// CHECK-NEXT:          "opcode": "*",4364// CHECK-NEXT:          "canOverflow": false,4365// CHECK-NEXT:          "inner": [4366// CHECK-NEXT:           {4367// CHECK-NEXT:            "id": "0x{{.*}}",4368// CHECK-NEXT:            "kind": "ImplicitCastExpr",4369// CHECK-NEXT:            "range": {4370// CHECK-NEXT:             "begin": {4371// CHECK-NEXT:              "offset": {{[0-9]+}},4372// CHECK-NEXT:              "col": 19,4373// CHECK-NEXT:              "tokLen": 14374// CHECK-NEXT:             },4375// CHECK-NEXT:             "end": {4376// CHECK-NEXT:              "offset": {{[0-9]+}},4377// CHECK-NEXT:              "col": 19,4378// CHECK-NEXT:              "tokLen": 14379// CHECK-NEXT:             }4380// CHECK-NEXT:            },4381// CHECK-NEXT:            "type": {4382// CHECK-NEXT:             "qualType": "int *"4383// CHECK-NEXT:            },4384// CHECK-NEXT:            "valueCategory": "prvalue",4385// CHECK-NEXT:            "castKind": "LValueToRValue",4386// CHECK-NEXT:            "inner": [4387// CHECK-NEXT:             {4388// CHECK-NEXT:              "id": "0x{{.*}}",4389// CHECK-NEXT:              "kind": "DeclRefExpr",4390// CHECK-NEXT:              "range": {4391// CHECK-NEXT:               "begin": {4392// CHECK-NEXT:                "offset": {{[0-9]+}},4393// CHECK-NEXT:                "col": 19,4394// CHECK-NEXT:                "tokLen": 14395// CHECK-NEXT:               },4396// CHECK-NEXT:               "end": {4397// CHECK-NEXT:                "offset": {{[0-9]+}},4398// CHECK-NEXT:                "col": 19,4399// CHECK-NEXT:                "tokLen": 14400// CHECK-NEXT:               }4401// CHECK-NEXT:              },4402// CHECK-NEXT:              "type": {4403// CHECK-NEXT:               "qualType": "int *"4404// CHECK-NEXT:              },4405// CHECK-NEXT:              "valueCategory": "lvalue",4406// CHECK-NEXT:              "referencedDecl": {4407// CHECK-NEXT:               "id": "0x{{.*}}",4408// CHECK-NEXT:               "kind": "ParmVarDecl",4409// CHECK-NEXT:               "name": "a",4410// CHECK-NEXT:               "type": {4411// CHECK-NEXT:                "qualType": "int *"4412// CHECK-NEXT:               }4413// CHECK-NEXT:              }4414// CHECK-NEXT:             }4415// CHECK-NEXT:            ]4416// CHECK-NEXT:           }4417// CHECK-NEXT:          ]4418// CHECK-NEXT:         }4419// CHECK-NEXT:        ]4420// CHECK-NEXT:       },4421// CHECK-NEXT:       {4422// CHECK-NEXT:        "id": "0x{{.*}}",4423// CHECK-NEXT:        "kind": "ImplicitCastExpr",4424// CHECK-NEXT:        "range": {4425// CHECK-NEXT:         "begin": {4426// CHECK-NEXT:          "offset": {{[0-9]+}},4427// CHECK-NEXT:          "col": 22,4428// CHECK-NEXT:          "tokLen": 14429// CHECK-NEXT:         },4430// CHECK-NEXT:         "end": {4431// CHECK-NEXT:          "offset": {{[0-9]+}},4432// CHECK-NEXT:          "col": 22,4433// CHECK-NEXT:          "tokLen": 14434// CHECK-NEXT:         }4435// CHECK-NEXT:        },4436// CHECK-NEXT:        "type": {4437// CHECK-NEXT:         "qualType": "int *"4438// CHECK-NEXT:        },4439// CHECK-NEXT:        "valueCategory": "prvalue",4440// CHECK-NEXT:        "castKind": "LValueToRValue",4441// CHECK-NEXT:        "inner": [4442// CHECK-NEXT:         {4443// CHECK-NEXT:          "id": "0x{{.*}}",4444// CHECK-NEXT:          "kind": "DeclRefExpr",4445// CHECK-NEXT:          "range": {4446// CHECK-NEXT:           "begin": {4447// CHECK-NEXT:            "offset": {{[0-9]+}},4448// CHECK-NEXT:            "col": 22,4449// CHECK-NEXT:            "tokLen": 14450// CHECK-NEXT:           },4451// CHECK-NEXT:           "end": {4452// CHECK-NEXT:            "offset": {{[0-9]+}},4453// CHECK-NEXT:            "col": 22,4454// CHECK-NEXT:            "tokLen": 14455// CHECK-NEXT:           }4456// CHECK-NEXT:          },4457// CHECK-NEXT:          "type": {4458// CHECK-NEXT:           "qualType": "int *"4459// CHECK-NEXT:          },4460// CHECK-NEXT:          "valueCategory": "lvalue",4461// CHECK-NEXT:          "referencedDecl": {4462// CHECK-NEXT:           "id": "0x{{.*}}",4463// CHECK-NEXT:           "kind": "ParmVarDecl",4464// CHECK-NEXT:           "name": "a",4465// CHECK-NEXT:           "type": {4466// CHECK-NEXT:            "qualType": "int *"4467// CHECK-NEXT:           }4468// CHECK-NEXT:          }4469// CHECK-NEXT:         }4470// CHECK-NEXT:        ]4471// CHECK-NEXT:       }4472// CHECK-NEXT:      ]4473// CHECK-NEXT:     },4474// CHECK-NEXT:     {4475// CHECK-NEXT:      "id": "0x{{.*}}",4476// CHECK-NEXT:      "kind": "ImplicitCastExpr",4477// CHECK-NEXT:      "range": {4478// CHECK-NEXT:       "begin": {4479// CHECK-NEXT:        "offset": {{[0-9]+}},4480// CHECK-NEXT:        "line": 76,4481// CHECK-NEXT:        "col": 3,4482// CHECK-NEXT:        "tokLen": 14483// CHECK-NEXT:       },4484// CHECK-NEXT:       "end": {4485// CHECK-NEXT:        "offset": {{[0-9]+}},4486// CHECK-NEXT:        "col": 5,4487// CHECK-NEXT:        "tokLen": 14488// CHECK-NEXT:       }4489// CHECK-NEXT:      },4490// CHECK-NEXT:      "type": {4491// CHECK-NEXT:       "qualType": "int"4492// CHECK-NEXT:      },4493// CHECK-NEXT:      "valueCategory": "prvalue",4494// CHECK-NEXT:      "castKind": "LValueToRValue",4495// CHECK-NEXT:      "inner": [4496// CHECK-NEXT:       {4497// CHECK-NEXT:        "id": "0x{{.*}}",4498// CHECK-NEXT:        "kind": "MemberExpr",4499// CHECK-NEXT:        "range": {4500// CHECK-NEXT:         "begin": {4501// CHECK-NEXT:          "offset": {{[0-9]+}},4502// CHECK-NEXT:          "col": 3,4503// CHECK-NEXT:          "tokLen": 14504// CHECK-NEXT:         },4505// CHECK-NEXT:         "end": {4506// CHECK-NEXT:          "offset": {{[0-9]+}},4507// CHECK-NEXT:          "col": 5,4508// CHECK-NEXT:          "tokLen": 14509// CHECK-NEXT:         }4510// CHECK-NEXT:        },4511// CHECK-NEXT:        "type": {4512// CHECK-NEXT:         "qualType": "int"4513// CHECK-NEXT:        },4514// CHECK-NEXT:        "valueCategory": "lvalue",4515// CHECK-NEXT:        "name": "a",4516// CHECK-NEXT:        "isArrow": false,4517// CHECK-NEXT:        "referencedMemberDecl": "0x{{.*}}",4518// CHECK-NEXT:        "inner": [4519// CHECK-NEXT:         {4520// CHECK-NEXT:          "id": "0x{{.*}}",4521// CHECK-NEXT:          "kind": "DeclRefExpr",4522// CHECK-NEXT:          "range": {4523// CHECK-NEXT:           "begin": {4524// CHECK-NEXT:            "offset": {{[0-9]+}},4525// CHECK-NEXT:            "col": 3,4526// CHECK-NEXT:            "tokLen": 14527// CHECK-NEXT:           },4528// CHECK-NEXT:           "end": {4529// CHECK-NEXT:            "offset": {{[0-9]+}},4530// CHECK-NEXT:            "col": 3,4531// CHECK-NEXT:            "tokLen": 14532// CHECK-NEXT:           }4533// CHECK-NEXT:          },4534// CHECK-NEXT:          "type": {4535// CHECK-NEXT:           "qualType": "struct S"4536// CHECK-NEXT:          },4537// CHECK-NEXT:          "valueCategory": "lvalue",4538// CHECK-NEXT:          "referencedDecl": {4539// CHECK-NEXT:           "id": "0x{{.*}}",4540// CHECK-NEXT:           "kind": "ParmVarDecl",4541// CHECK-NEXT:           "name": "b",4542// CHECK-NEXT:           "type": {4543// CHECK-NEXT:            "qualType": "struct S"4544// CHECK-NEXT:           }4545// CHECK-NEXT:          }4546// CHECK-NEXT:         }4547// CHECK-NEXT:        ]4548// CHECK-NEXT:       }4549// CHECK-NEXT:      ]4550// CHECK-NEXT:     },4551// CHECK-NEXT:     {4552// CHECK-NEXT:      "id": "0x{{.*}}",4553// CHECK-NEXT:      "kind": "ImplicitCastExpr",4554// CHECK-NEXT:      "range": {4555// CHECK-NEXT:       "begin": {4556// CHECK-NEXT:        "offset": {{[0-9]+}},4557// CHECK-NEXT:        "line": 77,4558// CHECK-NEXT:        "col": 3,4559// CHECK-NEXT:        "tokLen": 14560// CHECK-NEXT:       },4561// CHECK-NEXT:       "end": {4562// CHECK-NEXT:        "offset": {{[0-9]+}},4563// CHECK-NEXT:        "col": 6,4564// CHECK-NEXT:        "tokLen": 14565// CHECK-NEXT:       }4566// CHECK-NEXT:      },4567// CHECK-NEXT:      "type": {4568// CHECK-NEXT:       "qualType": "int"4569// CHECK-NEXT:      },4570// CHECK-NEXT:      "valueCategory": "prvalue",4571// CHECK-NEXT:      "castKind": "LValueToRValue",4572// CHECK-NEXT:      "inner": [4573// CHECK-NEXT:       {4574// CHECK-NEXT:        "id": "0x{{.*}}",4575// CHECK-NEXT:        "kind": "MemberExpr",4576// CHECK-NEXT:        "range": {4577// CHECK-NEXT:         "begin": {4578// CHECK-NEXT:          "offset": {{[0-9]+}},4579// CHECK-NEXT:          "col": 3,4580// CHECK-NEXT:          "tokLen": 14581// CHECK-NEXT:         },4582// CHECK-NEXT:         "end": {4583// CHECK-NEXT:          "offset": {{[0-9]+}},4584// CHECK-NEXT:          "col": 6,4585// CHECK-NEXT:          "tokLen": 14586// CHECK-NEXT:         }4587// CHECK-NEXT:        },4588// CHECK-NEXT:        "type": {4589// CHECK-NEXT:         "qualType": "int"4590// CHECK-NEXT:        },4591// CHECK-NEXT:        "valueCategory": "lvalue",4592// CHECK-NEXT:        "name": "a",4593// CHECK-NEXT:        "isArrow": true,4594// CHECK-NEXT:        "referencedMemberDecl": "0x{{.*}}",4595// CHECK-NEXT:        "inner": [4596// CHECK-NEXT:         {4597// CHECK-NEXT:          "id": "0x{{.*}}",4598// CHECK-NEXT:          "kind": "ImplicitCastExpr",4599// CHECK-NEXT:          "range": {4600// CHECK-NEXT:           "begin": {4601// CHECK-NEXT:            "offset": {{[0-9]+}},4602// CHECK-NEXT:            "col": 3,4603// CHECK-NEXT:            "tokLen": 14604// CHECK-NEXT:           },4605// CHECK-NEXT:           "end": {4606// CHECK-NEXT:            "offset": {{[0-9]+}},4607// CHECK-NEXT:            "col": 3,4608// CHECK-NEXT:            "tokLen": 14609// CHECK-NEXT:           }4610// CHECK-NEXT:          },4611// CHECK-NEXT:          "type": {4612// CHECK-NEXT:           "qualType": "struct S *"4613// CHECK-NEXT:          },4614// CHECK-NEXT:          "valueCategory": "prvalue",4615// CHECK-NEXT:          "castKind": "LValueToRValue",4616// CHECK-NEXT:          "inner": [4617// CHECK-NEXT:           {4618// CHECK-NEXT:            "id": "0x{{.*}}",4619// CHECK-NEXT:            "kind": "DeclRefExpr",4620// CHECK-NEXT:            "range": {4621// CHECK-NEXT:             "begin": {4622// CHECK-NEXT:              "offset": {{[0-9]+}},4623// CHECK-NEXT:              "col": 3,4624// CHECK-NEXT:              "tokLen": 14625// CHECK-NEXT:             },4626// CHECK-NEXT:             "end": {4627// CHECK-NEXT:              "offset": {{[0-9]+}},4628// CHECK-NEXT:              "col": 3,4629// CHECK-NEXT:              "tokLen": 14630// CHECK-NEXT:             }4631// CHECK-NEXT:            },4632// CHECK-NEXT:            "type": {4633// CHECK-NEXT:             "qualType": "struct S *"4634// CHECK-NEXT:            },4635// CHECK-NEXT:            "valueCategory": "lvalue",4636// CHECK-NEXT:            "referencedDecl": {4637// CHECK-NEXT:             "id": "0x{{.*}}",4638// CHECK-NEXT:             "kind": "ParmVarDecl",4639// CHECK-NEXT:             "name": "c",4640// CHECK-NEXT:             "type": {4641// CHECK-NEXT:              "qualType": "struct S *"4642// CHECK-NEXT:             }4643// CHECK-NEXT:            }4644// CHECK-NEXT:           }4645// CHECK-NEXT:          ]4646// CHECK-NEXT:         }4647// CHECK-NEXT:        ]4648// CHECK-NEXT:       }4649// CHECK-NEXT:      ]4650// CHECK-NEXT:     },4651// CHECK-NEXT:     {4652// CHECK-NEXT:      "id": "0x{{.*}}",4653// CHECK-NEXT:      "kind": "ImplicitCastExpr",4654// CHECK-NEXT:      "range": {4655// CHECK-NEXT:       "begin": {4656// CHECK-NEXT:        "offset": {{[0-9]+}},4657// CHECK-NEXT:        "line": 81,4658// CHECK-NEXT:        "col": 3,4659// CHECK-NEXT:        "tokLen": 14660// CHECK-NEXT:       },4661// CHECK-NEXT:       "end": {4662// CHECK-NEXT:        "offset": {{[0-9]+}},4663// CHECK-NEXT:        "col": 25,4664// CHECK-NEXT:        "tokLen": 14665// CHECK-NEXT:       }4666// CHECK-NEXT:      },4667// CHECK-NEXT:      "type": {4668// CHECK-NEXT:       "qualType": "int *"4669// CHECK-NEXT:      },4670// CHECK-NEXT:      "valueCategory": "prvalue",4671// CHECK-NEXT:      "castKind": "ArrayToPointerDecay",4672// CHECK-NEXT:      "inner": [4673// CHECK-NEXT:       {4674// CHECK-NEXT:        "id": "0x{{.*}}",4675// CHECK-NEXT:        "kind": "CompoundLiteralExpr",4676// CHECK-NEXT:        "range": {4677// CHECK-NEXT:         "begin": {4678// CHECK-NEXT:          "offset": {{[0-9]+}},4679// CHECK-NEXT:          "col": 3,4680// CHECK-NEXT:          "tokLen": 14681// CHECK-NEXT:         },4682// CHECK-NEXT:         "end": {4683// CHECK-NEXT:          "offset": {{[0-9]+}},4684// CHECK-NEXT:          "col": 25,4685// CHECK-NEXT:          "tokLen": 14686// CHECK-NEXT:         }4687// CHECK-NEXT:        },4688// CHECK-NEXT:        "type": {4689// CHECK-NEXT:         "qualType": "int[4]"4690// CHECK-NEXT:        },4691// CHECK-NEXT:        "valueCategory": "lvalue",4692// CHECK-NEXT:        "inner": [4693// CHECK-NEXT:         {4694// CHECK-NEXT:          "id": "0x{{.*}}",4695// CHECK-NEXT:          "kind": "InitListExpr",4696// CHECK-NEXT:          "range": {4697// CHECK-NEXT:           "begin": {4698// CHECK-NEXT:            "offset": {{[0-9]+}},4699// CHECK-NEXT:            "col": 12,4700// CHECK-NEXT:            "tokLen": 14701// CHECK-NEXT:           },4702// CHECK-NEXT:           "end": {4703// CHECK-NEXT:            "offset": {{[0-9]+}},4704// CHECK-NEXT:            "col": 25,4705// CHECK-NEXT:            "tokLen": 14706// CHECK-NEXT:           }4707// CHECK-NEXT:          },4708// CHECK-NEXT:          "type": {4709// CHECK-NEXT:           "qualType": "int[4]"4710// CHECK-NEXT:          },4711// CHECK-NEXT:          "valueCategory": "prvalue",4712// CHECK-NEXT:          "inner": [4713// CHECK-NEXT:           {4714// CHECK-NEXT:            "id": "0x{{.*}}",4715// CHECK-NEXT:            "kind": "IntegerLiteral",4716// CHECK-NEXT:            "range": {4717// CHECK-NEXT:             "begin": {4718// CHECK-NEXT:              "offset": {{[0-9]+}},4719// CHECK-NEXT:              "col": 13,4720// CHECK-NEXT:              "tokLen": 14721// CHECK-NEXT:             },4722// CHECK-NEXT:             "end": {4723// CHECK-NEXT:              "offset": {{[0-9]+}},4724// CHECK-NEXT:              "col": 13,4725// CHECK-NEXT:              "tokLen": 14726// CHECK-NEXT:             }4727// CHECK-NEXT:            },4728// CHECK-NEXT:            "type": {4729// CHECK-NEXT:             "qualType": "int"4730// CHECK-NEXT:            },4731// CHECK-NEXT:            "valueCategory": "prvalue",4732// CHECK-NEXT:            "value": "1"4733// CHECK-NEXT:           },4734// CHECK-NEXT:           {4735// CHECK-NEXT:            "id": "0x{{.*}}",4736// CHECK-NEXT:            "kind": "IntegerLiteral",4737// CHECK-NEXT:            "range": {4738// CHECK-NEXT:             "begin": {4739// CHECK-NEXT:              "offset": {{[0-9]+}},4740// CHECK-NEXT:              "col": 16,4741// CHECK-NEXT:              "tokLen": 14742// CHECK-NEXT:             },4743// CHECK-NEXT:             "end": {4744// CHECK-NEXT:              "offset": {{[0-9]+}},4745// CHECK-NEXT:              "col": 16,4746// CHECK-NEXT:              "tokLen": 14747// CHECK-NEXT:             }4748// CHECK-NEXT:            },4749// CHECK-NEXT:            "type": {4750// CHECK-NEXT:             "qualType": "int"4751// CHECK-NEXT:            },4752// CHECK-NEXT:            "valueCategory": "prvalue",4753// CHECK-NEXT:            "value": "2"4754// CHECK-NEXT:           },4755// CHECK-NEXT:           {4756// CHECK-NEXT:            "id": "0x{{.*}}",4757// CHECK-NEXT:            "kind": "IntegerLiteral",4758// CHECK-NEXT:            "range": {4759// CHECK-NEXT:             "begin": {4760// CHECK-NEXT:              "offset": {{[0-9]+}},4761// CHECK-NEXT:              "col": 19,4762// CHECK-NEXT:              "tokLen": 14763// CHECK-NEXT:             },4764// CHECK-NEXT:             "end": {4765// CHECK-NEXT:              "offset": {{[0-9]+}},4766// CHECK-NEXT:              "col": 19,4767// CHECK-NEXT:              "tokLen": 14768// CHECK-NEXT:             }4769// CHECK-NEXT:            },4770// CHECK-NEXT:            "type": {4771// CHECK-NEXT:             "qualType": "int"4772// CHECK-NEXT:            },4773// CHECK-NEXT:            "valueCategory": "prvalue",4774// CHECK-NEXT:            "value": "3"4775// CHECK-NEXT:           },4776// CHECK-NEXT:           {4777// CHECK-NEXT:            "id": "0x{{.*}}",4778// CHECK-NEXT:            "kind": "IntegerLiteral",4779// CHECK-NEXT:            "range": {4780// CHECK-NEXT:             "begin": {4781// CHECK-NEXT:              "offset": {{[0-9]+}},4782// CHECK-NEXT:              "col": 22,4783// CHECK-NEXT:              "tokLen": 14784// CHECK-NEXT:             },4785// CHECK-NEXT:             "end": {4786// CHECK-NEXT:              "offset": {{[0-9]+}},4787// CHECK-NEXT:              "col": 22,4788// CHECK-NEXT:              "tokLen": 14789// CHECK-NEXT:             }4790// CHECK-NEXT:            },4791// CHECK-NEXT:            "type": {4792// CHECK-NEXT:             "qualType": "int"4793// CHECK-NEXT:            },4794// CHECK-NEXT:            "valueCategory": "prvalue",4795// CHECK-NEXT:            "value": "4"4796// CHECK-NEXT:           }4797// CHECK-NEXT:          ]4798// CHECK-NEXT:         }4799// CHECK-NEXT:        ]4800// CHECK-NEXT:       }4801// CHECK-NEXT:      ]4802// CHECK-NEXT:     },4803// CHECK-NEXT:     {4804// CHECK-NEXT:      "id": "0x{{.*}}",4805// CHECK-NEXT:      "kind": "ImplicitCastExpr",4806// CHECK-NEXT:      "range": {4807// CHECK-NEXT:       "begin": {4808// CHECK-NEXT:        "offset": {{[0-9]+}},4809// CHECK-NEXT:        "line": 82,4810// CHECK-NEXT:        "col": 3,4811// CHECK-NEXT:        "tokLen": 14812// CHECK-NEXT:       },4813// CHECK-NEXT:       "end": {4814// CHECK-NEXT:        "offset": {{[0-9]+}},4815// CHECK-NEXT:        "col": 15,4816// CHECK-NEXT:        "tokLen": 14817// CHECK-NEXT:       }4818// CHECK-NEXT:      },4819// CHECK-NEXT:      "type": {4820// CHECK-NEXT:       "qualType": "struct S"4821// CHECK-NEXT:      },4822// CHECK-NEXT:      "valueCategory": "prvalue",4823// CHECK-NEXT:      "castKind": "LValueToRValue",4824// CHECK-NEXT:      "inner": [4825// CHECK-NEXT:       {4826// CHECK-NEXT:        "id": "0x{{.*}}",4827// CHECK-NEXT:        "kind": "CompoundLiteralExpr",4828// CHECK-NEXT:        "range": {4829// CHECK-NEXT:         "begin": {4830// CHECK-NEXT:          "offset": {{[0-9]+}},4831// CHECK-NEXT:          "col": 3,4832// CHECK-NEXT:          "tokLen": 14833// CHECK-NEXT:         },4834// CHECK-NEXT:         "end": {4835// CHECK-NEXT:          "offset": {{[0-9]+}},4836// CHECK-NEXT:          "col": 15,4837// CHECK-NEXT:          "tokLen": 14838// CHECK-NEXT:         }4839// CHECK-NEXT:        },4840// CHECK-NEXT:        "type": {4841// CHECK-NEXT:         "qualType": "struct S"4842// CHECK-NEXT:        },4843// CHECK-NEXT:        "valueCategory": "lvalue",4844// CHECK-NEXT:        "inner": [4845// CHECK-NEXT:         {4846// CHECK-NEXT:          "id": "0x{{.*}}",4847// CHECK-NEXT:          "kind": "InitListExpr",4848// CHECK-NEXT:          "range": {4849// CHECK-NEXT:           "begin": {4850// CHECK-NEXT:            "offset": {{[0-9]+}},4851// CHECK-NEXT:            "col": 13,4852// CHECK-NEXT:            "tokLen": 14853// CHECK-NEXT:           },4854// CHECK-NEXT:           "end": {4855// CHECK-NEXT:            "offset": {{[0-9]+}},4856// CHECK-NEXT:            "col": 15,4857// CHECK-NEXT:            "tokLen": 14858// CHECK-NEXT:           }4859// CHECK-NEXT:          },4860// CHECK-NEXT:          "type": {4861// CHECK-NEXT:           "qualType": "struct S"4862// CHECK-NEXT:          },4863// CHECK-NEXT:          "valueCategory": "prvalue",4864// CHECK-NEXT:          "inner": [4865// CHECK-NEXT:           {4866// CHECK-NEXT:            "id": "0x{{.*}}",4867// CHECK-NEXT:            "kind": "IntegerLiteral",4868// CHECK-NEXT:            "range": {4869// CHECK-NEXT:             "begin": {4870// CHECK-NEXT:              "offset": {{[0-9]+}},4871// CHECK-NEXT:              "col": 14,4872// CHECK-NEXT:              "tokLen": 14873// CHECK-NEXT:             },4874// CHECK-NEXT:             "end": {4875// CHECK-NEXT:              "offset": {{[0-9]+}},4876// CHECK-NEXT:              "col": 14,4877// CHECK-NEXT:              "tokLen": 14878// CHECK-NEXT:             }4879// CHECK-NEXT:            },4880// CHECK-NEXT:            "type": {4881// CHECK-NEXT:             "qualType": "int"4882// CHECK-NEXT:            },4883// CHECK-NEXT:            "valueCategory": "prvalue",4884// CHECK-NEXT:            "value": "1"4885// CHECK-NEXT:           }4886// CHECK-NEXT:          ]4887// CHECK-NEXT:         }4888// CHECK-NEXT:        ]4889// CHECK-NEXT:       }4890// CHECK-NEXT:      ]4891// CHECK-NEXT:     }4892// CHECK-NEXT:    ]4893// CHECK-NEXT:   }4894// CHECK-NEXT:  ]4895// CHECK-NEXT: }4896 4897 4898// CHECK-NOT: {{^}}Dumping4899// CHECK:  "kind": "FunctionDecl",4900// CHECK-NEXT:  "loc": {4901// CHECK-NEXT:   "offset": {{[0-9]+}},4902// CHECK-NEXT:   "line": 87,4903// CHECK-NEXT:   "col": 6,4904// CHECK-NEXT:   "tokLen": 184905// CHECK-NEXT:  },4906// CHECK-NEXT:  "range": {4907// CHECK-NEXT:   "begin": {4908// CHECK-NEXT:    "offset": {{[0-9]+}},4909// CHECK-NEXT:    "col": 1,4910// CHECK-NEXT:    "tokLen": 44911// CHECK-NEXT:   },4912// CHECK-NEXT:   "end": {4913// CHECK-NEXT:    "offset": {{[0-9]+}},4914// CHECK-NEXT:    "line": 107,4915// CHECK-NEXT:    "col": 1,4916// CHECK-NEXT:    "tokLen": 14917// CHECK-NEXT:   }4918// CHECK-NEXT:  },4919// CHECK-NEXT:  "name": "PrimaryExpressions",4920// CHECK-NEXT:  "mangledName": "PrimaryExpressions",4921// CHECK-NEXT:  "type": {4922// CHECK-NEXT:   "qualType": "void (int)"4923// CHECK-NEXT:  },4924// CHECK-NEXT:  "inner": [4925// CHECK-NEXT:   {4926// CHECK-NEXT:    "id": "0x{{.*}}",4927// CHECK-NEXT:    "kind": "ParmVarDecl",4928// CHECK-NEXT:    "loc": {4929// CHECK-NEXT:     "offset": {{[0-9]+}},4930// CHECK-NEXT:     "line": 87,4931// CHECK-NEXT:     "col": 29,4932// CHECK-NEXT:     "tokLen": 14933// CHECK-NEXT:    },4934// CHECK-NEXT:    "range": {4935// CHECK-NEXT:     "begin": {4936// CHECK-NEXT:      "offset": {{[0-9]+}},4937// CHECK-NEXT:      "col": 25,4938// CHECK-NEXT:      "tokLen": 34939// CHECK-NEXT:     },4940// CHECK-NEXT:     "end": {4941// CHECK-NEXT:      "offset": {{[0-9]+}},4942// CHECK-NEXT:      "col": 29,4943// CHECK-NEXT:      "tokLen": 14944// CHECK-NEXT:     }4945// CHECK-NEXT:    },4946// CHECK-NEXT:    "isUsed": true,4947// CHECK-NEXT:    "name": "a",4948// CHECK-NEXT:    "type": {4949// CHECK-NEXT:     "qualType": "int"4950// CHECK-NEXT:    }4951// CHECK-NEXT:   },4952// CHECK-NEXT:   {4953// CHECK-NEXT:    "id": "0x{{.*}}",4954// CHECK-NEXT:    "kind": "CompoundStmt",4955// CHECK-NEXT:    "range": {4956// CHECK-NEXT:     "begin": {4957// CHECK-NEXT:      "offset": {{[0-9]+}},4958// CHECK-NEXT:      "col": 32,4959// CHECK-NEXT:      "tokLen": 14960// CHECK-NEXT:     },4961// CHECK-NEXT:     "end": {4962// CHECK-NEXT:      "offset": {{[0-9]+}},4963// CHECK-NEXT:      "line": 107,4964// CHECK-NEXT:      "col": 1,4965// CHECK-NEXT:      "tokLen": 14966// CHECK-NEXT:     }4967// CHECK-NEXT:    },4968// CHECK-NEXT:    "inner": [4969// CHECK-NEXT:     {4970// CHECK-NEXT:      "id": "0x{{.*}}",4971// CHECK-NEXT:      "kind": "ImplicitCastExpr",4972// CHECK-NEXT:      "range": {4973// CHECK-NEXT:       "begin": {4974// CHECK-NEXT:        "offset": {{[0-9]+}},4975// CHECK-NEXT:        "line": 88,4976// CHECK-NEXT:        "col": 3,4977// CHECK-NEXT:        "tokLen": 14978// CHECK-NEXT:       },4979// CHECK-NEXT:       "end": {4980// CHECK-NEXT:        "offset": {{[0-9]+}},4981// CHECK-NEXT:        "col": 3,4982// CHECK-NEXT:        "tokLen": 14983// CHECK-NEXT:       }4984// CHECK-NEXT:      },4985// CHECK-NEXT:      "type": {4986// CHECK-NEXT:       "qualType": "int"4987// CHECK-NEXT:      },4988// CHECK-NEXT:      "valueCategory": "prvalue",4989// CHECK-NEXT:      "castKind": "LValueToRValue",4990// CHECK-NEXT:      "inner": [4991// CHECK-NEXT:       {4992// CHECK-NEXT:        "id": "0x{{.*}}",4993// CHECK-NEXT:        "kind": "DeclRefExpr",4994// CHECK-NEXT:        "range": {4995// CHECK-NEXT:         "begin": {4996// CHECK-NEXT:          "offset": {{[0-9]+}},4997// CHECK-NEXT:          "col": 3,4998// CHECK-NEXT:          "tokLen": 14999// CHECK-NEXT:         },5000// CHECK-NEXT:         "end": {5001// CHECK-NEXT:          "offset": {{[0-9]+}},5002// CHECK-NEXT:          "col": 3,5003// CHECK-NEXT:          "tokLen": 15004// CHECK-NEXT:         }5005// CHECK-NEXT:        },5006// CHECK-NEXT:        "type": {5007// CHECK-NEXT:         "qualType": "int"5008// CHECK-NEXT:        },5009// CHECK-NEXT:        "valueCategory": "lvalue",5010// CHECK-NEXT:        "referencedDecl": {5011// CHECK-NEXT:         "id": "0x{{.*}}",5012// CHECK-NEXT:         "kind": "ParmVarDecl",5013// CHECK-NEXT:         "name": "a",5014// CHECK-NEXT:         "type": {5015// CHECK-NEXT:          "qualType": "int"5016// CHECK-NEXT:         }5017// CHECK-NEXT:        }5018// CHECK-NEXT:       }5019// CHECK-NEXT:      ]5020// CHECK-NEXT:     },5021// CHECK-NEXT:     {5022// CHECK-NEXT:      "id": "0x{{.*}}",5023// CHECK-NEXT:      "kind": "CharacterLiteral",5024// CHECK-NEXT:      "range": {5025// CHECK-NEXT:       "begin": {5026// CHECK-NEXT:        "offset": {{[0-9]+}},5027// CHECK-NEXT:        "line": 89,5028// CHECK-NEXT:        "col": 3,5029// CHECK-NEXT:        "tokLen": 35030// CHECK-NEXT:       },5031// CHECK-NEXT:       "end": {5032// CHECK-NEXT:        "offset": {{[0-9]+}},5033// CHECK-NEXT:        "col": 3,5034// CHECK-NEXT:        "tokLen": 35035// CHECK-NEXT:       }5036// CHECK-NEXT:      },5037// CHECK-NEXT:      "type": {5038// CHECK-NEXT:       "qualType": "int"5039// CHECK-NEXT:      },5040// CHECK-NEXT:      "valueCategory": "prvalue",5041// CHECK-NEXT:      "value": 975042// CHECK-NEXT:     },5043// CHECK-NEXT:     {5044// CHECK-NEXT:      "id": "0x{{.*}}",5045// CHECK-NEXT:      "kind": "CharacterLiteral",5046// CHECK-NEXT:      "range": {5047// CHECK-NEXT:       "begin": {5048// CHECK-NEXT:        "offset": {{[0-9]+}},5049// CHECK-NEXT:        "line": 90,5050// CHECK-NEXT:        "col": 3,5051// CHECK-NEXT:        "tokLen": 45052// CHECK-NEXT:       },5053// CHECK-NEXT:       "end": {5054// CHECK-NEXT:        "offset": {{[0-9]+}},5055// CHECK-NEXT:        "col": 3,5056// CHECK-NEXT:        "tokLen": 45057// CHECK-NEXT:       }5058// CHECK-NEXT:      },5059// CHECK-NEXT:      "type": {5060// CHECK-NEXT:       "qualType": "int"5061// CHECK-NEXT:      },5062// CHECK-NEXT:      "valueCategory": "prvalue",5063// CHECK-NEXT:      "value": 975064// CHECK-NEXT:     },5065// CHECK-NEXT:     {5066// CHECK-NEXT:      "id": "0x{{.*}}",5067// CHECK-NEXT:      "kind": "ImplicitCastExpr",5068// CHECK-NEXT:      "range": {5069// CHECK-NEXT:       "begin": {5070// CHECK-NEXT:        "offset": {{[0-9]+}},5071// CHECK-NEXT:        "line": 91,5072// CHECK-NEXT:        "col": 3,5073// CHECK-NEXT:        "tokLen": 35074// CHECK-NEXT:       },5075// CHECK-NEXT:       "end": {5076// CHECK-NEXT:        "offset": {{[0-9]+}},5077// CHECK-NEXT:        "col": 3,5078// CHECK-NEXT:        "tokLen": 35079// CHECK-NEXT:       }5080// CHECK-NEXT:      },5081// CHECK-NEXT:      "type": {5082// CHECK-NEXT:       "qualType": "char *"5083// CHECK-NEXT:      },5084// CHECK-NEXT:      "valueCategory": "prvalue",5085// CHECK-NEXT:      "castKind": "ArrayToPointerDecay",5086// CHECK-NEXT:      "inner": [5087// CHECK-NEXT:       {5088// CHECK-NEXT:        "id": "0x{{.*}}",5089// CHECK-NEXT:        "kind": "StringLiteral",5090// CHECK-NEXT:        "range": {5091// CHECK-NEXT:         "begin": {5092// CHECK-NEXT:          "offset": {{[0-9]+}},5093// CHECK-NEXT:          "col": 3,5094// CHECK-NEXT:          "tokLen": 35095// CHECK-NEXT:         },5096// CHECK-NEXT:         "end": {5097// CHECK-NEXT:          "offset": {{[0-9]+}},5098// CHECK-NEXT:          "col": 3,5099// CHECK-NEXT:          "tokLen": 35100// CHECK-NEXT:         }5101// CHECK-NEXT:        },5102// CHECK-NEXT:        "type": {5103// CHECK-NEXT:         "qualType": "char[2]"5104// CHECK-NEXT:        },5105// CHECK-NEXT:        "valueCategory": "lvalue",5106// CHECK-NEXT:        "value": "\"a\""5107// CHECK-NEXT:       }5108// CHECK-NEXT:      ]5109// CHECK-NEXT:     },5110// CHECK-NEXT:     {5111// CHECK-NEXT:      "id": "0x{{.*}}",5112// CHECK-NEXT:      "kind": "ImplicitCastExpr",5113// CHECK-NEXT:      "range": {5114// CHECK-NEXT:       "begin": {5115// CHECK-NEXT:        "offset": {{[0-9]+}},5116// CHECK-NEXT:        "line": 92,5117// CHECK-NEXT:        "col": 3,5118// CHECK-NEXT:        "tokLen": 45119// CHECK-NEXT:       },5120// CHECK-NEXT:       "end": {5121// CHECK-NEXT:        "offset": {{[0-9]+}},5122// CHECK-NEXT:        "col": 3,5123// CHECK-NEXT:        "tokLen": 45124// CHECK-NEXT:       }5125// CHECK-NEXT:      },5126// CHECK-NEXT:      "type": {5127// CHECK-NEXT:       "qualType": "int *"5128// CHECK-NEXT:      },5129// CHECK-NEXT:      "valueCategory": "prvalue",5130// CHECK-NEXT:      "castKind": "ArrayToPointerDecay",5131// CHECK-NEXT:      "inner": [5132// CHECK-NEXT:       {5133// CHECK-NEXT:        "id": "0x{{.*}}",5134// CHECK-NEXT:        "kind": "StringLiteral",5135// CHECK-NEXT:        "range": {5136// CHECK-NEXT:         "begin": {5137// CHECK-NEXT:          "offset": {{[0-9]+}},5138// CHECK-NEXT:          "col": 3,5139// CHECK-NEXT:          "tokLen": 45140// CHECK-NEXT:         },5141// CHECK-NEXT:         "end": {5142// CHECK-NEXT:          "offset": {{[0-9]+}},5143// CHECK-NEXT:          "col": 3,5144// CHECK-NEXT:          "tokLen": 45145// CHECK-NEXT:         }5146// CHECK-NEXT:        },5147// CHECK-NEXT:        "type": {5148// CHECK-NEXT:         "qualType": "int[2]"5149// CHECK-NEXT:        },5150// CHECK-NEXT:        "valueCategory": "lvalue",5151// CHECK-NEXT:        "value": "L\"a\""5152// CHECK-NEXT:       }5153// CHECK-NEXT:      ]5154// CHECK-NEXT:     },5155// CHECK-NEXT:     {5156// CHECK-NEXT:      "id": "0x{{.*}}",5157// CHECK-NEXT:      "kind": "ImplicitCastExpr",5158// CHECK-NEXT:      "range": {5159// CHECK-NEXT:       "begin": {5160// CHECK-NEXT:        "offset": {{[0-9]+}},5161// CHECK-NEXT:        "line": 93,5162// CHECK-NEXT:        "col": 3,5163// CHECK-NEXT:        "tokLen": 55164// CHECK-NEXT:       },5165// CHECK-NEXT:       "end": {5166// CHECK-NEXT:        "offset": {{[0-9]+}},5167// CHECK-NEXT:        "col": 3,5168// CHECK-NEXT:        "tokLen": 55169// CHECK-NEXT:       }5170// CHECK-NEXT:      },5171// CHECK-NEXT:      "type": {5172// CHECK-NEXT:       "qualType": "char *"5173// CHECK-NEXT:      },5174// CHECK-NEXT:      "valueCategory": "prvalue",5175// CHECK-NEXT:      "castKind": "ArrayToPointerDecay",5176// CHECK-NEXT:      "inner": [5177// CHECK-NEXT:       {5178// CHECK-NEXT:        "id": "0x{{.*}}",5179// CHECK-NEXT:        "kind": "StringLiteral",5180// CHECK-NEXT:        "range": {5181// CHECK-NEXT:         "begin": {5182// CHECK-NEXT:          "offset": {{[0-9]+}},5183// CHECK-NEXT:          "col": 3,5184// CHECK-NEXT:          "tokLen": 55185// CHECK-NEXT:         },5186// CHECK-NEXT:         "end": {5187// CHECK-NEXT:          "offset": {{[0-9]+}},5188// CHECK-NEXT:          "col": 3,5189// CHECK-NEXT:          "tokLen": 55190// CHECK-NEXT:         }5191// CHECK-NEXT:        },5192// CHECK-NEXT:        "type": {5193// CHECK-NEXT:         "qualType": "char[2]"5194// CHECK-NEXT:        },5195// CHECK-NEXT:        "valueCategory": "lvalue",5196// CHECK-NEXT:        "value": "u8\"a\""5197// CHECK-NEXT:       }5198// CHECK-NEXT:      ]5199// CHECK-NEXT:     },5200// CHECK-NEXT:     {5201// CHECK-NEXT:      "id": "0x{{.*}}",5202// CHECK-NEXT:      "kind": "ImplicitCastExpr",5203// CHECK-NEXT:      "range": {5204// CHECK-NEXT:       "begin": {5205// CHECK-NEXT:        "offset": {{[0-9]+}},5206// CHECK-NEXT:        "line": 94,5207// CHECK-NEXT:        "col": 3,5208// CHECK-NEXT:        "tokLen": 45209// CHECK-NEXT:       },5210// CHECK-NEXT:       "end": {5211// CHECK-NEXT:        "offset": {{[0-9]+}},5212// CHECK-NEXT:        "col": 3,5213// CHECK-NEXT:        "tokLen": 45214// CHECK-NEXT:       }5215// CHECK-NEXT:      },5216// CHECK-NEXT:      "type": {5217// CHECK-NEXT:       "qualType": "unsigned int *"5218// CHECK-NEXT:      },5219// CHECK-NEXT:      "valueCategory": "prvalue",5220// CHECK-NEXT:      "castKind": "ArrayToPointerDecay",5221// CHECK-NEXT:      "inner": [5222// CHECK-NEXT:       {5223// CHECK-NEXT:        "id": "0x{{.*}}",5224// CHECK-NEXT:        "kind": "StringLiteral",5225// CHECK-NEXT:        "range": {5226// CHECK-NEXT:         "begin": {5227// CHECK-NEXT:          "offset": {{[0-9]+}},5228// CHECK-NEXT:          "col": 3,5229// CHECK-NEXT:          "tokLen": 45230// CHECK-NEXT:         },5231// CHECK-NEXT:         "end": {5232// CHECK-NEXT:          "offset": {{[0-9]+}},5233// CHECK-NEXT:          "col": 3,5234// CHECK-NEXT:          "tokLen": 45235// CHECK-NEXT:         }5236// CHECK-NEXT:        },5237// CHECK-NEXT:        "type": {5238// CHECK-NEXT:         "qualType": "unsigned int[2]"5239// CHECK-NEXT:        },5240// CHECK-NEXT:        "valueCategory": "lvalue",5241// CHECK-NEXT:        "value": "U\"a\""5242// CHECK-NEXT:       }5243// CHECK-NEXT:      ]5244// CHECK-NEXT:     },5245// CHECK-NEXT:     {5246// CHECK-NEXT:      "id": "0x{{.*}}",5247// CHECK-NEXT:      "kind": "ImplicitCastExpr",5248// CHECK-NEXT:      "range": {5249// CHECK-NEXT:       "begin": {5250// CHECK-NEXT:        "offset": {{[0-9]+}},5251// CHECK-NEXT:        "line": 95,5252// CHECK-NEXT:        "col": 3,5253// CHECK-NEXT:        "tokLen": 45254// CHECK-NEXT:       },5255// CHECK-NEXT:       "end": {5256// CHECK-NEXT:        "offset": {{[0-9]+}},5257// CHECK-NEXT:        "col": 3,5258// CHECK-NEXT:        "tokLen": 45259// CHECK-NEXT:       }5260// CHECK-NEXT:      },5261// CHECK-NEXT:      "type": {5262// CHECK-NEXT:       "qualType": "unsigned short *"5263// CHECK-NEXT:      },5264// CHECK-NEXT:      "valueCategory": "prvalue",5265// CHECK-NEXT:      "castKind": "ArrayToPointerDecay",5266// CHECK-NEXT:      "inner": [5267// CHECK-NEXT:       {5268// CHECK-NEXT:        "id": "0x{{.*}}",5269// CHECK-NEXT:        "kind": "StringLiteral",5270// CHECK-NEXT:        "range": {5271// CHECK-NEXT:         "begin": {5272// CHECK-NEXT:          "offset": {{[0-9]+}},5273// CHECK-NEXT:          "col": 3,5274// CHECK-NEXT:          "tokLen": 45275// CHECK-NEXT:         },5276// CHECK-NEXT:         "end": {5277// CHECK-NEXT:          "offset": {{[0-9]+}},5278// CHECK-NEXT:          "col": 3,5279// CHECK-NEXT:          "tokLen": 45280// CHECK-NEXT:         }5281// CHECK-NEXT:        },5282// CHECK-NEXT:        "type": {5283// CHECK-NEXT:         "qualType": "unsigned short[2]"5284// CHECK-NEXT:        },5285// CHECK-NEXT:        "valueCategory": "lvalue",5286// CHECK-NEXT:        "value": "u\"a\""5287// CHECK-NEXT:       }5288// CHECK-NEXT:      ]5289// CHECK-NEXT:     },5290// CHECK-NEXT:     {5291// CHECK-NEXT:      "id": "0x{{.*}}",5292// CHECK-NEXT:      "kind": "IntegerLiteral",5293// CHECK-NEXT:      "range": {5294// CHECK-NEXT:       "begin": {5295// CHECK-NEXT:        "offset": {{[0-9]+}},5296// CHECK-NEXT:        "line": 97,5297// CHECK-NEXT:        "col": 3,5298// CHECK-NEXT:        "tokLen": 15299// CHECK-NEXT:       },5300// CHECK-NEXT:       "end": {5301// CHECK-NEXT:        "offset": {{[0-9]+}},5302// CHECK-NEXT:        "col": 3,5303// CHECK-NEXT:        "tokLen": 15304// CHECK-NEXT:       }5305// CHECK-NEXT:      },5306// CHECK-NEXT:      "type": {5307// CHECK-NEXT:       "qualType": "int"5308// CHECK-NEXT:      },5309// CHECK-NEXT:      "valueCategory": "prvalue",5310// CHECK-NEXT:      "value": "1"5311// CHECK-NEXT:     },5312// CHECK-NEXT:     {5313// CHECK-NEXT:      "id": "0x{{.*}}",5314// CHECK-NEXT:      "kind": "IntegerLiteral",5315// CHECK-NEXT:      "range": {5316// CHECK-NEXT:       "begin": {5317// CHECK-NEXT:        "offset": {{[0-9]+}},5318// CHECK-NEXT:        "line": 98,5319// CHECK-NEXT:        "col": 3,5320// CHECK-NEXT:        "tokLen": 25321// CHECK-NEXT:       },5322// CHECK-NEXT:       "end": {5323// CHECK-NEXT:        "offset": {{[0-9]+}},5324// CHECK-NEXT:        "col": 3,5325// CHECK-NEXT:        "tokLen": 25326// CHECK-NEXT:       }5327// CHECK-NEXT:      },5328// CHECK-NEXT:      "type": {5329// CHECK-NEXT:       "qualType": "unsigned int"5330// CHECK-NEXT:      },5331// CHECK-NEXT:      "valueCategory": "prvalue",5332// CHECK-NEXT:      "value": "1"5333// CHECK-NEXT:     },5334// CHECK-NEXT:     {5335// CHECK-NEXT:      "id": "0x{{.*}}",5336// CHECK-NEXT:      "kind": "IntegerLiteral",5337// CHECK-NEXT:      "range": {5338// CHECK-NEXT:       "begin": {5339// CHECK-NEXT:        "offset": {{[0-9]+}},5340// CHECK-NEXT:        "line": 99,5341// CHECK-NEXT:        "col": 3,5342// CHECK-NEXT:        "tokLen": 35343// CHECK-NEXT:       },5344// CHECK-NEXT:       "end": {5345// CHECK-NEXT:        "offset": {{[0-9]+}},5346// CHECK-NEXT:        "col": 3,5347// CHECK-NEXT:        "tokLen": 35348// CHECK-NEXT:       }5349// CHECK-NEXT:      },5350// CHECK-NEXT:      "type": {5351// CHECK-NEXT:       "qualType": "long long"5352// CHECK-NEXT:      },5353// CHECK-NEXT:      "valueCategory": "prvalue",5354// CHECK-NEXT:      "value": "1"5355// CHECK-NEXT:     },5356// CHECK-NEXT:     {5357// CHECK-NEXT:      "id": "0x{{.*}}",5358// CHECK-NEXT:      "kind": "FloatingLiteral",5359// CHECK-NEXT:      "range": {5360// CHECK-NEXT:       "begin": {5361// CHECK-NEXT:        "offset": {{[0-9]+}},5362// CHECK-NEXT:        "line": 100,5363// CHECK-NEXT:        "col": 3,5364// CHECK-NEXT:        "tokLen": 35365// CHECK-NEXT:       },5366// CHECK-NEXT:       "end": {5367// CHECK-NEXT:        "offset": {{[0-9]+}},5368// CHECK-NEXT:        "col": 3,5369// CHECK-NEXT:        "tokLen": 35370// CHECK-NEXT:       }5371// CHECK-NEXT:      },5372// CHECK-NEXT:      "type": {5373// CHECK-NEXT:       "qualType": "double"5374// CHECK-NEXT:      },5375// CHECK-NEXT:      "valueCategory": "prvalue",5376// CHECK-NEXT:      "value": "1"5377// CHECK-NEXT:     },5378// CHECK-NEXT:     {5379// CHECK-NEXT:      "id": "0x{{.*}}",5380// CHECK-NEXT:      "kind": "FloatingLiteral",5381// CHECK-NEXT:      "range": {5382// CHECK-NEXT:       "begin": {5383// CHECK-NEXT:        "offset": {{[0-9]+}},5384// CHECK-NEXT:        "line": 101,5385// CHECK-NEXT:        "col": 3,5386// CHECK-NEXT:        "tokLen": 45387// CHECK-NEXT:       },5388// CHECK-NEXT:       "end": {5389// CHECK-NEXT:        "offset": {{[0-9]+}},5390// CHECK-NEXT:        "col": 3,5391// CHECK-NEXT:        "tokLen": 45392// CHECK-NEXT:       }5393// CHECK-NEXT:      },5394// CHECK-NEXT:      "type": {5395// CHECK-NEXT:       "qualType": "float"5396// CHECK-NEXT:      },5397// CHECK-NEXT:      "valueCategory": "prvalue",5398// CHECK-NEXT:      "value": "1"5399// CHECK-NEXT:     },5400// CHECK-NEXT:     {5401// CHECK-NEXT:      "id": "0x{{.*}}",5402// CHECK-NEXT:      "kind": "FloatingLiteral",5403// CHECK-NEXT:      "range": {5404// CHECK-NEXT:       "begin": {5405// CHECK-NEXT:        "offset": {{[0-9]+}},5406// CHECK-NEXT:        "line": 102,5407// CHECK-NEXT:        "col": 3,5408// CHECK-NEXT:        "tokLen": 265409// CHECK-NEXT:       },5410// CHECK-NEXT:       "end": {5411// CHECK-NEXT:        "offset": {{[0-9]+}},5412// CHECK-NEXT:        "col": 3,5413// CHECK-NEXT:        "tokLen": 265414// CHECK-NEXT:       }5415// CHECK-NEXT:      },5416// CHECK-NEXT:      "type": {5417// CHECK-NEXT:       "qualType": "float"5418// CHECK-NEXT:      },5419// CHECK-NEXT:      "valueCategory": "prvalue",5420// CHECK-NEXT:      "value": "+Inf"5421// CHECK-NEXT:     },5422// CHECK-NEXT:     {5423// CHECK-NEXT:      "id": "0x{{.*}}",5424// CHECK-NEXT:      "kind": "FloatingLiteral",5425// CHECK-NEXT:      "range": {5426// CHECK-NEXT:       "begin": {5427// CHECK-NEXT:        "offset": {{[0-9]+}},5428// CHECK-NEXT:        "line": 103,5429// CHECK-NEXT:        "col": 3,5430// CHECK-NEXT:        "tokLen": 45431// CHECK-NEXT:       },5432// CHECK-NEXT:       "end": {5433// CHECK-NEXT:        "offset": {{[0-9]+}},5434// CHECK-NEXT:        "col": 3,5435// CHECK-NEXT:        "tokLen": 45436// CHECK-NEXT:       }5437// CHECK-NEXT:      },5438// CHECK-NEXT:      "type": {5439// CHECK-NEXT:       "qualType": "long double"5440// CHECK-NEXT:      },5441// CHECK-NEXT:      "valueCategory": "prvalue",5442// CHECK-NEXT:      "value": "1"5443// CHECK-NEXT:     },5444// CHECK-NEXT:     {5445// CHECK-NEXT:      "id": "0x{{.*}}",5446// CHECK-NEXT:      "kind": "DeclRefExpr",5447// CHECK-NEXT:      "range": {5448// CHECK-NEXT:       "begin": {5449// CHECK-NEXT:        "offset": {{[0-9]+}},5450// CHECK-NEXT:        "line": 104,5451// CHECK-NEXT:        "col": 3,5452// CHECK-NEXT:        "tokLen": 35453// CHECK-NEXT:       },5454// CHECK-NEXT:       "end": {5455// CHECK-NEXT:        "offset": {{[0-9]+}},5456// CHECK-NEXT:        "col": 3,5457// CHECK-NEXT:        "tokLen": 35458// CHECK-NEXT:       }5459// CHECK-NEXT:      },5460// CHECK-NEXT:      "type": {5461// CHECK-NEXT:       "qualType": "int"5462// CHECK-NEXT:      },5463// CHECK-NEXT:      "valueCategory": "prvalue",5464// CHECK-NEXT:      "referencedDecl": {5465// CHECK-NEXT:       "id": "0x{{.*}}",5466// CHECK-NEXT:       "kind": "EnumConstantDecl",5467// CHECK-NEXT:       "name": "One",5468// CHECK-NEXT:       "type": {5469// CHECK-NEXT:        "qualType": "int"5470// CHECK-NEXT:       }5471// CHECK-NEXT:      }5472// CHECK-NEXT:     },5473// CHECK-NEXT:     {5474// CHECK-NEXT:      "id": "0x{{.*}}",5475// CHECK-NEXT:      "kind": "ImplicitCastExpr",5476// CHECK-NEXT:      "range": {5477// CHECK-NEXT:       "begin": {5478// CHECK-NEXT:        "offset": {{[0-9]+}},5479// CHECK-NEXT:        "line": 106,5480// CHECK-NEXT:        "col": 3,5481// CHECK-NEXT:        "tokLen": 15482// CHECK-NEXT:       },5483// CHECK-NEXT:       "end": {5484// CHECK-NEXT:        "offset": {{[0-9]+}},5485// CHECK-NEXT:        "col": 5,5486// CHECK-NEXT:        "tokLen": 15487// CHECK-NEXT:       }5488// CHECK-NEXT:      },5489// CHECK-NEXT:      "type": {5490// CHECK-NEXT:       "qualType": "int"5491// CHECK-NEXT:      },5492// CHECK-NEXT:      "valueCategory": "prvalue",5493// CHECK-NEXT:      "castKind": "LValueToRValue",5494// CHECK-NEXT:      "inner": [5495// CHECK-NEXT:       {5496// CHECK-NEXT:        "id": "0x{{.*}}",5497// CHECK-NEXT:        "kind": "ParenExpr",5498// CHECK-NEXT:        "range": {5499// CHECK-NEXT:         "begin": {5500// CHECK-NEXT:          "offset": {{[0-9]+}},5501// CHECK-NEXT:          "col": 3,5502// CHECK-NEXT:          "tokLen": 15503// CHECK-NEXT:         },5504// CHECK-NEXT:         "end": {5505// CHECK-NEXT:          "offset": {{[0-9]+}},5506// CHECK-NEXT:          "col": 5,5507// CHECK-NEXT:          "tokLen": 15508// CHECK-NEXT:         }5509// CHECK-NEXT:        },5510// CHECK-NEXT:        "type": {5511// CHECK-NEXT:         "qualType": "int"5512// CHECK-NEXT:        },5513// CHECK-NEXT:        "valueCategory": "lvalue",5514// CHECK-NEXT:        "inner": [5515// CHECK-NEXT:         {5516// CHECK-NEXT:          "id": "0x{{.*}}",5517// CHECK-NEXT:          "kind": "DeclRefExpr",5518// CHECK-NEXT:          "range": {5519// CHECK-NEXT:           "begin": {5520// CHECK-NEXT:            "offset": {{[0-9]+}},5521// CHECK-NEXT:            "col": 4,5522// CHECK-NEXT:            "tokLen": 15523// CHECK-NEXT:           },5524// CHECK-NEXT:           "end": {5525// CHECK-NEXT:            "offset": {{[0-9]+}},5526// CHECK-NEXT:            "col": 4,5527// CHECK-NEXT:            "tokLen": 15528// CHECK-NEXT:           }5529// CHECK-NEXT:          },5530// CHECK-NEXT:          "type": {5531// CHECK-NEXT:           "qualType": "int"5532// CHECK-NEXT:          },5533// CHECK-NEXT:          "valueCategory": "lvalue",5534// CHECK-NEXT:          "referencedDecl": {5535// CHECK-NEXT:           "id": "0x{{.*}}",5536// CHECK-NEXT:           "kind": "ParmVarDecl",5537// CHECK-NEXT:           "name": "a",5538// CHECK-NEXT:           "type": {5539// CHECK-NEXT:            "qualType": "int"5540// CHECK-NEXT:           }5541// CHECK-NEXT:          }5542// CHECK-NEXT:         }5543// CHECK-NEXT:        ]5544// CHECK-NEXT:       }5545// CHECK-NEXT:      ]5546// CHECK-NEXT:     }5547// CHECK-NEXT:    ]5548// CHECK-NEXT:   }5549// CHECK-NEXT:  ]5550// CHECK-NEXT: }5551