1 // RUN: %clang_cc1 -triple x86_64-unknown-unknown -Wno-unused-value -fcxx-exceptions -std=gnu++17 -ast-dump=json -ast-dump-filter Test %s | FileCheck %s 2 3 namespace std { 4 using size_t = decltype(sizeof(0)); 5 6 class type_info { 7 public: 8 virtual ~type_info(); 9 bool operator==(const type_info& rhs) const noexcept; 10 bool operator!=(const type_info& rhs) const noexcept; 11 type_info(const type_info& rhs) = delete; // cannot be copied 12 type_info& operator=(const type_info& rhs) = delete; // cannot be copied 13 }; 14 15 class bad_typeid { 16 public: 17 bad_typeid() noexcept; 18 bad_typeid(const bad_typeid&) noexcept; 19 virtual ~bad_typeid(); 20 bad_typeid& operator=(const bad_typeid&) noexcept; 21 const char* what() const noexcept; 22 }; 23 } // namespace std 24 void *operator new(std::size_t, void *ptr); 25 26 struct S { 27 virtual ~S() = default; 28 29 void func(int); 30 template <typename Ty> 31 Ty foo(); 32 33 int i; 34 }; 35 36 struct T : S {}; 37 38 template <typename> 39 struct U {}; 40 41 void TestThrow() { 42 throw 12; 43 throw; 44 } 45 46 void TestPointerToMember(S obj1, S *obj2, int S::* data, void (S::*call)(int)) { 47 obj1.*data; 48 obj2->*data; 49 (obj1.*call)(12); 50 (obj2->*call)(12); 51 } 52 53 void TestCasting(const S *s) { 54 const_cast<S *>(s); 55 static_cast<const T *>(s); 56 dynamic_cast<const T *>(s); 57 reinterpret_cast<const int *>(s); 58 } 59 60 template <typename... Ts> 61 void TestUnaryExpressions(int *p) { 62 sizeof...(Ts); 63 noexcept(p - p); 64 65 ::new int; 66 new (int); 67 new int{12}; 68 new int[2]; 69 new int[2]{1, 2}; 70 new (p) int; 71 new (p) int{12}; 72 73 ::delete p; 74 delete [] p; 75 } 76 77 void TestPostfixExpressions(S a, S *p, U<int> *r) { 78 a.func(0); 79 p->func(0); 80 p->template foo<int>(); 81 a.template foo<float>(); 82 p->~S(); 83 a.~S(); 84 a.~decltype(a)(); 85 p->::S::~S(); 86 r->template U<int>::~U(); 87 typeid(a); 88 typeid(S); 89 typeid(const volatile S); 90 } 91 92 template <typename... Ts> 93 void TestPrimaryExpressions(Ts... a) { 94 struct V { 95 void f() { 96 this; 97 98 [this]{}; 99 [*this]{}; 100 } 101 }; 102 103 int b, c; 104 105 [](){}; 106 [](int a, ...){}; 107 [a...]{}; 108 [=]{}; 109 [=] { return b; }; 110 [&]{}; 111 [&] { return c; }; 112 [b, &c]{ return b + c; }; 113 [a..., x = 12]{}; 114 []() constexpr {}; 115 []() mutable {}; 116 []() noexcept {}; 117 []() -> int { return 0; }; 118 119 (a + ...); 120 (... + a); 121 (a + ... + b); 122 } 123 124 namespace NS { 125 struct X {}; 126 void f(X); 127 void y(...); 128 } // namespace NS 129 130 void TestADLCall() { 131 NS::X x; 132 f(x); 133 y(x); 134 } 135 136 void TestNonADLCall() { 137 NS::X x; 138 NS::f(x); 139 } 140 141 void TestNonADLCall2() { 142 NS::X x; 143 using NS::f; 144 f(x); 145 y(x); 146 } 147 148 namespace test_adl_call_three { 149 using namespace NS; 150 void TestNonADLCall3() { 151 X x; 152 f(x); 153 } 154 } // namespace test_adl_call_three 155 156 // NOTE: CHECK lines have been autogenerated by gen_ast_dump_json_test.py 157 158 159 // CHECK-NOT: {{^}}Dumping 160 // CHECK: "kind": "FunctionDecl", 161 // CHECK-NEXT: "loc": { 162 // CHECK-NEXT: "offset": {{[0-9]+}}, 163 // CHECK-NEXT: "file": "{{.*}}", 164 // CHECK-NEXT: "line": 41, 165 // CHECK-NEXT: "col": 6, 166 // CHECK-NEXT: "tokLen": 9 167 // CHECK-NEXT: }, 168 // CHECK-NEXT: "range": { 169 // CHECK-NEXT: "begin": { 170 // CHECK-NEXT: "offset": {{[0-9]+}}, 171 // CHECK-NEXT: "col": 1, 172 // CHECK-NEXT: "tokLen": 4 173 // CHECK-NEXT: }, 174 // CHECK-NEXT: "end": { 175 // CHECK-NEXT: "offset": {{[0-9]+}}, 176 // CHECK-NEXT: "line": 44, 177 // CHECK-NEXT: "col": 1, 178 // CHECK-NEXT: "tokLen": 1 179 // CHECK-NEXT: } 180 // CHECK-NEXT: }, 181 // CHECK-NEXT: "name": "TestThrow", 182 // CHECK-NEXT: "mangledName": "_Z9TestThrowv", 183 // CHECK-NEXT: "type": { 184 // CHECK-NEXT: "qualType": "void ()" 185 // CHECK-NEXT: }, 186 // CHECK-NEXT: "inner": [ 187 // CHECK-NEXT: { 188 // CHECK-NEXT: "id": "0x{{.*}}", 189 // CHECK-NEXT: "kind": "CompoundStmt", 190 // CHECK-NEXT: "range": { 191 // CHECK-NEXT: "begin": { 192 // CHECK-NEXT: "offset": {{[0-9]+}}, 193 // CHECK-NEXT: "line": 41, 194 // CHECK-NEXT: "col": 18, 195 // CHECK-NEXT: "tokLen": 1 196 // CHECK-NEXT: }, 197 // CHECK-NEXT: "end": { 198 // CHECK-NEXT: "offset": {{[0-9]+}}, 199 // CHECK-NEXT: "line": 44, 200 // CHECK-NEXT: "col": 1, 201 // CHECK-NEXT: "tokLen": 1 202 // CHECK-NEXT: } 203 // CHECK-NEXT: }, 204 // CHECK-NEXT: "inner": [ 205 // CHECK-NEXT: { 206 // CHECK-NEXT: "id": "0x{{.*}}", 207 // CHECK-NEXT: "kind": "CXXThrowExpr", 208 // CHECK-NEXT: "range": { 209 // CHECK-NEXT: "begin": { 210 // CHECK-NEXT: "offset": {{[0-9]+}}, 211 // CHECK-NEXT: "line": 42, 212 // CHECK-NEXT: "col": 3, 213 // CHECK-NEXT: "tokLen": 5 214 // CHECK-NEXT: }, 215 // CHECK-NEXT: "end": { 216 // CHECK-NEXT: "offset": {{[0-9]+}}, 217 // CHECK-NEXT: "col": 9, 218 // CHECK-NEXT: "tokLen": 2 219 // CHECK-NEXT: } 220 // CHECK-NEXT: }, 221 // CHECK-NEXT: "type": { 222 // CHECK-NEXT: "qualType": "void" 223 // CHECK-NEXT: }, 224 // CHECK-NEXT: "valueCategory": "prvalue", 225 // CHECK-NEXT: "inner": [ 226 // CHECK-NEXT: { 227 // CHECK-NEXT: "id": "0x{{.*}}", 228 // CHECK-NEXT: "kind": "IntegerLiteral", 229 // CHECK-NEXT: "range": { 230 // CHECK-NEXT: "begin": { 231 // CHECK-NEXT: "offset": {{[0-9]+}}, 232 // CHECK-NEXT: "col": 9, 233 // CHECK-NEXT: "tokLen": 2 234 // CHECK-NEXT: }, 235 // CHECK-NEXT: "end": { 236 // CHECK-NEXT: "offset": {{[0-9]+}}, 237 // CHECK-NEXT: "col": 9, 238 // CHECK-NEXT: "tokLen": 2 239 // CHECK-NEXT: } 240 // CHECK-NEXT: }, 241 // CHECK-NEXT: "type": { 242 // CHECK-NEXT: "qualType": "int" 243 // CHECK-NEXT: }, 244 // CHECK-NEXT: "valueCategory": "prvalue", 245 // CHECK-NEXT: "value": "12" 246 // CHECK-NEXT: } 247 // CHECK-NEXT: ] 248 // CHECK-NEXT: }, 249 // CHECK-NEXT: { 250 // CHECK-NEXT: "id": "0x{{.*}}", 251 // CHECK-NEXT: "kind": "CXXThrowExpr", 252 // CHECK-NEXT: "range": { 253 // CHECK-NEXT: "begin": { 254 // CHECK-NEXT: "offset": {{[0-9]+}}, 255 // CHECK-NEXT: "line": 43, 256 // CHECK-NEXT: "col": 3, 257 // CHECK-NEXT: "tokLen": 5 258 // CHECK-NEXT: }, 259 // CHECK-NEXT: "end": { 260 // CHECK-NEXT: "offset": {{[0-9]+}}, 261 // CHECK-NEXT: "col": 3, 262 // CHECK-NEXT: "tokLen": 5 263 // CHECK-NEXT: } 264 // CHECK-NEXT: }, 265 // CHECK-NEXT: "type": { 266 // CHECK-NEXT: "qualType": "void" 267 // CHECK-NEXT: }, 268 // CHECK-NEXT: "valueCategory": "prvalue" 269 // CHECK-NEXT: } 270 // CHECK-NEXT: ] 271 // CHECK-NEXT: } 272 // CHECK-NEXT: ] 273 // CHECK-NEXT: } 274 275 276 // CHECK-NOT: {{^}}Dumping 277 // CHECK: "kind": "FunctionDecl", 278 // CHECK-NEXT: "loc": { 279 // CHECK-NEXT: "offset": {{[0-9]+}}, 280 // CHECK-NEXT: "file": "{{.*}}", 281 // CHECK-NEXT: "line": 46, 282 // CHECK-NEXT: "col": 6, 283 // CHECK-NEXT: "tokLen": 19 284 // CHECK-NEXT: }, 285 // CHECK-NEXT: "range": { 286 // CHECK-NEXT: "begin": { 287 // CHECK-NEXT: "offset": {{[0-9]+}}, 288 // CHECK-NEXT: "col": 1, 289 // CHECK-NEXT: "tokLen": 4 290 // CHECK-NEXT: }, 291 // CHECK-NEXT: "end": { 292 // CHECK-NEXT: "offset": {{[0-9]+}}, 293 // CHECK-NEXT: "line": 51, 294 // CHECK-NEXT: "col": 1, 295 // CHECK-NEXT: "tokLen": 1 296 // CHECK-NEXT: } 297 // CHECK-NEXT: }, 298 // CHECK-NEXT: "name": "TestPointerToMember", 299 // CHECK-NEXT: "mangledName": "_Z19TestPointerToMember1SPS_MS_iMS_FviE", 300 // CHECK-NEXT: "type": { 301 // CHECK-NEXT: "qualType": "void (S, S *, int S::*, void (S::*)(int))" 302 // CHECK-NEXT: }, 303 // CHECK-NEXT: "inner": [ 304 // CHECK-NEXT: { 305 // CHECK-NEXT: "id": "0x{{.*}}", 306 // CHECK-NEXT: "kind": "ParmVarDecl", 307 // CHECK-NEXT: "loc": { 308 // CHECK-NEXT: "offset": {{[0-9]+}}, 309 // CHECK-NEXT: "line": 46, 310 // CHECK-NEXT: "col": 28, 311 // CHECK-NEXT: "tokLen": 4 312 // CHECK-NEXT: }, 313 // CHECK-NEXT: "range": { 314 // CHECK-NEXT: "begin": { 315 // CHECK-NEXT: "offset": {{[0-9]+}}, 316 // CHECK-NEXT: "col": 26, 317 // CHECK-NEXT: "tokLen": 1 318 // CHECK-NEXT: }, 319 // CHECK-NEXT: "end": { 320 // CHECK-NEXT: "offset": {{[0-9]+}}, 321 // CHECK-NEXT: "col": 28, 322 // CHECK-NEXT: "tokLen": 4 323 // CHECK-NEXT: } 324 // CHECK-NEXT: }, 325 // CHECK-NEXT: "isUsed": true, 326 // CHECK-NEXT: "name": "obj1", 327 // CHECK-NEXT: "type": { 328 // CHECK-NEXT: "desugaredQualType": "S", 329 // CHECK-NEXT: "qualType": "S" 330 // CHECK-NEXT: } 331 // CHECK-NEXT: }, 332 // CHECK-NEXT: { 333 // CHECK-NEXT: "id": "0x{{.*}}", 334 // CHECK-NEXT: "kind": "ParmVarDecl", 335 // CHECK-NEXT: "loc": { 336 // CHECK-NEXT: "offset": {{[0-9]+}}, 337 // CHECK-NEXT: "col": 37, 338 // CHECK-NEXT: "tokLen": 4 339 // CHECK-NEXT: }, 340 // CHECK-NEXT: "range": { 341 // CHECK-NEXT: "begin": { 342 // CHECK-NEXT: "offset": {{[0-9]+}}, 343 // CHECK-NEXT: "col": 34, 344 // CHECK-NEXT: "tokLen": 1 345 // CHECK-NEXT: }, 346 // CHECK-NEXT: "end": { 347 // CHECK-NEXT: "offset": {{[0-9]+}}, 348 // CHECK-NEXT: "col": 37, 349 // CHECK-NEXT: "tokLen": 4 350 // CHECK-NEXT: } 351 // CHECK-NEXT: }, 352 // CHECK-NEXT: "isUsed": true, 353 // CHECK-NEXT: "name": "obj2", 354 // CHECK-NEXT: "type": { 355 // CHECK-NEXT: "qualType": "S *" 356 // CHECK-NEXT: } 357 // CHECK-NEXT: }, 358 // CHECK-NEXT: { 359 // CHECK-NEXT: "id": "0x{{.*}}", 360 // CHECK-NEXT: "kind": "ParmVarDecl", 361 // CHECK-NEXT: "loc": { 362 // CHECK-NEXT: "offset": {{[0-9]+}}, 363 // CHECK-NEXT: "col": 52, 364 // CHECK-NEXT: "tokLen": 4 365 // CHECK-NEXT: }, 366 // CHECK-NEXT: "range": { 367 // CHECK-NEXT: "begin": { 368 // CHECK-NEXT: "offset": {{[0-9]+}}, 369 // CHECK-NEXT: "col": 43, 370 // CHECK-NEXT: "tokLen": 3 371 // CHECK-NEXT: }, 372 // CHECK-NEXT: "end": { 373 // CHECK-NEXT: "offset": {{[0-9]+}}, 374 // CHECK-NEXT: "col": 52, 375 // CHECK-NEXT: "tokLen": 4 376 // CHECK-NEXT: } 377 // CHECK-NEXT: }, 378 // CHECK-NEXT: "isUsed": true, 379 // CHECK-NEXT: "name": "data", 380 // CHECK-NEXT: "type": { 381 // CHECK-NEXT: "qualType": "int S::*" 382 // CHECK-NEXT: } 383 // CHECK-NEXT: }, 384 // CHECK-NEXT: { 385 // CHECK-NEXT: "id": "0x{{.*}}", 386 // CHECK-NEXT: "kind": "ParmVarDecl", 387 // CHECK-NEXT: "loc": { 388 // CHECK-NEXT: "offset": {{[0-9]+}}, 389 // CHECK-NEXT: "col": 68, 390 // CHECK-NEXT: "tokLen": 4 391 // CHECK-NEXT: }, 392 // CHECK-NEXT: "range": { 393 // CHECK-NEXT: "begin": { 394 // CHECK-NEXT: "offset": {{[0-9]+}}, 395 // CHECK-NEXT: "col": 58, 396 // CHECK-NEXT: "tokLen": 4 397 // CHECK-NEXT: }, 398 // CHECK-NEXT: "end": { 399 // CHECK-NEXT: "offset": {{[0-9]+}}, 400 // CHECK-NEXT: "col": 77, 401 // CHECK-NEXT: "tokLen": 1 402 // CHECK-NEXT: } 403 // CHECK-NEXT: }, 404 // CHECK-NEXT: "isUsed": true, 405 // CHECK-NEXT: "name": "call", 406 // CHECK-NEXT: "type": { 407 // CHECK-NEXT: "qualType": "void (S::*)(int)" 408 // CHECK-NEXT: } 409 // CHECK-NEXT: }, 410 // CHECK-NEXT: { 411 // CHECK-NEXT: "id": "0x{{.*}}", 412 // CHECK-NEXT: "kind": "CompoundStmt", 413 // CHECK-NEXT: "range": { 414 // CHECK-NEXT: "begin": { 415 // CHECK-NEXT: "offset": {{[0-9]+}}, 416 // CHECK-NEXT: "col": 80, 417 // CHECK-NEXT: "tokLen": 1 418 // CHECK-NEXT: }, 419 // CHECK-NEXT: "end": { 420 // CHECK-NEXT: "offset": {{[0-9]+}}, 421 // CHECK-NEXT: "line": 51, 422 // CHECK-NEXT: "col": 1, 423 // CHECK-NEXT: "tokLen": 1 424 // CHECK-NEXT: } 425 // CHECK-NEXT: }, 426 // CHECK-NEXT: "inner": [ 427 // CHECK-NEXT: { 428 // CHECK-NEXT: "id": "0x{{.*}}", 429 // CHECK-NEXT: "kind": "BinaryOperator", 430 // CHECK-NEXT: "range": { 431 // CHECK-NEXT: "begin": { 432 // CHECK-NEXT: "offset": {{[0-9]+}}, 433 // CHECK-NEXT: "line": 47, 434 // CHECK-NEXT: "col": 3, 435 // CHECK-NEXT: "tokLen": 4 436 // CHECK-NEXT: }, 437 // CHECK-NEXT: "end": { 438 // CHECK-NEXT: "offset": {{[0-9]+}}, 439 // CHECK-NEXT: "col": 9, 440 // CHECK-NEXT: "tokLen": 4 441 // CHECK-NEXT: } 442 // CHECK-NEXT: }, 443 // CHECK-NEXT: "type": { 444 // CHECK-NEXT: "qualType": "int" 445 // CHECK-NEXT: }, 446 // CHECK-NEXT: "valueCategory": "lvalue", 447 // CHECK-NEXT: "opcode": ".*", 448 // CHECK-NEXT: "inner": [ 449 // CHECK-NEXT: { 450 // CHECK-NEXT: "id": "0x{{.*}}", 451 // CHECK-NEXT: "kind": "DeclRefExpr", 452 // CHECK-NEXT: "range": { 453 // CHECK-NEXT: "begin": { 454 // CHECK-NEXT: "offset": {{[0-9]+}}, 455 // CHECK-NEXT: "col": 3, 456 // CHECK-NEXT: "tokLen": 4 457 // CHECK-NEXT: }, 458 // CHECK-NEXT: "end": { 459 // CHECK-NEXT: "offset": {{[0-9]+}}, 460 // CHECK-NEXT: "col": 3, 461 // CHECK-NEXT: "tokLen": 4 462 // CHECK-NEXT: } 463 // CHECK-NEXT: }, 464 // CHECK-NEXT: "type": { 465 // CHECK-NEXT: "desugaredQualType": "S", 466 // CHECK-NEXT: "qualType": "S" 467 // CHECK-NEXT: }, 468 // CHECK-NEXT: "valueCategory": "lvalue", 469 // CHECK-NEXT: "referencedDecl": { 470 // CHECK-NEXT: "id": "0x{{.*}}", 471 // CHECK-NEXT: "kind": "ParmVarDecl", 472 // CHECK-NEXT: "name": "obj1", 473 // CHECK-NEXT: "type": { 474 // CHECK-NEXT: "desugaredQualType": "S", 475 // CHECK-NEXT: "qualType": "S" 476 // CHECK-NEXT: } 477 // CHECK-NEXT: } 478 // CHECK-NEXT: }, 479 // CHECK-NEXT: { 480 // CHECK-NEXT: "id": "0x{{.*}}", 481 // CHECK-NEXT: "kind": "ImplicitCastExpr", 482 // CHECK-NEXT: "range": { 483 // CHECK-NEXT: "begin": { 484 // CHECK-NEXT: "offset": {{[0-9]+}}, 485 // CHECK-NEXT: "col": 9, 486 // CHECK-NEXT: "tokLen": 4 487 // CHECK-NEXT: }, 488 // CHECK-NEXT: "end": { 489 // CHECK-NEXT: "offset": {{[0-9]+}}, 490 // CHECK-NEXT: "col": 9, 491 // CHECK-NEXT: "tokLen": 4 492 // CHECK-NEXT: } 493 // CHECK-NEXT: }, 494 // CHECK-NEXT: "type": { 495 // CHECK-NEXT: "qualType": "int S::*" 496 // CHECK-NEXT: }, 497 // CHECK-NEXT: "valueCategory": "prvalue", 498 // CHECK-NEXT: "castKind": "LValueToRValue", 499 // CHECK-NEXT: "inner": [ 500 // CHECK-NEXT: { 501 // CHECK-NEXT: "id": "0x{{.*}}", 502 // CHECK-NEXT: "kind": "DeclRefExpr", 503 // CHECK-NEXT: "range": { 504 // CHECK-NEXT: "begin": { 505 // CHECK-NEXT: "offset": {{[0-9]+}}, 506 // CHECK-NEXT: "col": 9, 507 // CHECK-NEXT: "tokLen": 4 508 // CHECK-NEXT: }, 509 // CHECK-NEXT: "end": { 510 // CHECK-NEXT: "offset": {{[0-9]+}}, 511 // CHECK-NEXT: "col": 9, 512 // CHECK-NEXT: "tokLen": 4 513 // CHECK-NEXT: } 514 // CHECK-NEXT: }, 515 // CHECK-NEXT: "type": { 516 // CHECK-NEXT: "qualType": "int S::*" 517 // CHECK-NEXT: }, 518 // CHECK-NEXT: "valueCategory": "lvalue", 519 // CHECK-NEXT: "referencedDecl": { 520 // CHECK-NEXT: "id": "0x{{.*}}", 521 // CHECK-NEXT: "kind": "ParmVarDecl", 522 // CHECK-NEXT: "name": "data", 523 // CHECK-NEXT: "type": { 524 // CHECK-NEXT: "qualType": "int S::*" 525 // CHECK-NEXT: } 526 // CHECK-NEXT: } 527 // CHECK-NEXT: } 528 // CHECK-NEXT: ] 529 // CHECK-NEXT: } 530 // CHECK-NEXT: ] 531 // CHECK-NEXT: }, 532 // CHECK-NEXT: { 533 // CHECK-NEXT: "id": "0x{{.*}}", 534 // CHECK-NEXT: "kind": "BinaryOperator", 535 // CHECK-NEXT: "range": { 536 // CHECK-NEXT: "begin": { 537 // CHECK-NEXT: "offset": {{[0-9]+}}, 538 // CHECK-NEXT: "line": 48, 539 // CHECK-NEXT: "col": 3, 540 // CHECK-NEXT: "tokLen": 4 541 // CHECK-NEXT: }, 542 // CHECK-NEXT: "end": { 543 // CHECK-NEXT: "offset": {{[0-9]+}}, 544 // CHECK-NEXT: "col": 10, 545 // CHECK-NEXT: "tokLen": 4 546 // CHECK-NEXT: } 547 // CHECK-NEXT: }, 548 // CHECK-NEXT: "type": { 549 // CHECK-NEXT: "qualType": "int" 550 // CHECK-NEXT: }, 551 // CHECK-NEXT: "valueCategory": "lvalue", 552 // CHECK-NEXT: "opcode": "->*", 553 // CHECK-NEXT: "inner": [ 554 // CHECK-NEXT: { 555 // CHECK-NEXT: "id": "0x{{.*}}", 556 // CHECK-NEXT: "kind": "ImplicitCastExpr", 557 // CHECK-NEXT: "range": { 558 // CHECK-NEXT: "begin": { 559 // CHECK-NEXT: "offset": {{[0-9]+}}, 560 // CHECK-NEXT: "col": 3, 561 // CHECK-NEXT: "tokLen": 4 562 // CHECK-NEXT: }, 563 // CHECK-NEXT: "end": { 564 // CHECK-NEXT: "offset": {{[0-9]+}}, 565 // CHECK-NEXT: "col": 3, 566 // CHECK-NEXT: "tokLen": 4 567 // CHECK-NEXT: } 568 // CHECK-NEXT: }, 569 // CHECK-NEXT: "type": { 570 // CHECK-NEXT: "qualType": "S *" 571 // CHECK-NEXT: }, 572 // CHECK-NEXT: "valueCategory": "prvalue", 573 // CHECK-NEXT: "castKind": "LValueToRValue", 574 // CHECK-NEXT: "inner": [ 575 // CHECK-NEXT: { 576 // CHECK-NEXT: "id": "0x{{.*}}", 577 // CHECK-NEXT: "kind": "DeclRefExpr", 578 // CHECK-NEXT: "range": { 579 // CHECK-NEXT: "begin": { 580 // CHECK-NEXT: "offset": {{[0-9]+}}, 581 // CHECK-NEXT: "col": 3, 582 // CHECK-NEXT: "tokLen": 4 583 // CHECK-NEXT: }, 584 // CHECK-NEXT: "end": { 585 // CHECK-NEXT: "offset": {{[0-9]+}}, 586 // CHECK-NEXT: "col": 3, 587 // CHECK-NEXT: "tokLen": 4 588 // CHECK-NEXT: } 589 // CHECK-NEXT: }, 590 // CHECK-NEXT: "type": { 591 // CHECK-NEXT: "qualType": "S *" 592 // CHECK-NEXT: }, 593 // CHECK-NEXT: "valueCategory": "lvalue", 594 // CHECK-NEXT: "referencedDecl": { 595 // CHECK-NEXT: "id": "0x{{.*}}", 596 // CHECK-NEXT: "kind": "ParmVarDecl", 597 // CHECK-NEXT: "name": "obj2", 598 // CHECK-NEXT: "type": { 599 // CHECK-NEXT: "qualType": "S *" 600 // CHECK-NEXT: } 601 // CHECK-NEXT: } 602 // CHECK-NEXT: } 603 // CHECK-NEXT: ] 604 // CHECK-NEXT: }, 605 // CHECK-NEXT: { 606 // CHECK-NEXT: "id": "0x{{.*}}", 607 // CHECK-NEXT: "kind": "ImplicitCastExpr", 608 // CHECK-NEXT: "range": { 609 // CHECK-NEXT: "begin": { 610 // CHECK-NEXT: "offset": {{[0-9]+}}, 611 // CHECK-NEXT: "col": 10, 612 // CHECK-NEXT: "tokLen": 4 613 // CHECK-NEXT: }, 614 // CHECK-NEXT: "end": { 615 // CHECK-NEXT: "offset": {{[0-9]+}}, 616 // CHECK-NEXT: "col": 10, 617 // CHECK-NEXT: "tokLen": 4 618 // CHECK-NEXT: } 619 // CHECK-NEXT: }, 620 // CHECK-NEXT: "type": { 621 // CHECK-NEXT: "qualType": "int S::*" 622 // CHECK-NEXT: }, 623 // CHECK-NEXT: "valueCategory": "prvalue", 624 // CHECK-NEXT: "castKind": "LValueToRValue", 625 // CHECK-NEXT: "inner": [ 626 // CHECK-NEXT: { 627 // CHECK-NEXT: "id": "0x{{.*}}", 628 // CHECK-NEXT: "kind": "DeclRefExpr", 629 // CHECK-NEXT: "range": { 630 // CHECK-NEXT: "begin": { 631 // CHECK-NEXT: "offset": {{[0-9]+}}, 632 // CHECK-NEXT: "col": 10, 633 // CHECK-NEXT: "tokLen": 4 634 // CHECK-NEXT: }, 635 // CHECK-NEXT: "end": { 636 // CHECK-NEXT: "offset": {{[0-9]+}}, 637 // CHECK-NEXT: "col": 10, 638 // CHECK-NEXT: "tokLen": 4 639 // CHECK-NEXT: } 640 // CHECK-NEXT: }, 641 // CHECK-NEXT: "type": { 642 // CHECK-NEXT: "qualType": "int S::*" 643 // CHECK-NEXT: }, 644 // CHECK-NEXT: "valueCategory": "lvalue", 645 // CHECK-NEXT: "referencedDecl": { 646 // CHECK-NEXT: "id": "0x{{.*}}", 647 // CHECK-NEXT: "kind": "ParmVarDecl", 648 // CHECK-NEXT: "name": "data", 649 // CHECK-NEXT: "type": { 650 // CHECK-NEXT: "qualType": "int S::*" 651 // CHECK-NEXT: } 652 // CHECK-NEXT: } 653 // CHECK-NEXT: } 654 // CHECK-NEXT: ] 655 // CHECK-NEXT: } 656 // CHECK-NEXT: ] 657 // CHECK-NEXT: }, 658 // CHECK-NEXT: { 659 // CHECK-NEXT: "id": "0x{{.*}}", 660 // CHECK-NEXT: "kind": "CXXMemberCallExpr", 661 // CHECK-NEXT: "range": { 662 // CHECK-NEXT: "begin": { 663 // CHECK-NEXT: "offset": {{[0-9]+}}, 664 // CHECK-NEXT: "line": 49, 665 // CHECK-NEXT: "col": 3, 666 // CHECK-NEXT: "tokLen": 1 667 // CHECK-NEXT: }, 668 // CHECK-NEXT: "end": { 669 // CHECK-NEXT: "offset": {{[0-9]+}}, 670 // CHECK-NEXT: "col": 18, 671 // CHECK-NEXT: "tokLen": 1 672 // CHECK-NEXT: } 673 // CHECK-NEXT: }, 674 // CHECK-NEXT: "type": { 675 // CHECK-NEXT: "qualType": "void" 676 // CHECK-NEXT: }, 677 // CHECK-NEXT: "valueCategory": "prvalue", 678 // CHECK-NEXT: "inner": [ 679 // CHECK-NEXT: { 680 // CHECK-NEXT: "id": "0x{{.*}}", 681 // CHECK-NEXT: "kind": "ParenExpr", 682 // CHECK-NEXT: "range": { 683 // CHECK-NEXT: "begin": { 684 // CHECK-NEXT: "offset": {{[0-9]+}}, 685 // CHECK-NEXT: "col": 3, 686 // CHECK-NEXT: "tokLen": 1 687 // CHECK-NEXT: }, 688 // CHECK-NEXT: "end": { 689 // CHECK-NEXT: "offset": {{[0-9]+}}, 690 // CHECK-NEXT: "col": 14, 691 // CHECK-NEXT: "tokLen": 1 692 // CHECK-NEXT: } 693 // CHECK-NEXT: }, 694 // CHECK-NEXT: "type": { 695 // CHECK-NEXT: "qualType": "<bound member function type>" 696 // CHECK-NEXT: }, 697 // CHECK-NEXT: "valueCategory": "prvalue", 698 // CHECK-NEXT: "inner": [ 699 // CHECK-NEXT: { 700 // CHECK-NEXT: "id": "0x{{.*}}", 701 // CHECK-NEXT: "kind": "BinaryOperator", 702 // CHECK-NEXT: "range": { 703 // CHECK-NEXT: "begin": { 704 // CHECK-NEXT: "offset": {{[0-9]+}}, 705 // CHECK-NEXT: "col": 4, 706 // CHECK-NEXT: "tokLen": 4 707 // CHECK-NEXT: }, 708 // CHECK-NEXT: "end": { 709 // CHECK-NEXT: "offset": {{[0-9]+}}, 710 // CHECK-NEXT: "col": 10, 711 // CHECK-NEXT: "tokLen": 4 712 // CHECK-NEXT: } 713 // CHECK-NEXT: }, 714 // CHECK-NEXT: "type": { 715 // CHECK-NEXT: "qualType": "<bound member function type>" 716 // CHECK-NEXT: }, 717 // CHECK-NEXT: "valueCategory": "prvalue", 718 // CHECK-NEXT: "opcode": ".*", 719 // CHECK-NEXT: "inner": [ 720 // CHECK-NEXT: { 721 // CHECK-NEXT: "id": "0x{{.*}}", 722 // CHECK-NEXT: "kind": "DeclRefExpr", 723 // CHECK-NEXT: "range": { 724 // CHECK-NEXT: "begin": { 725 // CHECK-NEXT: "offset": {{[0-9]+}}, 726 // CHECK-NEXT: "col": 4, 727 // CHECK-NEXT: "tokLen": 4 728 // CHECK-NEXT: }, 729 // CHECK-NEXT: "end": { 730 // CHECK-NEXT: "offset": {{[0-9]+}}, 731 // CHECK-NEXT: "col": 4, 732 // CHECK-NEXT: "tokLen": 4 733 // CHECK-NEXT: } 734 // CHECK-NEXT: }, 735 // CHECK-NEXT: "type": { 736 // CHECK-NEXT: "desugaredQualType": "S", 737 // CHECK-NEXT: "qualType": "S" 738 // CHECK-NEXT: }, 739 // CHECK-NEXT: "valueCategory": "lvalue", 740 // CHECK-NEXT: "referencedDecl": { 741 // CHECK-NEXT: "id": "0x{{.*}}", 742 // CHECK-NEXT: "kind": "ParmVarDecl", 743 // CHECK-NEXT: "name": "obj1", 744 // CHECK-NEXT: "type": { 745 // CHECK-NEXT: "desugaredQualType": "S", 746 // CHECK-NEXT: "qualType": "S" 747 // CHECK-NEXT: } 748 // CHECK-NEXT: } 749 // CHECK-NEXT: }, 750 // CHECK-NEXT: { 751 // CHECK-NEXT: "id": "0x{{.*}}", 752 // CHECK-NEXT: "kind": "ImplicitCastExpr", 753 // CHECK-NEXT: "range": { 754 // CHECK-NEXT: "begin": { 755 // CHECK-NEXT: "offset": {{[0-9]+}}, 756 // CHECK-NEXT: "col": 10, 757 // CHECK-NEXT: "tokLen": 4 758 // CHECK-NEXT: }, 759 // CHECK-NEXT: "end": { 760 // CHECK-NEXT: "offset": {{[0-9]+}}, 761 // CHECK-NEXT: "col": 10, 762 // CHECK-NEXT: "tokLen": 4 763 // CHECK-NEXT: } 764 // CHECK-NEXT: }, 765 // CHECK-NEXT: "type": { 766 // CHECK-NEXT: "qualType": "void (S::*)(int)" 767 // CHECK-NEXT: }, 768 // CHECK-NEXT: "valueCategory": "prvalue", 769 // CHECK-NEXT: "castKind": "LValueToRValue", 770 // CHECK-NEXT: "inner": [ 771 // CHECK-NEXT: { 772 // CHECK-NEXT: "id": "0x{{.*}}", 773 // CHECK-NEXT: "kind": "DeclRefExpr", 774 // CHECK-NEXT: "range": { 775 // CHECK-NEXT: "begin": { 776 // CHECK-NEXT: "offset": {{[0-9]+}}, 777 // CHECK-NEXT: "col": 10, 778 // CHECK-NEXT: "tokLen": 4 779 // CHECK-NEXT: }, 780 // CHECK-NEXT: "end": { 781 // CHECK-NEXT: "offset": {{[0-9]+}}, 782 // CHECK-NEXT: "col": 10, 783 // CHECK-NEXT: "tokLen": 4 784 // CHECK-NEXT: } 785 // CHECK-NEXT: }, 786 // CHECK-NEXT: "type": { 787 // CHECK-NEXT: "qualType": "void (S::*)(int)" 788 // CHECK-NEXT: }, 789 // CHECK-NEXT: "valueCategory": "lvalue", 790 // CHECK-NEXT: "referencedDecl": { 791 // CHECK-NEXT: "id": "0x{{.*}}", 792 // CHECK-NEXT: "kind": "ParmVarDecl", 793 // CHECK-NEXT: "name": "call", 794 // CHECK-NEXT: "type": { 795 // CHECK-NEXT: "qualType": "void (S::*)(int)" 796 // CHECK-NEXT: } 797 // CHECK-NEXT: } 798 // CHECK-NEXT: } 799 // CHECK-NEXT: ] 800 // CHECK-NEXT: } 801 // CHECK-NEXT: ] 802 // CHECK-NEXT: } 803 // CHECK-NEXT: ] 804 // CHECK-NEXT: }, 805 // CHECK-NEXT: { 806 // CHECK-NEXT: "id": "0x{{.*}}", 807 // CHECK-NEXT: "kind": "IntegerLiteral", 808 // CHECK-NEXT: "range": { 809 // CHECK-NEXT: "begin": { 810 // CHECK-NEXT: "offset": {{[0-9]+}}, 811 // CHECK-NEXT: "col": 16, 812 // CHECK-NEXT: "tokLen": 2 813 // CHECK-NEXT: }, 814 // CHECK-NEXT: "end": { 815 // CHECK-NEXT: "offset": {{[0-9]+}}, 816 // CHECK-NEXT: "col": 16, 817 // CHECK-NEXT: "tokLen": 2 818 // CHECK-NEXT: } 819 // CHECK-NEXT: }, 820 // CHECK-NEXT: "type": { 821 // CHECK-NEXT: "qualType": "int" 822 // CHECK-NEXT: }, 823 // CHECK-NEXT: "valueCategory": "prvalue", 824 // CHECK-NEXT: "value": "12" 825 // CHECK-NEXT: } 826 // CHECK-NEXT: ] 827 // CHECK-NEXT: }, 828 // CHECK-NEXT: { 829 // CHECK-NEXT: "id": "0x{{.*}}", 830 // CHECK-NEXT: "kind": "CXXMemberCallExpr", 831 // CHECK-NEXT: "range": { 832 // CHECK-NEXT: "begin": { 833 // CHECK-NEXT: "offset": {{[0-9]+}}, 834 // CHECK-NEXT: "line": 50, 835 // CHECK-NEXT: "col": 3, 836 // CHECK-NEXT: "tokLen": 1 837 // CHECK-NEXT: }, 838 // CHECK-NEXT: "end": { 839 // CHECK-NEXT: "offset": {{[0-9]+}}, 840 // CHECK-NEXT: "col": 19, 841 // CHECK-NEXT: "tokLen": 1 842 // CHECK-NEXT: } 843 // CHECK-NEXT: }, 844 // CHECK-NEXT: "type": { 845 // CHECK-NEXT: "qualType": "void" 846 // CHECK-NEXT: }, 847 // CHECK-NEXT: "valueCategory": "prvalue", 848 // CHECK-NEXT: "inner": [ 849 // CHECK-NEXT: { 850 // CHECK-NEXT: "id": "0x{{.*}}", 851 // CHECK-NEXT: "kind": "ParenExpr", 852 // CHECK-NEXT: "range": { 853 // CHECK-NEXT: "begin": { 854 // CHECK-NEXT: "offset": {{[0-9]+}}, 855 // CHECK-NEXT: "col": 3, 856 // CHECK-NEXT: "tokLen": 1 857 // CHECK-NEXT: }, 858 // CHECK-NEXT: "end": { 859 // CHECK-NEXT: "offset": {{[0-9]+}}, 860 // CHECK-NEXT: "col": 15, 861 // CHECK-NEXT: "tokLen": 1 862 // CHECK-NEXT: } 863 // CHECK-NEXT: }, 864 // CHECK-NEXT: "type": { 865 // CHECK-NEXT: "qualType": "<bound member function type>" 866 // CHECK-NEXT: }, 867 // CHECK-NEXT: "valueCategory": "prvalue", 868 // CHECK-NEXT: "inner": [ 869 // CHECK-NEXT: { 870 // CHECK-NEXT: "id": "0x{{.*}}", 871 // CHECK-NEXT: "kind": "BinaryOperator", 872 // CHECK-NEXT: "range": { 873 // CHECK-NEXT: "begin": { 874 // CHECK-NEXT: "offset": {{[0-9]+}}, 875 // CHECK-NEXT: "col": 4, 876 // CHECK-NEXT: "tokLen": 4 877 // CHECK-NEXT: }, 878 // CHECK-NEXT: "end": { 879 // CHECK-NEXT: "offset": {{[0-9]+}}, 880 // CHECK-NEXT: "col": 11, 881 // CHECK-NEXT: "tokLen": 4 882 // CHECK-NEXT: } 883 // CHECK-NEXT: }, 884 // CHECK-NEXT: "type": { 885 // CHECK-NEXT: "qualType": "<bound member function type>" 886 // CHECK-NEXT: }, 887 // CHECK-NEXT: "valueCategory": "prvalue", 888 // CHECK-NEXT: "opcode": "->*", 889 // CHECK-NEXT: "inner": [ 890 // CHECK-NEXT: { 891 // CHECK-NEXT: "id": "0x{{.*}}", 892 // CHECK-NEXT: "kind": "ImplicitCastExpr", 893 // CHECK-NEXT: "range": { 894 // CHECK-NEXT: "begin": { 895 // CHECK-NEXT: "offset": {{[0-9]+}}, 896 // CHECK-NEXT: "col": 4, 897 // CHECK-NEXT: "tokLen": 4 898 // CHECK-NEXT: }, 899 // CHECK-NEXT: "end": { 900 // CHECK-NEXT: "offset": {{[0-9]+}}, 901 // CHECK-NEXT: "col": 4, 902 // CHECK-NEXT: "tokLen": 4 903 // CHECK-NEXT: } 904 // CHECK-NEXT: }, 905 // CHECK-NEXT: "type": { 906 // CHECK-NEXT: "qualType": "S *" 907 // CHECK-NEXT: }, 908 // CHECK-NEXT: "valueCategory": "prvalue", 909 // CHECK-NEXT: "castKind": "LValueToRValue", 910 // CHECK-NEXT: "inner": [ 911 // CHECK-NEXT: { 912 // CHECK-NEXT: "id": "0x{{.*}}", 913 // CHECK-NEXT: "kind": "DeclRefExpr", 914 // CHECK-NEXT: "range": { 915 // CHECK-NEXT: "begin": { 916 // CHECK-NEXT: "offset": {{[0-9]+}}, 917 // CHECK-NEXT: "col": 4, 918 // CHECK-NEXT: "tokLen": 4 919 // CHECK-NEXT: }, 920 // CHECK-NEXT: "end": { 921 // CHECK-NEXT: "offset": {{[0-9]+}}, 922 // CHECK-NEXT: "col": 4, 923 // CHECK-NEXT: "tokLen": 4 924 // CHECK-NEXT: } 925 // CHECK-NEXT: }, 926 // CHECK-NEXT: "type": { 927 // CHECK-NEXT: "qualType": "S *" 928 // CHECK-NEXT: }, 929 // CHECK-NEXT: "valueCategory": "lvalue", 930 // CHECK-NEXT: "referencedDecl": { 931 // CHECK-NEXT: "id": "0x{{.*}}", 932 // CHECK-NEXT: "kind": "ParmVarDecl", 933 // CHECK-NEXT: "name": "obj2", 934 // CHECK-NEXT: "type": { 935 // CHECK-NEXT: "qualType": "S *" 936 // CHECK-NEXT: } 937 // CHECK-NEXT: } 938 // CHECK-NEXT: } 939 // CHECK-NEXT: ] 940 // CHECK-NEXT: }, 941 // CHECK-NEXT: { 942 // CHECK-NEXT: "id": "0x{{.*}}", 943 // CHECK-NEXT: "kind": "ImplicitCastExpr", 944 // CHECK-NEXT: "range": { 945 // CHECK-NEXT: "begin": { 946 // CHECK-NEXT: "offset": {{[0-9]+}}, 947 // CHECK-NEXT: "col": 11, 948 // CHECK-NEXT: "tokLen": 4 949 // CHECK-NEXT: }, 950 // CHECK-NEXT: "end": { 951 // CHECK-NEXT: "offset": {{[0-9]+}}, 952 // CHECK-NEXT: "col": 11, 953 // CHECK-NEXT: "tokLen": 4 954 // CHECK-NEXT: } 955 // CHECK-NEXT: }, 956 // CHECK-NEXT: "type": { 957 // CHECK-NEXT: "qualType": "void (S::*)(int)" 958 // CHECK-NEXT: }, 959 // CHECK-NEXT: "valueCategory": "prvalue", 960 // CHECK-NEXT: "castKind": "LValueToRValue", 961 // CHECK-NEXT: "inner": [ 962 // CHECK-NEXT: { 963 // CHECK-NEXT: "id": "0x{{.*}}", 964 // CHECK-NEXT: "kind": "DeclRefExpr", 965 // CHECK-NEXT: "range": { 966 // CHECK-NEXT: "begin": { 967 // CHECK-NEXT: "offset": {{[0-9]+}}, 968 // CHECK-NEXT: "col": 11, 969 // CHECK-NEXT: "tokLen": 4 970 // CHECK-NEXT: }, 971 // CHECK-NEXT: "end": { 972 // CHECK-NEXT: "offset": {{[0-9]+}}, 973 // CHECK-NEXT: "col": 11, 974 // CHECK-NEXT: "tokLen": 4 975 // CHECK-NEXT: } 976 // CHECK-NEXT: }, 977 // CHECK-NEXT: "type": { 978 // CHECK-NEXT: "qualType": "void (S::*)(int)" 979 // CHECK-NEXT: }, 980 // CHECK-NEXT: "valueCategory": "lvalue", 981 // CHECK-NEXT: "referencedDecl": { 982 // CHECK-NEXT: "id": "0x{{.*}}", 983 // CHECK-NEXT: "kind": "ParmVarDecl", 984 // CHECK-NEXT: "name": "call", 985 // CHECK-NEXT: "type": { 986 // CHECK-NEXT: "qualType": "void (S::*)(int)" 987 // CHECK-NEXT: } 988 // CHECK-NEXT: } 989 // CHECK-NEXT: } 990 // CHECK-NEXT: ] 991 // CHECK-NEXT: } 992 // CHECK-NEXT: ] 993 // CHECK-NEXT: } 994 // CHECK-NEXT: ] 995 // CHECK-NEXT: }, 996 // CHECK-NEXT: { 997 // CHECK-NEXT: "id": "0x{{.*}}", 998 // CHECK-NEXT: "kind": "IntegerLiteral", 999 // CHECK-NEXT: "range": { 1000 // CHECK-NEXT: "begin": { 1001 // CHECK-NEXT: "offset": {{[0-9]+}}, 1002 // CHECK-NEXT: "col": 17, 1003 // CHECK-NEXT: "tokLen": 2 1004 // CHECK-NEXT: }, 1005 // CHECK-NEXT: "end": { 1006 // CHECK-NEXT: "offset": {{[0-9]+}}, 1007 // CHECK-NEXT: "col": 17, 1008 // CHECK-NEXT: "tokLen": 2 1009 // CHECK-NEXT: } 1010 // CHECK-NEXT: }, 1011 // CHECK-NEXT: "type": { 1012 // CHECK-NEXT: "qualType": "int" 1013 // CHECK-NEXT: }, 1014 // CHECK-NEXT: "valueCategory": "prvalue", 1015 // CHECK-NEXT: "value": "12" 1016 // CHECK-NEXT: } 1017 // CHECK-NEXT: ] 1018 // CHECK-NEXT: } 1019 // CHECK-NEXT: ] 1020 // CHECK-NEXT: } 1021 // CHECK-NEXT: ] 1022 // CHECK-NEXT: } 1023 1024 1025 // CHECK-NOT: {{^}}Dumping 1026 // CHECK: "kind": "FunctionDecl", 1027 // CHECK-NEXT: "loc": { 1028 // CHECK-NEXT: "offset": {{[0-9]+}}, 1029 // CHECK-NEXT: "file": "{{.*}}", 1030 // CHECK-NEXT: "line": 53, 1031 // CHECK-NEXT: "col": 6, 1032 // CHECK-NEXT: "tokLen": 11 1033 // CHECK-NEXT: }, 1034 // CHECK-NEXT: "range": { 1035 // CHECK-NEXT: "begin": { 1036 // CHECK-NEXT: "offset": {{[0-9]+}}, 1037 // CHECK-NEXT: "col": 1, 1038 // CHECK-NEXT: "tokLen": 4 1039 // CHECK-NEXT: }, 1040 // CHECK-NEXT: "end": { 1041 // CHECK-NEXT: "offset": {{[0-9]+}}, 1042 // CHECK-NEXT: "line": 58, 1043 // CHECK-NEXT: "col": 1, 1044 // CHECK-NEXT: "tokLen": 1 1045 // CHECK-NEXT: } 1046 // CHECK-NEXT: }, 1047 // CHECK-NEXT: "name": "TestCasting", 1048 // CHECK-NEXT: "mangledName": "_Z11TestCastingPK1S", 1049 // CHECK-NEXT: "type": { 1050 // CHECK-NEXT: "qualType": "void (const S *)" 1051 // CHECK-NEXT: }, 1052 // CHECK-NEXT: "inner": [ 1053 // CHECK-NEXT: { 1054 // CHECK-NEXT: "id": "0x{{.*}}", 1055 // CHECK-NEXT: "kind": "ParmVarDecl", 1056 // CHECK-NEXT: "loc": { 1057 // CHECK-NEXT: "offset": {{[0-9]+}}, 1058 // CHECK-NEXT: "line": 53, 1059 // CHECK-NEXT: "col": 27, 1060 // CHECK-NEXT: "tokLen": 1 1061 // CHECK-NEXT: }, 1062 // CHECK-NEXT: "range": { 1063 // CHECK-NEXT: "begin": { 1064 // CHECK-NEXT: "offset": {{[0-9]+}}, 1065 // CHECK-NEXT: "col": 18, 1066 // CHECK-NEXT: "tokLen": 5 1067 // CHECK-NEXT: }, 1068 // CHECK-NEXT: "end": { 1069 // CHECK-NEXT: "offset": {{[0-9]+}}, 1070 // CHECK-NEXT: "col": 27, 1071 // CHECK-NEXT: "tokLen": 1 1072 // CHECK-NEXT: } 1073 // CHECK-NEXT: }, 1074 // CHECK-NEXT: "isUsed": true, 1075 // CHECK-NEXT: "name": "s", 1076 // CHECK-NEXT: "type": { 1077 // CHECK-NEXT: "qualType": "const S *" 1078 // CHECK-NEXT: } 1079 // CHECK-NEXT: }, 1080 // CHECK-NEXT: { 1081 // CHECK-NEXT: "id": "0x{{.*}}", 1082 // CHECK-NEXT: "kind": "CompoundStmt", 1083 // CHECK-NEXT: "range": { 1084 // CHECK-NEXT: "begin": { 1085 // CHECK-NEXT: "offset": {{[0-9]+}}, 1086 // CHECK-NEXT: "col": 30, 1087 // CHECK-NEXT: "tokLen": 1 1088 // CHECK-NEXT: }, 1089 // CHECK-NEXT: "end": { 1090 // CHECK-NEXT: "offset": {{[0-9]+}}, 1091 // CHECK-NEXT: "line": 58, 1092 // CHECK-NEXT: "col": 1, 1093 // CHECK-NEXT: "tokLen": 1 1094 // CHECK-NEXT: } 1095 // CHECK-NEXT: }, 1096 // CHECK-NEXT: "inner": [ 1097 // CHECK-NEXT: { 1098 // CHECK-NEXT: "id": "0x{{.*}}", 1099 // CHECK-NEXT: "kind": "CXXConstCastExpr", 1100 // CHECK-NEXT: "range": { 1101 // CHECK-NEXT: "begin": { 1102 // CHECK-NEXT: "offset": {{[0-9]+}}, 1103 // CHECK-NEXT: "line": 54, 1104 // CHECK-NEXT: "col": 3, 1105 // CHECK-NEXT: "tokLen": 10 1106 // CHECK-NEXT: }, 1107 // CHECK-NEXT: "end": { 1108 // CHECK-NEXT: "offset": {{[0-9]+}}, 1109 // CHECK-NEXT: "col": 20, 1110 // CHECK-NEXT: "tokLen": 1 1111 // CHECK-NEXT: } 1112 // CHECK-NEXT: }, 1113 // CHECK-NEXT: "type": { 1114 // CHECK-NEXT: "qualType": "S *" 1115 // CHECK-NEXT: }, 1116 // CHECK-NEXT: "valueCategory": "prvalue", 1117 // CHECK-NEXT: "castKind": "NoOp", 1118 // CHECK-NEXT: "inner": [ 1119 // CHECK-NEXT: { 1120 // CHECK-NEXT: "id": "0x{{.*}}", 1121 // CHECK-NEXT: "kind": "ImplicitCastExpr", 1122 // CHECK-NEXT: "range": { 1123 // CHECK-NEXT: "begin": { 1124 // CHECK-NEXT: "offset": {{[0-9]+}}, 1125 // CHECK-NEXT: "col": 19, 1126 // CHECK-NEXT: "tokLen": 1 1127 // CHECK-NEXT: }, 1128 // CHECK-NEXT: "end": { 1129 // CHECK-NEXT: "offset": {{[0-9]+}}, 1130 // CHECK-NEXT: "col": 19, 1131 // CHECK-NEXT: "tokLen": 1 1132 // CHECK-NEXT: } 1133 // CHECK-NEXT: }, 1134 // CHECK-NEXT: "type": { 1135 // CHECK-NEXT: "qualType": "const S *" 1136 // CHECK-NEXT: }, 1137 // CHECK-NEXT: "valueCategory": "prvalue", 1138 // CHECK-NEXT: "castKind": "LValueToRValue", 1139 // CHECK-NEXT: "isPartOfExplicitCast": true, 1140 // CHECK-NEXT: "inner": [ 1141 // CHECK-NEXT: { 1142 // CHECK-NEXT: "id": "0x{{.*}}", 1143 // CHECK-NEXT: "kind": "DeclRefExpr", 1144 // CHECK-NEXT: "range": { 1145 // CHECK-NEXT: "begin": { 1146 // CHECK-NEXT: "offset": {{[0-9]+}}, 1147 // CHECK-NEXT: "col": 19, 1148 // CHECK-NEXT: "tokLen": 1 1149 // CHECK-NEXT: }, 1150 // CHECK-NEXT: "end": { 1151 // CHECK-NEXT: "offset": {{[0-9]+}}, 1152 // CHECK-NEXT: "col": 19, 1153 // CHECK-NEXT: "tokLen": 1 1154 // CHECK-NEXT: } 1155 // CHECK-NEXT: }, 1156 // CHECK-NEXT: "type": { 1157 // CHECK-NEXT: "qualType": "const S *" 1158 // CHECK-NEXT: }, 1159 // CHECK-NEXT: "valueCategory": "lvalue", 1160 // CHECK-NEXT: "referencedDecl": { 1161 // CHECK-NEXT: "id": "0x{{.*}}", 1162 // CHECK-NEXT: "kind": "ParmVarDecl", 1163 // CHECK-NEXT: "name": "s", 1164 // CHECK-NEXT: "type": { 1165 // CHECK-NEXT: "qualType": "const S *" 1166 // CHECK-NEXT: } 1167 // CHECK-NEXT: } 1168 // CHECK-NEXT: } 1169 // CHECK-NEXT: ] 1170 // CHECK-NEXT: } 1171 // CHECK-NEXT: ] 1172 // CHECK-NEXT: }, 1173 // CHECK-NEXT: { 1174 // CHECK-NEXT: "id": "0x{{.*}}", 1175 // CHECK-NEXT: "kind": "CXXStaticCastExpr", 1176 // CHECK-NEXT: "range": { 1177 // CHECK-NEXT: "begin": { 1178 // CHECK-NEXT: "offset": {{[0-9]+}}, 1179 // CHECK-NEXT: "line": 55, 1180 // CHECK-NEXT: "col": 3, 1181 // CHECK-NEXT: "tokLen": 11 1182 // CHECK-NEXT: }, 1183 // CHECK-NEXT: "end": { 1184 // CHECK-NEXT: "offset": {{[0-9]+}}, 1185 // CHECK-NEXT: "col": 27, 1186 // CHECK-NEXT: "tokLen": 1 1187 // CHECK-NEXT: } 1188 // CHECK-NEXT: }, 1189 // CHECK-NEXT: "type": { 1190 // CHECK-NEXT: "qualType": "const T *" 1191 // CHECK-NEXT: }, 1192 // CHECK-NEXT: "valueCategory": "prvalue", 1193 // CHECK-NEXT: "castKind": "BaseToDerived", 1194 // CHECK-NEXT: "path": [ 1195 // CHECK-NEXT: { 1196 // CHECK-NEXT: "name": "S" 1197 // CHECK-NEXT: } 1198 // CHECK-NEXT: ], 1199 // CHECK-NEXT: "inner": [ 1200 // CHECK-NEXT: { 1201 // CHECK-NEXT: "id": "0x{{.*}}", 1202 // CHECK-NEXT: "kind": "ImplicitCastExpr", 1203 // CHECK-NEXT: "range": { 1204 // CHECK-NEXT: "begin": { 1205 // CHECK-NEXT: "offset": {{[0-9]+}}, 1206 // CHECK-NEXT: "col": 26, 1207 // CHECK-NEXT: "tokLen": 1 1208 // CHECK-NEXT: }, 1209 // CHECK-NEXT: "end": { 1210 // CHECK-NEXT: "offset": {{[0-9]+}}, 1211 // CHECK-NEXT: "col": 26, 1212 // CHECK-NEXT: "tokLen": 1 1213 // CHECK-NEXT: } 1214 // CHECK-NEXT: }, 1215 // CHECK-NEXT: "type": { 1216 // CHECK-NEXT: "qualType": "const S *" 1217 // CHECK-NEXT: }, 1218 // CHECK-NEXT: "valueCategory": "prvalue", 1219 // CHECK-NEXT: "castKind": "LValueToRValue", 1220 // CHECK-NEXT: "isPartOfExplicitCast": true, 1221 // CHECK-NEXT: "inner": [ 1222 // CHECK-NEXT: { 1223 // CHECK-NEXT: "id": "0x{{.*}}", 1224 // CHECK-NEXT: "kind": "DeclRefExpr", 1225 // CHECK-NEXT: "range": { 1226 // CHECK-NEXT: "begin": { 1227 // CHECK-NEXT: "offset": {{[0-9]+}}, 1228 // CHECK-NEXT: "col": 26, 1229 // CHECK-NEXT: "tokLen": 1 1230 // CHECK-NEXT: }, 1231 // CHECK-NEXT: "end": { 1232 // CHECK-NEXT: "offset": {{[0-9]+}}, 1233 // CHECK-NEXT: "col": 26, 1234 // CHECK-NEXT: "tokLen": 1 1235 // CHECK-NEXT: } 1236 // CHECK-NEXT: }, 1237 // CHECK-NEXT: "type": { 1238 // CHECK-NEXT: "qualType": "const S *" 1239 // CHECK-NEXT: }, 1240 // CHECK-NEXT: "valueCategory": "lvalue", 1241 // CHECK-NEXT: "referencedDecl": { 1242 // CHECK-NEXT: "id": "0x{{.*}}", 1243 // CHECK-NEXT: "kind": "ParmVarDecl", 1244 // CHECK-NEXT: "name": "s", 1245 // CHECK-NEXT: "type": { 1246 // CHECK-NEXT: "qualType": "const S *" 1247 // CHECK-NEXT: } 1248 // CHECK-NEXT: } 1249 // CHECK-NEXT: } 1250 // CHECK-NEXT: ] 1251 // CHECK-NEXT: } 1252 // CHECK-NEXT: ] 1253 // CHECK-NEXT: }, 1254 // CHECK-NEXT: { 1255 // CHECK-NEXT: "id": "0x{{.*}}", 1256 // CHECK-NEXT: "kind": "CXXDynamicCastExpr", 1257 // CHECK-NEXT: "range": { 1258 // CHECK-NEXT: "begin": { 1259 // CHECK-NEXT: "offset": {{[0-9]+}}, 1260 // CHECK-NEXT: "line": 56, 1261 // CHECK-NEXT: "col": 3, 1262 // CHECK-NEXT: "tokLen": 12 1263 // CHECK-NEXT: }, 1264 // CHECK-NEXT: "end": { 1265 // CHECK-NEXT: "offset": {{[0-9]+}}, 1266 // CHECK-NEXT: "col": 28, 1267 // CHECK-NEXT: "tokLen": 1 1268 // CHECK-NEXT: } 1269 // CHECK-NEXT: }, 1270 // CHECK-NEXT: "type": { 1271 // CHECK-NEXT: "qualType": "const T *" 1272 // CHECK-NEXT: }, 1273 // CHECK-NEXT: "valueCategory": "prvalue", 1274 // CHECK-NEXT: "castKind": "Dynamic", 1275 // CHECK-NEXT: "inner": [ 1276 // CHECK-NEXT: { 1277 // CHECK-NEXT: "id": "0x{{.*}}", 1278 // CHECK-NEXT: "kind": "ImplicitCastExpr", 1279 // CHECK-NEXT: "range": { 1280 // CHECK-NEXT: "begin": { 1281 // CHECK-NEXT: "offset": {{[0-9]+}}, 1282 // CHECK-NEXT: "col": 27, 1283 // CHECK-NEXT: "tokLen": 1 1284 // CHECK-NEXT: }, 1285 // CHECK-NEXT: "end": { 1286 // CHECK-NEXT: "offset": {{[0-9]+}}, 1287 // CHECK-NEXT: "col": 27, 1288 // CHECK-NEXT: "tokLen": 1 1289 // CHECK-NEXT: } 1290 // CHECK-NEXT: }, 1291 // CHECK-NEXT: "type": { 1292 // CHECK-NEXT: "qualType": "const S *" 1293 // CHECK-NEXT: }, 1294 // CHECK-NEXT: "valueCategory": "prvalue", 1295 // CHECK-NEXT: "castKind": "LValueToRValue", 1296 // CHECK-NEXT: "isPartOfExplicitCast": true, 1297 // CHECK-NEXT: "inner": [ 1298 // CHECK-NEXT: { 1299 // CHECK-NEXT: "id": "0x{{.*}}", 1300 // CHECK-NEXT: "kind": "DeclRefExpr", 1301 // CHECK-NEXT: "range": { 1302 // CHECK-NEXT: "begin": { 1303 // CHECK-NEXT: "offset": {{[0-9]+}}, 1304 // CHECK-NEXT: "col": 27, 1305 // CHECK-NEXT: "tokLen": 1 1306 // CHECK-NEXT: }, 1307 // CHECK-NEXT: "end": { 1308 // CHECK-NEXT: "offset": {{[0-9]+}}, 1309 // CHECK-NEXT: "col": 27, 1310 // CHECK-NEXT: "tokLen": 1 1311 // CHECK-NEXT: } 1312 // CHECK-NEXT: }, 1313 // CHECK-NEXT: "type": { 1314 // CHECK-NEXT: "qualType": "const S *" 1315 // CHECK-NEXT: }, 1316 // CHECK-NEXT: "valueCategory": "lvalue", 1317 // CHECK-NEXT: "referencedDecl": { 1318 // CHECK-NEXT: "id": "0x{{.*}}", 1319 // CHECK-NEXT: "kind": "ParmVarDecl", 1320 // CHECK-NEXT: "name": "s", 1321 // CHECK-NEXT: "type": { 1322 // CHECK-NEXT: "qualType": "const S *" 1323 // CHECK-NEXT: } 1324 // CHECK-NEXT: } 1325 // CHECK-NEXT: } 1326 // CHECK-NEXT: ] 1327 // CHECK-NEXT: } 1328 // CHECK-NEXT: ] 1329 // CHECK-NEXT: }, 1330 // CHECK-NEXT: { 1331 // CHECK-NEXT: "id": "0x{{.*}}", 1332 // CHECK-NEXT: "kind": "CXXReinterpretCastExpr", 1333 // CHECK-NEXT: "range": { 1334 // CHECK-NEXT: "begin": { 1335 // CHECK-NEXT: "offset": {{[0-9]+}}, 1336 // CHECK-NEXT: "line": 57, 1337 // CHECK-NEXT: "col": 3, 1338 // CHECK-NEXT: "tokLen": 16 1339 // CHECK-NEXT: }, 1340 // CHECK-NEXT: "end": { 1341 // CHECK-NEXT: "offset": {{[0-9]+}}, 1342 // CHECK-NEXT: "col": 34, 1343 // CHECK-NEXT: "tokLen": 1 1344 // CHECK-NEXT: } 1345 // CHECK-NEXT: }, 1346 // CHECK-NEXT: "type": { 1347 // CHECK-NEXT: "qualType": "const int *" 1348 // CHECK-NEXT: }, 1349 // CHECK-NEXT: "valueCategory": "prvalue", 1350 // CHECK-NEXT: "castKind": "BitCast", 1351 // CHECK-NEXT: "inner": [ 1352 // CHECK-NEXT: { 1353 // CHECK-NEXT: "id": "0x{{.*}}", 1354 // CHECK-NEXT: "kind": "ImplicitCastExpr", 1355 // CHECK-NEXT: "range": { 1356 // CHECK-NEXT: "begin": { 1357 // CHECK-NEXT: "offset": {{[0-9]+}}, 1358 // CHECK-NEXT: "col": 33, 1359 // CHECK-NEXT: "tokLen": 1 1360 // CHECK-NEXT: }, 1361 // CHECK-NEXT: "end": { 1362 // CHECK-NEXT: "offset": {{[0-9]+}}, 1363 // CHECK-NEXT: "col": 33, 1364 // CHECK-NEXT: "tokLen": 1 1365 // CHECK-NEXT: } 1366 // CHECK-NEXT: }, 1367 // CHECK-NEXT: "type": { 1368 // CHECK-NEXT: "qualType": "const S *" 1369 // CHECK-NEXT: }, 1370 // CHECK-NEXT: "valueCategory": "prvalue", 1371 // CHECK-NEXT: "castKind": "LValueToRValue", 1372 // CHECK-NEXT: "isPartOfExplicitCast": true, 1373 // CHECK-NEXT: "inner": [ 1374 // CHECK-NEXT: { 1375 // CHECK-NEXT: "id": "0x{{.*}}", 1376 // CHECK-NEXT: "kind": "DeclRefExpr", 1377 // CHECK-NEXT: "range": { 1378 // CHECK-NEXT: "begin": { 1379 // CHECK-NEXT: "offset": {{[0-9]+}}, 1380 // CHECK-NEXT: "col": 33, 1381 // CHECK-NEXT: "tokLen": 1 1382 // CHECK-NEXT: }, 1383 // CHECK-NEXT: "end": { 1384 // CHECK-NEXT: "offset": {{[0-9]+}}, 1385 // CHECK-NEXT: "col": 33, 1386 // CHECK-NEXT: "tokLen": 1 1387 // CHECK-NEXT: } 1388 // CHECK-NEXT: }, 1389 // CHECK-NEXT: "type": { 1390 // CHECK-NEXT: "qualType": "const S *" 1391 // CHECK-NEXT: }, 1392 // CHECK-NEXT: "valueCategory": "lvalue", 1393 // CHECK-NEXT: "referencedDecl": { 1394 // CHECK-NEXT: "id": "0x{{.*}}", 1395 // CHECK-NEXT: "kind": "ParmVarDecl", 1396 // CHECK-NEXT: "name": "s", 1397 // CHECK-NEXT: "type": { 1398 // CHECK-NEXT: "qualType": "const S *" 1399 // CHECK-NEXT: } 1400 // CHECK-NEXT: } 1401 // CHECK-NEXT: } 1402 // CHECK-NEXT: ] 1403 // CHECK-NEXT: } 1404 // CHECK-NEXT: ] 1405 // CHECK-NEXT: } 1406 // CHECK-NEXT: ] 1407 // CHECK-NEXT: } 1408 // CHECK-NEXT: ] 1409 // CHECK-NEXT: } 1410 1411 1412 // CHECK-NOT: {{^}}Dumping 1413 // CHECK: "kind": "FunctionTemplateDecl", 1414 // CHECK-NEXT: "loc": { 1415 // CHECK-NEXT: "offset": {{[0-9]+}}, 1416 // CHECK-NEXT: "file": "{{.*}}", 1417 // CHECK-NEXT: "line": 61, 1418 // CHECK-NEXT: "col": 6, 1419 // CHECK-NEXT: "tokLen": 20 1420 // CHECK-NEXT: }, 1421 // CHECK-NEXT: "range": { 1422 // CHECK-NEXT: "begin": { 1423 // CHECK-NEXT: "offset": {{[0-9]+}}, 1424 // CHECK-NEXT: "line": 60, 1425 // CHECK-NEXT: "col": 1, 1426 // CHECK-NEXT: "tokLen": 8 1427 // CHECK-NEXT: }, 1428 // CHECK-NEXT: "end": { 1429 // CHECK-NEXT: "offset": {{[0-9]+}}, 1430 // CHECK-NEXT: "line": 75, 1431 // CHECK-NEXT: "col": 1, 1432 // CHECK-NEXT: "tokLen": 1 1433 // CHECK-NEXT: } 1434 // CHECK-NEXT: }, 1435 // CHECK-NEXT: "name": "TestUnaryExpressions", 1436 // CHECK-NEXT: "inner": [ 1437 // CHECK-NEXT: { 1438 // CHECK-NEXT: "id": "0x{{.*}}", 1439 // CHECK-NEXT: "kind": "TemplateTypeParmDecl", 1440 // CHECK-NEXT: "loc": { 1441 // CHECK-NEXT: "offset": {{[0-9]+}}, 1442 // CHECK-NEXT: "line": 60, 1443 // CHECK-NEXT: "col": 23, 1444 // CHECK-NEXT: "tokLen": 2 1445 // CHECK-NEXT: }, 1446 // CHECK-NEXT: "range": { 1447 // CHECK-NEXT: "begin": { 1448 // CHECK-NEXT: "offset": {{[0-9]+}}, 1449 // CHECK-NEXT: "col": 11, 1450 // CHECK-NEXT: "tokLen": 8 1451 // CHECK-NEXT: }, 1452 // CHECK-NEXT: "end": { 1453 // CHECK-NEXT: "offset": {{[0-9]+}}, 1454 // CHECK-NEXT: "col": 23, 1455 // CHECK-NEXT: "tokLen": 2 1456 // CHECK-NEXT: } 1457 // CHECK-NEXT: }, 1458 // CHECK-NEXT: "isReferenced": true, 1459 // CHECK-NEXT: "name": "Ts", 1460 // CHECK-NEXT: "tagUsed": "typename", 1461 // CHECK-NEXT: "depth": 0, 1462 // CHECK-NEXT: "index": 0, 1463 // CHECK-NEXT: "isParameterPack": true 1464 // CHECK-NEXT: }, 1465 // CHECK-NEXT: { 1466 // CHECK-NEXT: "id": "0x{{.*}}", 1467 // CHECK-NEXT: "kind": "FunctionDecl", 1468 // CHECK-NEXT: "loc": { 1469 // CHECK-NEXT: "offset": {{[0-9]+}}, 1470 // CHECK-NEXT: "line": 61, 1471 // CHECK-NEXT: "col": 6, 1472 // CHECK-NEXT: "tokLen": 20 1473 // CHECK-NEXT: }, 1474 // CHECK-NEXT: "range": { 1475 // CHECK-NEXT: "begin": { 1476 // CHECK-NEXT: "offset": {{[0-9]+}}, 1477 // CHECK-NEXT: "col": 1, 1478 // CHECK-NEXT: "tokLen": 4 1479 // CHECK-NEXT: }, 1480 // CHECK-NEXT: "end": { 1481 // CHECK-NEXT: "offset": {{[0-9]+}}, 1482 // CHECK-NEXT: "line": 75, 1483 // CHECK-NEXT: "col": 1, 1484 // CHECK-NEXT: "tokLen": 1 1485 // CHECK-NEXT: } 1486 // CHECK-NEXT: }, 1487 // CHECK-NEXT: "name": "TestUnaryExpressions", 1488 // CHECK-NEXT: "type": { 1489 // CHECK-NEXT: "qualType": "void (int *)" 1490 // CHECK-NEXT: }, 1491 // CHECK-NEXT: "inner": [ 1492 // CHECK-NEXT: { 1493 // CHECK-NEXT: "id": "0x{{.*}}", 1494 // CHECK-NEXT: "kind": "ParmVarDecl", 1495 // CHECK-NEXT: "loc": { 1496 // CHECK-NEXT: "offset": {{[0-9]+}}, 1497 // CHECK-NEXT: "line": 61, 1498 // CHECK-NEXT: "col": 32, 1499 // CHECK-NEXT: "tokLen": 1 1500 // CHECK-NEXT: }, 1501 // CHECK-NEXT: "range": { 1502 // CHECK-NEXT: "begin": { 1503 // CHECK-NEXT: "offset": {{[0-9]+}}, 1504 // CHECK-NEXT: "col": 27, 1505 // CHECK-NEXT: "tokLen": 3 1506 // CHECK-NEXT: }, 1507 // CHECK-NEXT: "end": { 1508 // CHECK-NEXT: "offset": {{[0-9]+}}, 1509 // CHECK-NEXT: "col": 32, 1510 // CHECK-NEXT: "tokLen": 1 1511 // CHECK-NEXT: } 1512 // CHECK-NEXT: }, 1513 // CHECK-NEXT: "isReferenced": true, 1514 // CHECK-NEXT: "name": "p", 1515 // CHECK-NEXT: "type": { 1516 // CHECK-NEXT: "qualType": "int *" 1517 // CHECK-NEXT: } 1518 // CHECK-NEXT: }, 1519 // CHECK-NEXT: { 1520 // CHECK-NEXT: "id": "0x{{.*}}", 1521 // CHECK-NEXT: "kind": "CompoundStmt", 1522 // CHECK-NEXT: "range": { 1523 // CHECK-NEXT: "begin": { 1524 // CHECK-NEXT: "offset": {{[0-9]+}}, 1525 // CHECK-NEXT: "col": 35, 1526 // CHECK-NEXT: "tokLen": 1 1527 // CHECK-NEXT: }, 1528 // CHECK-NEXT: "end": { 1529 // CHECK-NEXT: "offset": {{[0-9]+}}, 1530 // CHECK-NEXT: "line": 75, 1531 // CHECK-NEXT: "col": 1, 1532 // CHECK-NEXT: "tokLen": 1 1533 // CHECK-NEXT: } 1534 // CHECK-NEXT: }, 1535 // CHECK-NEXT: "inner": [ 1536 // CHECK-NEXT: { 1537 // CHECK-NEXT: "id": "0x{{.*}}", 1538 // CHECK-NEXT: "kind": "SizeOfPackExpr", 1539 // CHECK-NEXT: "range": { 1540 // CHECK-NEXT: "begin": { 1541 // CHECK-NEXT: "offset": {{[0-9]+}}, 1542 // CHECK-NEXT: "line": 62, 1543 // CHECK-NEXT: "col": 3, 1544 // CHECK-NEXT: "tokLen": 6 1545 // CHECK-NEXT: }, 1546 // CHECK-NEXT: "end": { 1547 // CHECK-NEXT: "offset": {{[0-9]+}}, 1548 // CHECK-NEXT: "col": 15, 1549 // CHECK-NEXT: "tokLen": 1 1550 // CHECK-NEXT: } 1551 // CHECK-NEXT: }, 1552 // CHECK-NEXT: "type": { 1553 // CHECK-NEXT: "qualType": "unsigned long" 1554 // CHECK-NEXT: }, 1555 // CHECK-NEXT: "valueCategory": "prvalue", 1556 // CHECK-NEXT: "name": "Ts" 1557 // CHECK-NEXT: }, 1558 // CHECK-NEXT: { 1559 // CHECK-NEXT: "id": "0x{{.*}}", 1560 // CHECK-NEXT: "kind": "CXXNoexceptExpr", 1561 // CHECK-NEXT: "range": { 1562 // CHECK-NEXT: "begin": { 1563 // CHECK-NEXT: "offset": {{[0-9]+}}, 1564 // CHECK-NEXT: "line": 63, 1565 // CHECK-NEXT: "col": 3, 1566 // CHECK-NEXT: "tokLen": 8 1567 // CHECK-NEXT: }, 1568 // CHECK-NEXT: "end": { 1569 // CHECK-NEXT: "offset": {{[0-9]+}}, 1570 // CHECK-NEXT: "col": 17, 1571 // CHECK-NEXT: "tokLen": 1 1572 // CHECK-NEXT: } 1573 // CHECK-NEXT: }, 1574 // CHECK-NEXT: "type": { 1575 // CHECK-NEXT: "qualType": "bool" 1576 // CHECK-NEXT: }, 1577 // CHECK-NEXT: "valueCategory": "prvalue", 1578 // CHECK-NEXT: "inner": [ 1579 // CHECK-NEXT: { 1580 // CHECK-NEXT: "id": "0x{{.*}}", 1581 // CHECK-NEXT: "kind": "BinaryOperator", 1582 // CHECK-NEXT: "range": { 1583 // CHECK-NEXT: "begin": { 1584 // CHECK-NEXT: "offset": {{[0-9]+}}, 1585 // CHECK-NEXT: "col": 12, 1586 // CHECK-NEXT: "tokLen": 1 1587 // CHECK-NEXT: }, 1588 // CHECK-NEXT: "end": { 1589 // CHECK-NEXT: "offset": {{[0-9]+}}, 1590 // CHECK-NEXT: "col": 16, 1591 // CHECK-NEXT: "tokLen": 1 1592 // CHECK-NEXT: } 1593 // CHECK-NEXT: }, 1594 // CHECK-NEXT: "type": { 1595 // CHECK-NEXT: "qualType": "long" 1596 // CHECK-NEXT: }, 1597 // CHECK-NEXT: "valueCategory": "prvalue", 1598 // CHECK-NEXT: "opcode": "-", 1599 // CHECK-NEXT: "inner": [ 1600 // CHECK-NEXT: { 1601 // CHECK-NEXT: "id": "0x{{.*}}", 1602 // CHECK-NEXT: "kind": "ImplicitCastExpr", 1603 // CHECK-NEXT: "range": { 1604 // CHECK-NEXT: "begin": { 1605 // CHECK-NEXT: "offset": {{[0-9]+}}, 1606 // CHECK-NEXT: "col": 12, 1607 // CHECK-NEXT: "tokLen": 1 1608 // CHECK-NEXT: }, 1609 // CHECK-NEXT: "end": { 1610 // CHECK-NEXT: "offset": {{[0-9]+}}, 1611 // CHECK-NEXT: "col": 12, 1612 // CHECK-NEXT: "tokLen": 1 1613 // CHECK-NEXT: } 1614 // CHECK-NEXT: }, 1615 // CHECK-NEXT: "type": { 1616 // CHECK-NEXT: "qualType": "int *" 1617 // CHECK-NEXT: }, 1618 // CHECK-NEXT: "valueCategory": "prvalue", 1619 // CHECK-NEXT: "castKind": "LValueToRValue", 1620 // CHECK-NEXT: "inner": [ 1621 // CHECK-NEXT: { 1622 // CHECK-NEXT: "id": "0x{{.*}}", 1623 // CHECK-NEXT: "kind": "DeclRefExpr", 1624 // CHECK-NEXT: "range": { 1625 // CHECK-NEXT: "begin": { 1626 // CHECK-NEXT: "offset": {{[0-9]+}}, 1627 // CHECK-NEXT: "col": 12, 1628 // CHECK-NEXT: "tokLen": 1 1629 // CHECK-NEXT: }, 1630 // CHECK-NEXT: "end": { 1631 // CHECK-NEXT: "offset": {{[0-9]+}}, 1632 // CHECK-NEXT: "col": 12, 1633 // CHECK-NEXT: "tokLen": 1 1634 // CHECK-NEXT: } 1635 // CHECK-NEXT: }, 1636 // CHECK-NEXT: "type": { 1637 // CHECK-NEXT: "qualType": "int *" 1638 // CHECK-NEXT: }, 1639 // CHECK-NEXT: "valueCategory": "lvalue", 1640 // CHECK-NEXT: "referencedDecl": { 1641 // CHECK-NEXT: "id": "0x{{.*}}", 1642 // CHECK-NEXT: "kind": "ParmVarDecl", 1643 // CHECK-NEXT: "name": "p", 1644 // CHECK-NEXT: "type": { 1645 // CHECK-NEXT: "qualType": "int *" 1646 // CHECK-NEXT: } 1647 // CHECK-NEXT: }, 1648 // CHECK-NEXT: "nonOdrUseReason": "unevaluated" 1649 // CHECK-NEXT: } 1650 // CHECK-NEXT: ] 1651 // CHECK-NEXT: }, 1652 // CHECK-NEXT: { 1653 // CHECK-NEXT: "id": "0x{{.*}}", 1654 // CHECK-NEXT: "kind": "ImplicitCastExpr", 1655 // CHECK-NEXT: "range": { 1656 // CHECK-NEXT: "begin": { 1657 // CHECK-NEXT: "offset": {{[0-9]+}}, 1658 // CHECK-NEXT: "col": 16, 1659 // CHECK-NEXT: "tokLen": 1 1660 // CHECK-NEXT: }, 1661 // CHECK-NEXT: "end": { 1662 // CHECK-NEXT: "offset": {{[0-9]+}}, 1663 // CHECK-NEXT: "col": 16, 1664 // CHECK-NEXT: "tokLen": 1 1665 // CHECK-NEXT: } 1666 // CHECK-NEXT: }, 1667 // CHECK-NEXT: "type": { 1668 // CHECK-NEXT: "qualType": "int *" 1669 // CHECK-NEXT: }, 1670 // CHECK-NEXT: "valueCategory": "prvalue", 1671 // CHECK-NEXT: "castKind": "LValueToRValue", 1672 // CHECK-NEXT: "inner": [ 1673 // CHECK-NEXT: { 1674 // CHECK-NEXT: "id": "0x{{.*}}", 1675 // CHECK-NEXT: "kind": "DeclRefExpr", 1676 // CHECK-NEXT: "range": { 1677 // CHECK-NEXT: "begin": { 1678 // CHECK-NEXT: "offset": {{[0-9]+}}, 1679 // CHECK-NEXT: "col": 16, 1680 // CHECK-NEXT: "tokLen": 1 1681 // CHECK-NEXT: }, 1682 // CHECK-NEXT: "end": { 1683 // CHECK-NEXT: "offset": {{[0-9]+}}, 1684 // CHECK-NEXT: "col": 16, 1685 // CHECK-NEXT: "tokLen": 1 1686 // CHECK-NEXT: } 1687 // CHECK-NEXT: }, 1688 // CHECK-NEXT: "type": { 1689 // CHECK-NEXT: "qualType": "int *" 1690 // CHECK-NEXT: }, 1691 // CHECK-NEXT: "valueCategory": "lvalue", 1692 // CHECK-NEXT: "referencedDecl": { 1693 // CHECK-NEXT: "id": "0x{{.*}}", 1694 // CHECK-NEXT: "kind": "ParmVarDecl", 1695 // CHECK-NEXT: "name": "p", 1696 // CHECK-NEXT: "type": { 1697 // CHECK-NEXT: "qualType": "int *" 1698 // CHECK-NEXT: } 1699 // CHECK-NEXT: }, 1700 // CHECK-NEXT: "nonOdrUseReason": "unevaluated" 1701 // CHECK-NEXT: } 1702 // CHECK-NEXT: ] 1703 // CHECK-NEXT: } 1704 // CHECK-NEXT: ] 1705 // CHECK-NEXT: } 1706 // CHECK-NEXT: ] 1707 // CHECK-NEXT: }, 1708 // CHECK-NEXT: { 1709 // CHECK-NEXT: "id": "0x{{.*}}", 1710 // CHECK-NEXT: "kind": "CXXNewExpr", 1711 // CHECK-NEXT: "range": { 1712 // CHECK-NEXT: "begin": { 1713 // CHECK-NEXT: "offset": {{[0-9]+}}, 1714 // CHECK-NEXT: "line": 65, 1715 // CHECK-NEXT: "col": 3, 1716 // CHECK-NEXT: "tokLen": 2 1717 // CHECK-NEXT: }, 1718 // CHECK-NEXT: "end": { 1719 // CHECK-NEXT: "offset": {{[0-9]+}}, 1720 // CHECK-NEXT: "col": 9, 1721 // CHECK-NEXT: "tokLen": 3 1722 // CHECK-NEXT: } 1723 // CHECK-NEXT: }, 1724 // CHECK-NEXT: "type": { 1725 // CHECK-NEXT: "qualType": "int *" 1726 // CHECK-NEXT: }, 1727 // CHECK-NEXT: "valueCategory": "prvalue", 1728 // CHECK-NEXT: "isGlobal": true, 1729 // CHECK-NEXT: "operatorNewDecl": { 1730 // CHECK-NEXT: "id": "0x{{.*}}", 1731 // CHECK-NEXT: "kind": "FunctionDecl", 1732 // CHECK-NEXT: "name": "operator new", 1733 // CHECK-NEXT: "type": { 1734 // CHECK-NEXT: "qualType": "void *(unsigned long)" 1735 // CHECK-NEXT: } 1736 // CHECK-NEXT: } 1737 // CHECK-NEXT: }, 1738 // CHECK-NEXT: { 1739 // CHECK-NEXT: "id": "0x{{.*}}", 1740 // CHECK-NEXT: "kind": "CXXNewExpr", 1741 // CHECK-NEXT: "range": { 1742 // CHECK-NEXT: "begin": { 1743 // CHECK-NEXT: "offset": {{[0-9]+}}, 1744 // CHECK-NEXT: "line": 66, 1745 // CHECK-NEXT: "col": 3, 1746 // CHECK-NEXT: "tokLen": 3 1747 // CHECK-NEXT: }, 1748 // CHECK-NEXT: "end": { 1749 // CHECK-NEXT: "offset": {{[0-9]+}}, 1750 // CHECK-NEXT: "col": 11, 1751 // CHECK-NEXT: "tokLen": 1 1752 // CHECK-NEXT: } 1753 // CHECK-NEXT: }, 1754 // CHECK-NEXT: "type": { 1755 // CHECK-NEXT: "qualType": "int *" 1756 // CHECK-NEXT: }, 1757 // CHECK-NEXT: "valueCategory": "prvalue", 1758 // CHECK-NEXT: "operatorNewDecl": { 1759 // CHECK-NEXT: "id": "0x{{.*}}", 1760 // CHECK-NEXT: "kind": "FunctionDecl", 1761 // CHECK-NEXT: "name": "operator new", 1762 // CHECK-NEXT: "type": { 1763 // CHECK-NEXT: "qualType": "void *(unsigned long)" 1764 // CHECK-NEXT: } 1765 // CHECK-NEXT: } 1766 // CHECK-NEXT: }, 1767 // CHECK-NEXT: { 1768 // CHECK-NEXT: "id": "0x{{.*}}", 1769 // CHECK-NEXT: "kind": "CXXNewExpr", 1770 // CHECK-NEXT: "range": { 1771 // CHECK-NEXT: "begin": { 1772 // CHECK-NEXT: "offset": {{[0-9]+}}, 1773 // CHECK-NEXT: "line": 67, 1774 // CHECK-NEXT: "col": 3, 1775 // CHECK-NEXT: "tokLen": 3 1776 // CHECK-NEXT: }, 1777 // CHECK-NEXT: "end": { 1778 // CHECK-NEXT: "offset": {{[0-9]+}}, 1779 // CHECK-NEXT: "col": 13, 1780 // CHECK-NEXT: "tokLen": 1 1781 // 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: "initStyle": "list", 1788 // CHECK-NEXT: "operatorNewDecl": { 1789 // CHECK-NEXT: "id": "0x{{.*}}", 1790 // CHECK-NEXT: "kind": "FunctionDecl", 1791 // CHECK-NEXT: "name": "operator new", 1792 // CHECK-NEXT: "type": { 1793 // CHECK-NEXT: "qualType": "void *(unsigned long)" 1794 // CHECK-NEXT: } 1795 // CHECK-NEXT: }, 1796 // CHECK-NEXT: "inner": [ 1797 // CHECK-NEXT: { 1798 // CHECK-NEXT: "id": "0x{{.*}}", 1799 // CHECK-NEXT: "kind": "InitListExpr", 1800 // CHECK-NEXT: "range": { 1801 // CHECK-NEXT: "begin": { 1802 // CHECK-NEXT: "offset": {{[0-9]+}}, 1803 // CHECK-NEXT: "col": 10, 1804 // CHECK-NEXT: "tokLen": 1 1805 // CHECK-NEXT: }, 1806 // CHECK-NEXT: "end": { 1807 // CHECK-NEXT: "offset": {{[0-9]+}}, 1808 // CHECK-NEXT: "col": 13, 1809 // CHECK-NEXT: "tokLen": 1 1810 // CHECK-NEXT: } 1811 // CHECK-NEXT: }, 1812 // CHECK-NEXT: "type": { 1813 // CHECK-NEXT: "qualType": "int" 1814 // CHECK-NEXT: }, 1815 // CHECK-NEXT: "valueCategory": "prvalue", 1816 // CHECK-NEXT: "inner": [ 1817 // CHECK-NEXT: { 1818 // CHECK-NEXT: "id": "0x{{.*}}", 1819 // CHECK-NEXT: "kind": "IntegerLiteral", 1820 // CHECK-NEXT: "range": { 1821 // CHECK-NEXT: "begin": { 1822 // CHECK-NEXT: "offset": {{[0-9]+}}, 1823 // CHECK-NEXT: "col": 11, 1824 // CHECK-NEXT: "tokLen": 2 1825 // CHECK-NEXT: }, 1826 // CHECK-NEXT: "end": { 1827 // CHECK-NEXT: "offset": {{[0-9]+}}, 1828 // CHECK-NEXT: "col": 11, 1829 // CHECK-NEXT: "tokLen": 2 1830 // CHECK-NEXT: } 1831 // CHECK-NEXT: }, 1832 // CHECK-NEXT: "type": { 1833 // CHECK-NEXT: "qualType": "int" 1834 // CHECK-NEXT: }, 1835 // CHECK-NEXT: "valueCategory": "prvalue", 1836 // CHECK-NEXT: "value": "12" 1837 // CHECK-NEXT: } 1838 // CHECK-NEXT: ] 1839 // CHECK-NEXT: } 1840 // CHECK-NEXT: ] 1841 // CHECK-NEXT: }, 1842 // CHECK-NEXT: { 1843 // CHECK-NEXT: "id": "0x{{.*}}", 1844 // CHECK-NEXT: "kind": "CXXNewExpr", 1845 // CHECK-NEXT: "range": { 1846 // CHECK-NEXT: "begin": { 1847 // CHECK-NEXT: "offset": {{[0-9]+}}, 1848 // CHECK-NEXT: "line": 68, 1849 // CHECK-NEXT: "col": 3, 1850 // CHECK-NEXT: "tokLen": 3 1851 // CHECK-NEXT: }, 1852 // CHECK-NEXT: "end": { 1853 // CHECK-NEXT: "offset": {{[0-9]+}}, 1854 // CHECK-NEXT: "col": 12, 1855 // CHECK-NEXT: "tokLen": 1 1856 // 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: "isArray": true, 1863 // CHECK-NEXT: "operatorNewDecl": { 1864 // CHECK-NEXT: "id": "0x{{.*}}", 1865 // CHECK-NEXT: "kind": "FunctionDecl", 1866 // CHECK-NEXT: "name": "operator new[]", 1867 // CHECK-NEXT: "type": { 1868 // CHECK-NEXT: "qualType": "void *(unsigned long)" 1869 // CHECK-NEXT: } 1870 // CHECK-NEXT: }, 1871 // CHECK-NEXT: "inner": [ 1872 // CHECK-NEXT: { 1873 // CHECK-NEXT: "id": "0x{{.*}}", 1874 // CHECK-NEXT: "kind": "ImplicitCastExpr", 1875 // CHECK-NEXT: "range": { 1876 // CHECK-NEXT: "begin": { 1877 // CHECK-NEXT: "offset": {{[0-9]+}}, 1878 // CHECK-NEXT: "col": 11, 1879 // CHECK-NEXT: "tokLen": 1 1880 // CHECK-NEXT: }, 1881 // CHECK-NEXT: "end": { 1882 // CHECK-NEXT: "offset": {{[0-9]+}}, 1883 // CHECK-NEXT: "col": 11, 1884 // CHECK-NEXT: "tokLen": 1 1885 // CHECK-NEXT: } 1886 // CHECK-NEXT: }, 1887 // CHECK-NEXT: "type": { 1888 // CHECK-NEXT: "qualType": "unsigned long" 1889 // CHECK-NEXT: }, 1890 // CHECK-NEXT: "valueCategory": "prvalue", 1891 // CHECK-NEXT: "castKind": "IntegralCast", 1892 // CHECK-NEXT: "inner": [ 1893 // CHECK-NEXT: { 1894 // CHECK-NEXT: "id": "0x{{.*}}", 1895 // CHECK-NEXT: "kind": "IntegerLiteral", 1896 // CHECK-NEXT: "range": { 1897 // CHECK-NEXT: "begin": { 1898 // CHECK-NEXT: "offset": {{[0-9]+}}, 1899 // CHECK-NEXT: "col": 11, 1900 // CHECK-NEXT: "tokLen": 1 1901 // CHECK-NEXT: }, 1902 // CHECK-NEXT: "end": { 1903 // CHECK-NEXT: "offset": {{[0-9]+}}, 1904 // CHECK-NEXT: "col": 11, 1905 // CHECK-NEXT: "tokLen": 1 1906 // CHECK-NEXT: } 1907 // CHECK-NEXT: }, 1908 // CHECK-NEXT: "type": { 1909 // CHECK-NEXT: "qualType": "int" 1910 // CHECK-NEXT: }, 1911 // CHECK-NEXT: "valueCategory": "prvalue", 1912 // CHECK-NEXT: "value": "2" 1913 // CHECK-NEXT: } 1914 // CHECK-NEXT: ] 1915 // CHECK-NEXT: } 1916 // CHECK-NEXT: ] 1917 // CHECK-NEXT: }, 1918 // CHECK-NEXT: { 1919 // CHECK-NEXT: "id": "0x{{.*}}", 1920 // CHECK-NEXT: "kind": "CXXNewExpr", 1921 // CHECK-NEXT: "range": { 1922 // CHECK-NEXT: "begin": { 1923 // CHECK-NEXT: "offset": {{[0-9]+}}, 1924 // CHECK-NEXT: "line": 69, 1925 // CHECK-NEXT: "col": 3, 1926 // CHECK-NEXT: "tokLen": 3 1927 // CHECK-NEXT: }, 1928 // CHECK-NEXT: "end": { 1929 // CHECK-NEXT: "offset": {{[0-9]+}}, 1930 // CHECK-NEXT: "col": 18, 1931 // CHECK-NEXT: "tokLen": 1 1932 // CHECK-NEXT: } 1933 // CHECK-NEXT: }, 1934 // CHECK-NEXT: "type": { 1935 // CHECK-NEXT: "qualType": "int *" 1936 // CHECK-NEXT: }, 1937 // CHECK-NEXT: "valueCategory": "prvalue", 1938 // CHECK-NEXT: "isArray": true, 1939 // CHECK-NEXT: "initStyle": "list", 1940 // CHECK-NEXT: "operatorNewDecl": { 1941 // CHECK-NEXT: "id": "0x{{.*}}", 1942 // CHECK-NEXT: "kind": "FunctionDecl", 1943 // CHECK-NEXT: "name": "operator new[]", 1944 // CHECK-NEXT: "type": { 1945 // CHECK-NEXT: "qualType": "void *(unsigned long)" 1946 // CHECK-NEXT: } 1947 // CHECK-NEXT: }, 1948 // CHECK-NEXT: "inner": [ 1949 // CHECK-NEXT: { 1950 // CHECK-NEXT: "id": "0x{{.*}}", 1951 // CHECK-NEXT: "kind": "ImplicitCastExpr", 1952 // CHECK-NEXT: "range": { 1953 // CHECK-NEXT: "begin": { 1954 // CHECK-NEXT: "offset": {{[0-9]+}}, 1955 // CHECK-NEXT: "col": 11, 1956 // CHECK-NEXT: "tokLen": 1 1957 // CHECK-NEXT: }, 1958 // CHECK-NEXT: "end": { 1959 // CHECK-NEXT: "offset": {{[0-9]+}}, 1960 // CHECK-NEXT: "col": 11, 1961 // CHECK-NEXT: "tokLen": 1 1962 // CHECK-NEXT: } 1963 // CHECK-NEXT: }, 1964 // CHECK-NEXT: "type": { 1965 // CHECK-NEXT: "qualType": "unsigned long" 1966 // CHECK-NEXT: }, 1967 // CHECK-NEXT: "valueCategory": "prvalue", 1968 // CHECK-NEXT: "castKind": "IntegralCast", 1969 // CHECK-NEXT: "inner": [ 1970 // CHECK-NEXT: { 1971 // CHECK-NEXT: "id": "0x{{.*}}", 1972 // CHECK-NEXT: "kind": "IntegerLiteral", 1973 // CHECK-NEXT: "range": { 1974 // CHECK-NEXT: "begin": { 1975 // CHECK-NEXT: "offset": {{[0-9]+}}, 1976 // CHECK-NEXT: "col": 11, 1977 // CHECK-NEXT: "tokLen": 1 1978 // CHECK-NEXT: }, 1979 // CHECK-NEXT: "end": { 1980 // CHECK-NEXT: "offset": {{[0-9]+}}, 1981 // CHECK-NEXT: "col": 11, 1982 // CHECK-NEXT: "tokLen": 1 1983 // CHECK-NEXT: } 1984 // CHECK-NEXT: }, 1985 // CHECK-NEXT: "type": { 1986 // CHECK-NEXT: "qualType": "int" 1987 // CHECK-NEXT: }, 1988 // CHECK-NEXT: "valueCategory": "prvalue", 1989 // CHECK-NEXT: "value": "2" 1990 // CHECK-NEXT: } 1991 // CHECK-NEXT: ] 1992 // CHECK-NEXT: }, 1993 // CHECK-NEXT: { 1994 // CHECK-NEXT: "id": "0x{{.*}}", 1995 // CHECK-NEXT: "kind": "InitListExpr", 1996 // CHECK-NEXT: "range": { 1997 // CHECK-NEXT: "begin": { 1998 // CHECK-NEXT: "offset": {{[0-9]+}}, 1999 // CHECK-NEXT: "col": 13, 2000 // CHECK-NEXT: "tokLen": 1 2001 // CHECK-NEXT: }, 2002 // CHECK-NEXT: "end": { 2003 // CHECK-NEXT: "offset": {{[0-9]+}}, 2004 // CHECK-NEXT: "col": 18, 2005 // CHECK-NEXT: "tokLen": 1 2006 // CHECK-NEXT: } 2007 // CHECK-NEXT: }, 2008 // CHECK-NEXT: "type": { 2009 // CHECK-NEXT: "qualType": "int[2]" 2010 // CHECK-NEXT: }, 2011 // CHECK-NEXT: "valueCategory": "prvalue", 2012 // CHECK-NEXT: "inner": [ 2013 // CHECK-NEXT: { 2014 // CHECK-NEXT: "id": "0x{{.*}}", 2015 // CHECK-NEXT: "kind": "IntegerLiteral", 2016 // CHECK-NEXT: "range": { 2017 // CHECK-NEXT: "begin": { 2018 // CHECK-NEXT: "offset": {{[0-9]+}}, 2019 // CHECK-NEXT: "col": 14, 2020 // CHECK-NEXT: "tokLen": 1 2021 // CHECK-NEXT: }, 2022 // CHECK-NEXT: "end": { 2023 // CHECK-NEXT: "offset": {{[0-9]+}}, 2024 // CHECK-NEXT: "col": 14, 2025 // CHECK-NEXT: "tokLen": 1 2026 // CHECK-NEXT: } 2027 // CHECK-NEXT: }, 2028 // CHECK-NEXT: "type": { 2029 // CHECK-NEXT: "qualType": "int" 2030 // CHECK-NEXT: }, 2031 // CHECK-NEXT: "valueCategory": "prvalue", 2032 // CHECK-NEXT: "value": "1" 2033 // CHECK-NEXT: }, 2034 // CHECK-NEXT: { 2035 // CHECK-NEXT: "id": "0x{{.*}}", 2036 // CHECK-NEXT: "kind": "IntegerLiteral", 2037 // CHECK-NEXT: "range": { 2038 // CHECK-NEXT: "begin": { 2039 // CHECK-NEXT: "offset": {{[0-9]+}}, 2040 // CHECK-NEXT: "col": 17, 2041 // CHECK-NEXT: "tokLen": 1 2042 // CHECK-NEXT: }, 2043 // CHECK-NEXT: "end": { 2044 // CHECK-NEXT: "offset": {{[0-9]+}}, 2045 // CHECK-NEXT: "col": 17, 2046 // CHECK-NEXT: "tokLen": 1 2047 // CHECK-NEXT: } 2048 // CHECK-NEXT: }, 2049 // CHECK-NEXT: "type": { 2050 // CHECK-NEXT: "qualType": "int" 2051 // CHECK-NEXT: }, 2052 // CHECK-NEXT: "valueCategory": "prvalue", 2053 // CHECK-NEXT: "value": "2" 2054 // CHECK-NEXT: } 2055 // CHECK-NEXT: ] 2056 // CHECK-NEXT: } 2057 // CHECK-NEXT: ] 2058 // CHECK-NEXT: }, 2059 // CHECK-NEXT: { 2060 // CHECK-NEXT: "id": "0x{{.*}}", 2061 // CHECK-NEXT: "kind": "CXXNewExpr", 2062 // CHECK-NEXT: "range": { 2063 // CHECK-NEXT: "begin": { 2064 // CHECK-NEXT: "offset": {{[0-9]+}}, 2065 // CHECK-NEXT: "line": 70, 2066 // CHECK-NEXT: "col": 3, 2067 // CHECK-NEXT: "tokLen": 3 2068 // CHECK-NEXT: }, 2069 // CHECK-NEXT: "end": { 2070 // CHECK-NEXT: "offset": {{[0-9]+}}, 2071 // CHECK-NEXT: "col": 11, 2072 // CHECK-NEXT: "tokLen": 3 2073 // CHECK-NEXT: } 2074 // CHECK-NEXT: }, 2075 // CHECK-NEXT: "type": { 2076 // CHECK-NEXT: "qualType": "int *" 2077 // CHECK-NEXT: }, 2078 // CHECK-NEXT: "valueCategory": "prvalue", 2079 // CHECK-NEXT: "isPlacement": true, 2080 // CHECK-NEXT: "operatorNewDecl": { 2081 // CHECK-NEXT: "id": "0x{{.*}}", 2082 // CHECK-NEXT: "kind": "FunctionDecl", 2083 // CHECK-NEXT: "name": "operator new", 2084 // CHECK-NEXT: "type": { 2085 // CHECK-NEXT: "qualType": "void *(std::size_t, void *)" 2086 // CHECK-NEXT: } 2087 // CHECK-NEXT: }, 2088 // CHECK-NEXT: "inner": [ 2089 // CHECK-NEXT: { 2090 // CHECK-NEXT: "id": "0x{{.*}}", 2091 // CHECK-NEXT: "kind": "ImplicitCastExpr", 2092 // CHECK-NEXT: "range": { 2093 // CHECK-NEXT: "begin": { 2094 // CHECK-NEXT: "offset": {{[0-9]+}}, 2095 // CHECK-NEXT: "col": 8, 2096 // CHECK-NEXT: "tokLen": 1 2097 // CHECK-NEXT: }, 2098 // CHECK-NEXT: "end": { 2099 // CHECK-NEXT: "offset": {{[0-9]+}}, 2100 // CHECK-NEXT: "col": 8, 2101 // CHECK-NEXT: "tokLen": 1 2102 // CHECK-NEXT: } 2103 // CHECK-NEXT: }, 2104 // CHECK-NEXT: "type": { 2105 // CHECK-NEXT: "qualType": "void *" 2106 // CHECK-NEXT: }, 2107 // CHECK-NEXT: "valueCategory": "prvalue", 2108 // CHECK-NEXT: "castKind": "BitCast", 2109 // CHECK-NEXT: "inner": [ 2110 // CHECK-NEXT: { 2111 // CHECK-NEXT: "id": "0x{{.*}}", 2112 // CHECK-NEXT: "kind": "ImplicitCastExpr", 2113 // CHECK-NEXT: "range": { 2114 // CHECK-NEXT: "begin": { 2115 // CHECK-NEXT: "offset": {{[0-9]+}}, 2116 // CHECK-NEXT: "col": 8, 2117 // CHECK-NEXT: "tokLen": 1 2118 // CHECK-NEXT: }, 2119 // CHECK-NEXT: "end": { 2120 // CHECK-NEXT: "offset": {{[0-9]+}}, 2121 // CHECK-NEXT: "col": 8, 2122 // CHECK-NEXT: "tokLen": 1 2123 // CHECK-NEXT: } 2124 // CHECK-NEXT: }, 2125 // CHECK-NEXT: "type": { 2126 // CHECK-NEXT: "qualType": "int *" 2127 // CHECK-NEXT: }, 2128 // CHECK-NEXT: "valueCategory": "prvalue", 2129 // CHECK-NEXT: "castKind": "LValueToRValue", 2130 // CHECK-NEXT: "inner": [ 2131 // CHECK-NEXT: { 2132 // CHECK-NEXT: "id": "0x{{.*}}", 2133 // CHECK-NEXT: "kind": "DeclRefExpr", 2134 // CHECK-NEXT: "range": { 2135 // CHECK-NEXT: "begin": { 2136 // CHECK-NEXT: "offset": {{[0-9]+}}, 2137 // CHECK-NEXT: "col": 8, 2138 // CHECK-NEXT: "tokLen": 1 2139 // CHECK-NEXT: }, 2140 // CHECK-NEXT: "end": { 2141 // CHECK-NEXT: "offset": {{[0-9]+}}, 2142 // CHECK-NEXT: "col": 8, 2143 // CHECK-NEXT: "tokLen": 1 2144 // CHECK-NEXT: } 2145 // CHECK-NEXT: }, 2146 // CHECK-NEXT: "type": { 2147 // CHECK-NEXT: "qualType": "int *" 2148 // CHECK-NEXT: }, 2149 // CHECK-NEXT: "valueCategory": "lvalue", 2150 // CHECK-NEXT: "referencedDecl": { 2151 // CHECK-NEXT: "id": "0x{{.*}}", 2152 // CHECK-NEXT: "kind": "ParmVarDecl", 2153 // CHECK-NEXT: "name": "p", 2154 // CHECK-NEXT: "type": { 2155 // CHECK-NEXT: "qualType": "int *" 2156 // CHECK-NEXT: } 2157 // CHECK-NEXT: } 2158 // CHECK-NEXT: } 2159 // CHECK-NEXT: ] 2160 // CHECK-NEXT: } 2161 // CHECK-NEXT: ] 2162 // CHECK-NEXT: } 2163 // CHECK-NEXT: ] 2164 // CHECK-NEXT: }, 2165 // CHECK-NEXT: { 2166 // CHECK-NEXT: "id": "0x{{.*}}", 2167 // CHECK-NEXT: "kind": "CXXNewExpr", 2168 // CHECK-NEXT: "range": { 2169 // CHECK-NEXT: "begin": { 2170 // CHECK-NEXT: "offset": {{[0-9]+}}, 2171 // CHECK-NEXT: "line": 71, 2172 // CHECK-NEXT: "col": 3, 2173 // CHECK-NEXT: "tokLen": 3 2174 // CHECK-NEXT: }, 2175 // CHECK-NEXT: "end": { 2176 // CHECK-NEXT: "offset": {{[0-9]+}}, 2177 // CHECK-NEXT: "col": 17, 2178 // CHECK-NEXT: "tokLen": 1 2179 // CHECK-NEXT: } 2180 // CHECK-NEXT: }, 2181 // CHECK-NEXT: "type": { 2182 // CHECK-NEXT: "qualType": "int *" 2183 // CHECK-NEXT: }, 2184 // CHECK-NEXT: "valueCategory": "prvalue", 2185 // CHECK-NEXT: "isPlacement": true, 2186 // CHECK-NEXT: "initStyle": "list", 2187 // CHECK-NEXT: "operatorNewDecl": { 2188 // CHECK-NEXT: "id": "0x{{.*}}", 2189 // CHECK-NEXT: "kind": "FunctionDecl", 2190 // CHECK-NEXT: "name": "operator new", 2191 // CHECK-NEXT: "type": { 2192 // CHECK-NEXT: "qualType": "void *(std::size_t, void *)" 2193 // CHECK-NEXT: } 2194 // CHECK-NEXT: }, 2195 // CHECK-NEXT: "inner": [ 2196 // CHECK-NEXT: { 2197 // CHECK-NEXT: "id": "0x{{.*}}", 2198 // CHECK-NEXT: "kind": "InitListExpr", 2199 // CHECK-NEXT: "range": { 2200 // CHECK-NEXT: "begin": { 2201 // CHECK-NEXT: "offset": {{[0-9]+}}, 2202 // CHECK-NEXT: "col": 14, 2203 // CHECK-NEXT: "tokLen": 1 2204 // CHECK-NEXT: }, 2205 // CHECK-NEXT: "end": { 2206 // CHECK-NEXT: "offset": {{[0-9]+}}, 2207 // CHECK-NEXT: "col": 17, 2208 // CHECK-NEXT: "tokLen": 1 2209 // CHECK-NEXT: } 2210 // CHECK-NEXT: }, 2211 // CHECK-NEXT: "type": { 2212 // CHECK-NEXT: "qualType": "int" 2213 // CHECK-NEXT: }, 2214 // CHECK-NEXT: "valueCategory": "prvalue", 2215 // CHECK-NEXT: "inner": [ 2216 // CHECK-NEXT: { 2217 // CHECK-NEXT: "id": "0x{{.*}}", 2218 // CHECK-NEXT: "kind": "IntegerLiteral", 2219 // CHECK-NEXT: "range": { 2220 // CHECK-NEXT: "begin": { 2221 // CHECK-NEXT: "offset": {{[0-9]+}}, 2222 // CHECK-NEXT: "col": 15, 2223 // CHECK-NEXT: "tokLen": 2 2224 // CHECK-NEXT: }, 2225 // CHECK-NEXT: "end": { 2226 // CHECK-NEXT: "offset": {{[0-9]+}}, 2227 // CHECK-NEXT: "col": 15, 2228 // CHECK-NEXT: "tokLen": 2 2229 // CHECK-NEXT: } 2230 // CHECK-NEXT: }, 2231 // CHECK-NEXT: "type": { 2232 // CHECK-NEXT: "qualType": "int" 2233 // CHECK-NEXT: }, 2234 // CHECK-NEXT: "valueCategory": "prvalue", 2235 // CHECK-NEXT: "value": "12" 2236 // CHECK-NEXT: } 2237 // CHECK-NEXT: ] 2238 // CHECK-NEXT: }, 2239 // CHECK-NEXT: { 2240 // CHECK-NEXT: "id": "0x{{.*}}", 2241 // CHECK-NEXT: "kind": "ImplicitCastExpr", 2242 // CHECK-NEXT: "range": { 2243 // CHECK-NEXT: "begin": { 2244 // CHECK-NEXT: "offset": {{[0-9]+}}, 2245 // CHECK-NEXT: "col": 8, 2246 // CHECK-NEXT: "tokLen": 1 2247 // CHECK-NEXT: }, 2248 // CHECK-NEXT: "end": { 2249 // CHECK-NEXT: "offset": {{[0-9]+}}, 2250 // CHECK-NEXT: "col": 8, 2251 // CHECK-NEXT: "tokLen": 1 2252 // CHECK-NEXT: } 2253 // CHECK-NEXT: }, 2254 // CHECK-NEXT: "type": { 2255 // CHECK-NEXT: "qualType": "void *" 2256 // CHECK-NEXT: }, 2257 // CHECK-NEXT: "valueCategory": "prvalue", 2258 // CHECK-NEXT: "castKind": "BitCast", 2259 // CHECK-NEXT: "inner": [ 2260 // CHECK-NEXT: { 2261 // CHECK-NEXT: "id": "0x{{.*}}", 2262 // CHECK-NEXT: "kind": "ImplicitCastExpr", 2263 // CHECK-NEXT: "range": { 2264 // CHECK-NEXT: "begin": { 2265 // CHECK-NEXT: "offset": {{[0-9]+}}, 2266 // CHECK-NEXT: "col": 8, 2267 // CHECK-NEXT: "tokLen": 1 2268 // CHECK-NEXT: }, 2269 // CHECK-NEXT: "end": { 2270 // CHECK-NEXT: "offset": {{[0-9]+}}, 2271 // CHECK-NEXT: "col": 8, 2272 // CHECK-NEXT: "tokLen": 1 2273 // CHECK-NEXT: } 2274 // CHECK-NEXT: }, 2275 // CHECK-NEXT: "type": { 2276 // CHECK-NEXT: "qualType": "int *" 2277 // CHECK-NEXT: }, 2278 // CHECK-NEXT: "valueCategory": "prvalue", 2279 // CHECK-NEXT: "castKind": "LValueToRValue", 2280 // CHECK-NEXT: "inner": [ 2281 // CHECK-NEXT: { 2282 // CHECK-NEXT: "id": "0x{{.*}}", 2283 // CHECK-NEXT: "kind": "DeclRefExpr", 2284 // CHECK-NEXT: "range": { 2285 // CHECK-NEXT: "begin": { 2286 // CHECK-NEXT: "offset": {{[0-9]+}}, 2287 // CHECK-NEXT: "col": 8, 2288 // CHECK-NEXT: "tokLen": 1 2289 // CHECK-NEXT: }, 2290 // CHECK-NEXT: "end": { 2291 // CHECK-NEXT: "offset": {{[0-9]+}}, 2292 // CHECK-NEXT: "col": 8, 2293 // CHECK-NEXT: "tokLen": 1 2294 // CHECK-NEXT: } 2295 // CHECK-NEXT: }, 2296 // CHECK-NEXT: "type": { 2297 // CHECK-NEXT: "qualType": "int *" 2298 // CHECK-NEXT: }, 2299 // CHECK-NEXT: "valueCategory": "lvalue", 2300 // CHECK-NEXT: "referencedDecl": { 2301 // CHECK-NEXT: "id": "0x{{.*}}", 2302 // CHECK-NEXT: "kind": "ParmVarDecl", 2303 // CHECK-NEXT: "name": "p", 2304 // CHECK-NEXT: "type": { 2305 // CHECK-NEXT: "qualType": "int *" 2306 // CHECK-NEXT: } 2307 // CHECK-NEXT: } 2308 // CHECK-NEXT: } 2309 // CHECK-NEXT: ] 2310 // CHECK-NEXT: } 2311 // CHECK-NEXT: ] 2312 // CHECK-NEXT: } 2313 // CHECK-NEXT: ] 2314 // CHECK-NEXT: }, 2315 // CHECK-NEXT: { 2316 // CHECK-NEXT: "id": "0x{{.*}}", 2317 // CHECK-NEXT: "kind": "CXXDeleteExpr", 2318 // CHECK-NEXT: "range": { 2319 // CHECK-NEXT: "begin": { 2320 // CHECK-NEXT: "offset": {{[0-9]+}}, 2321 // CHECK-NEXT: "line": 73, 2322 // CHECK-NEXT: "col": 3, 2323 // CHECK-NEXT: "tokLen": 2 2324 // CHECK-NEXT: }, 2325 // CHECK-NEXT: "end": { 2326 // CHECK-NEXT: "offset": {{[0-9]+}}, 2327 // CHECK-NEXT: "col": 12, 2328 // CHECK-NEXT: "tokLen": 1 2329 // CHECK-NEXT: } 2330 // CHECK-NEXT: }, 2331 // CHECK-NEXT: "type": { 2332 // CHECK-NEXT: "qualType": "void" 2333 // CHECK-NEXT: }, 2334 // CHECK-NEXT: "valueCategory": "prvalue", 2335 // CHECK-NEXT: "isGlobal": true, 2336 // CHECK-NEXT: "operatorDeleteDecl": { 2337 // CHECK-NEXT: "id": "0x{{.*}}", 2338 // CHECK-NEXT: "kind": "FunctionDecl", 2339 // CHECK-NEXT: "name": "operator delete", 2340 // CHECK-NEXT: "type": { 2341 // CHECK-NEXT: "qualType": "void (void *) noexcept" 2342 // CHECK-NEXT: } 2343 // CHECK-NEXT: }, 2344 // CHECK-NEXT: "inner": [ 2345 // CHECK-NEXT: { 2346 // CHECK-NEXT: "id": "0x{{.*}}", 2347 // CHECK-NEXT: "kind": "ImplicitCastExpr", 2348 // CHECK-NEXT: "range": { 2349 // CHECK-NEXT: "begin": { 2350 // CHECK-NEXT: "offset": {{[0-9]+}}, 2351 // CHECK-NEXT: "col": 12, 2352 // CHECK-NEXT: "tokLen": 1 2353 // CHECK-NEXT: }, 2354 // CHECK-NEXT: "end": { 2355 // CHECK-NEXT: "offset": {{[0-9]+}}, 2356 // CHECK-NEXT: "col": 12, 2357 // CHECK-NEXT: "tokLen": 1 2358 // CHECK-NEXT: } 2359 // CHECK-NEXT: }, 2360 // CHECK-NEXT: "type": { 2361 // CHECK-NEXT: "qualType": "int *" 2362 // CHECK-NEXT: }, 2363 // CHECK-NEXT: "valueCategory": "prvalue", 2364 // CHECK-NEXT: "castKind": "LValueToRValue", 2365 // CHECK-NEXT: "inner": [ 2366 // CHECK-NEXT: { 2367 // CHECK-NEXT: "id": "0x{{.*}}", 2368 // CHECK-NEXT: "kind": "DeclRefExpr", 2369 // CHECK-NEXT: "range": { 2370 // CHECK-NEXT: "begin": { 2371 // CHECK-NEXT: "offset": {{[0-9]+}}, 2372 // CHECK-NEXT: "col": 12, 2373 // CHECK-NEXT: "tokLen": 1 2374 // CHECK-NEXT: }, 2375 // CHECK-NEXT: "end": { 2376 // CHECK-NEXT: "offset": {{[0-9]+}}, 2377 // CHECK-NEXT: "col": 12, 2378 // CHECK-NEXT: "tokLen": 1 2379 // CHECK-NEXT: } 2380 // CHECK-NEXT: }, 2381 // CHECK-NEXT: "type": { 2382 // CHECK-NEXT: "qualType": "int *" 2383 // CHECK-NEXT: }, 2384 // CHECK-NEXT: "valueCategory": "lvalue", 2385 // CHECK-NEXT: "referencedDecl": { 2386 // CHECK-NEXT: "id": "0x{{.*}}", 2387 // CHECK-NEXT: "kind": "ParmVarDecl", 2388 // CHECK-NEXT: "name": "p", 2389 // CHECK-NEXT: "type": { 2390 // CHECK-NEXT: "qualType": "int *" 2391 // CHECK-NEXT: } 2392 // CHECK-NEXT: } 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": "CXXDeleteExpr", 2401 // CHECK-NEXT: "range": { 2402 // CHECK-NEXT: "begin": { 2403 // CHECK-NEXT: "offset": {{[0-9]+}}, 2404 // CHECK-NEXT: "line": 74, 2405 // CHECK-NEXT: "col": 3, 2406 // CHECK-NEXT: "tokLen": 6 2407 // CHECK-NEXT: }, 2408 // CHECK-NEXT: "end": { 2409 // CHECK-NEXT: "offset": {{[0-9]+}}, 2410 // CHECK-NEXT: "col": 13, 2411 // CHECK-NEXT: "tokLen": 1 2412 // CHECK-NEXT: } 2413 // CHECK-NEXT: }, 2414 // CHECK-NEXT: "type": { 2415 // CHECK-NEXT: "qualType": "void" 2416 // CHECK-NEXT: }, 2417 // CHECK-NEXT: "valueCategory": "prvalue", 2418 // CHECK-NEXT: "isArray": true, 2419 // CHECK-NEXT: "isArrayAsWritten": true, 2420 // CHECK-NEXT: "operatorDeleteDecl": { 2421 // CHECK-NEXT: "id": "0x{{.*}}", 2422 // CHECK-NEXT: "kind": "FunctionDecl", 2423 // CHECK-NEXT: "name": "operator delete[]", 2424 // CHECK-NEXT: "type": { 2425 // CHECK-NEXT: "qualType": "void (void *) noexcept" 2426 // CHECK-NEXT: } 2427 // CHECK-NEXT: }, 2428 // CHECK-NEXT: "inner": [ 2429 // CHECK-NEXT: { 2430 // CHECK-NEXT: "id": "0x{{.*}}", 2431 // CHECK-NEXT: "kind": "ImplicitCastExpr", 2432 // CHECK-NEXT: "range": { 2433 // CHECK-NEXT: "begin": { 2434 // CHECK-NEXT: "offset": {{[0-9]+}}, 2435 // CHECK-NEXT: "col": 13, 2436 // CHECK-NEXT: "tokLen": 1 2437 // CHECK-NEXT: }, 2438 // CHECK-NEXT: "end": { 2439 // CHECK-NEXT: "offset": {{[0-9]+}}, 2440 // CHECK-NEXT: "col": 13, 2441 // CHECK-NEXT: "tokLen": 1 2442 // CHECK-NEXT: } 2443 // CHECK-NEXT: }, 2444 // CHECK-NEXT: "type": { 2445 // CHECK-NEXT: "qualType": "int *" 2446 // CHECK-NEXT: }, 2447 // CHECK-NEXT: "valueCategory": "prvalue", 2448 // CHECK-NEXT: "castKind": "LValueToRValue", 2449 // CHECK-NEXT: "inner": [ 2450 // CHECK-NEXT: { 2451 // CHECK-NEXT: "id": "0x{{.*}}", 2452 // CHECK-NEXT: "kind": "DeclRefExpr", 2453 // CHECK-NEXT: "range": { 2454 // CHECK-NEXT: "begin": { 2455 // CHECK-NEXT: "offset": {{[0-9]+}}, 2456 // CHECK-NEXT: "col": 13, 2457 // CHECK-NEXT: "tokLen": 1 2458 // CHECK-NEXT: }, 2459 // CHECK-NEXT: "end": { 2460 // CHECK-NEXT: "offset": {{[0-9]+}}, 2461 // CHECK-NEXT: "col": 13, 2462 // CHECK-NEXT: "tokLen": 1 2463 // CHECK-NEXT: } 2464 // CHECK-NEXT: }, 2465 // CHECK-NEXT: "type": { 2466 // CHECK-NEXT: "qualType": "int *" 2467 // CHECK-NEXT: }, 2468 // CHECK-NEXT: "valueCategory": "lvalue", 2469 // CHECK-NEXT: "referencedDecl": { 2470 // CHECK-NEXT: "id": "0x{{.*}}", 2471 // CHECK-NEXT: "kind": "ParmVarDecl", 2472 // CHECK-NEXT: "name": "p", 2473 // CHECK-NEXT: "type": { 2474 // CHECK-NEXT: "qualType": "int *" 2475 // CHECK-NEXT: } 2476 // CHECK-NEXT: } 2477 // CHECK-NEXT: } 2478 // CHECK-NEXT: ] 2479 // CHECK-NEXT: } 2480 // CHECK-NEXT: ] 2481 // CHECK-NEXT: } 2482 // CHECK-NEXT: ] 2483 // CHECK-NEXT: } 2484 // CHECK-NEXT: ] 2485 // CHECK-NEXT: } 2486 // CHECK-NEXT: ] 2487 // CHECK-NEXT: } 2488 2489 2490 // CHECK-NOT: {{^}}Dumping 2491 // CHECK: "kind": "FunctionDecl", 2492 // CHECK-NEXT: "loc": { 2493 // CHECK-NEXT: "offset": {{[0-9]+}}, 2494 // CHECK-NEXT: "file": "{{.*}}", 2495 // CHECK-NEXT: "line": 77, 2496 // CHECK-NEXT: "col": 6, 2497 // CHECK-NEXT: "tokLen": 22 2498 // CHECK-NEXT: }, 2499 // CHECK-NEXT: "range": { 2500 // CHECK-NEXT: "begin": { 2501 // CHECK-NEXT: "offset": {{[0-9]+}}, 2502 // CHECK-NEXT: "col": 1, 2503 // CHECK-NEXT: "tokLen": 4 2504 // CHECK-NEXT: }, 2505 // CHECK-NEXT: "end": { 2506 // CHECK-NEXT: "offset": {{[0-9]+}}, 2507 // CHECK-NEXT: "line": 90, 2508 // CHECK-NEXT: "col": 1, 2509 // CHECK-NEXT: "tokLen": 1 2510 // CHECK-NEXT: } 2511 // CHECK-NEXT: }, 2512 // CHECK-NEXT: "name": "TestPostfixExpressions", 2513 // CHECK-NEXT: "mangledName": "_Z22TestPostfixExpressions1SPS_P1UIiE", 2514 // CHECK-NEXT: "type": { 2515 // CHECK-NEXT: "qualType": "void (S, S *, U<int> *)" 2516 // CHECK-NEXT: }, 2517 // CHECK-NEXT: "inner": [ 2518 // CHECK-NEXT: { 2519 // CHECK-NEXT: "id": "0x{{.*}}", 2520 // CHECK-NEXT: "kind": "ParmVarDecl", 2521 // CHECK-NEXT: "loc": { 2522 // CHECK-NEXT: "offset": {{[0-9]+}}, 2523 // CHECK-NEXT: "line": 77, 2524 // CHECK-NEXT: "col": 31, 2525 // CHECK-NEXT: "tokLen": 1 2526 // CHECK-NEXT: }, 2527 // CHECK-NEXT: "range": { 2528 // CHECK-NEXT: "begin": { 2529 // CHECK-NEXT: "offset": {{[0-9]+}}, 2530 // CHECK-NEXT: "col": 29, 2531 // CHECK-NEXT: "tokLen": 1 2532 // CHECK-NEXT: }, 2533 // CHECK-NEXT: "end": { 2534 // CHECK-NEXT: "offset": {{[0-9]+}}, 2535 // CHECK-NEXT: "col": 31, 2536 // CHECK-NEXT: "tokLen": 1 2537 // CHECK-NEXT: } 2538 // CHECK-NEXT: }, 2539 // CHECK-NEXT: "isUsed": true, 2540 // CHECK-NEXT: "name": "a", 2541 // CHECK-NEXT: "type": { 2542 // CHECK-NEXT: "desugaredQualType": "S", 2543 // CHECK-NEXT: "qualType": "S" 2544 // CHECK-NEXT: } 2545 // CHECK-NEXT: }, 2546 // CHECK-NEXT: { 2547 // CHECK-NEXT: "id": "0x{{.*}}", 2548 // CHECK-NEXT: "kind": "ParmVarDecl", 2549 // CHECK-NEXT: "loc": { 2550 // CHECK-NEXT: "offset": {{[0-9]+}}, 2551 // CHECK-NEXT: "col": 37, 2552 // CHECK-NEXT: "tokLen": 1 2553 // CHECK-NEXT: }, 2554 // CHECK-NEXT: "range": { 2555 // CHECK-NEXT: "begin": { 2556 // CHECK-NEXT: "offset": {{[0-9]+}}, 2557 // CHECK-NEXT: "col": 34, 2558 // CHECK-NEXT: "tokLen": 1 2559 // CHECK-NEXT: }, 2560 // CHECK-NEXT: "end": { 2561 // CHECK-NEXT: "offset": {{[0-9]+}}, 2562 // CHECK-NEXT: "col": 37, 2563 // CHECK-NEXT: "tokLen": 1 2564 // CHECK-NEXT: } 2565 // CHECK-NEXT: }, 2566 // CHECK-NEXT: "isUsed": true, 2567 // CHECK-NEXT: "name": "p", 2568 // CHECK-NEXT: "type": { 2569 // CHECK-NEXT: "qualType": "S *" 2570 // CHECK-NEXT: } 2571 // CHECK-NEXT: }, 2572 // CHECK-NEXT: { 2573 // CHECK-NEXT: "id": "0x{{.*}}", 2574 // CHECK-NEXT: "kind": "ParmVarDecl", 2575 // CHECK-NEXT: "loc": { 2576 // CHECK-NEXT: "offset": {{[0-9]+}}, 2577 // CHECK-NEXT: "col": 48, 2578 // CHECK-NEXT: "tokLen": 1 2579 // CHECK-NEXT: }, 2580 // CHECK-NEXT: "range": { 2581 // CHECK-NEXT: "begin": { 2582 // CHECK-NEXT: "offset": {{[0-9]+}}, 2583 // CHECK-NEXT: "col": 40, 2584 // CHECK-NEXT: "tokLen": 1 2585 // CHECK-NEXT: }, 2586 // CHECK-NEXT: "end": { 2587 // CHECK-NEXT: "offset": {{[0-9]+}}, 2588 // CHECK-NEXT: "col": 48, 2589 // CHECK-NEXT: "tokLen": 1 2590 // CHECK-NEXT: } 2591 // CHECK-NEXT: }, 2592 // CHECK-NEXT: "isUsed": true, 2593 // CHECK-NEXT: "name": "r", 2594 // CHECK-NEXT: "type": { 2595 // CHECK-NEXT: "qualType": "U<int> *" 2596 // CHECK-NEXT: } 2597 // CHECK-NEXT: }, 2598 // CHECK-NEXT: { 2599 // CHECK-NEXT: "id": "0x{{.*}}", 2600 // CHECK-NEXT: "kind": "CompoundStmt", 2601 // CHECK-NEXT: "range": { 2602 // CHECK-NEXT: "begin": { 2603 // CHECK-NEXT: "offset": {{[0-9]+}}, 2604 // CHECK-NEXT: "col": 51, 2605 // CHECK-NEXT: "tokLen": 1 2606 // CHECK-NEXT: }, 2607 // CHECK-NEXT: "end": { 2608 // CHECK-NEXT: "offset": {{[0-9]+}}, 2609 // CHECK-NEXT: "line": 90, 2610 // CHECK-NEXT: "col": 1, 2611 // CHECK-NEXT: "tokLen": 1 2612 // CHECK-NEXT: } 2613 // CHECK-NEXT: }, 2614 // CHECK-NEXT: "inner": [ 2615 // CHECK-NEXT: { 2616 // CHECK-NEXT: "id": "0x{{.*}}", 2617 // CHECK-NEXT: "kind": "CXXMemberCallExpr", 2618 // CHECK-NEXT: "range": { 2619 // CHECK-NEXT: "begin": { 2620 // CHECK-NEXT: "offset": {{[0-9]+}}, 2621 // CHECK-NEXT: "line": 78, 2622 // CHECK-NEXT: "col": 3, 2623 // CHECK-NEXT: "tokLen": 1 2624 // CHECK-NEXT: }, 2625 // CHECK-NEXT: "end": { 2626 // CHECK-NEXT: "offset": {{[0-9]+}}, 2627 // CHECK-NEXT: "col": 11, 2628 // CHECK-NEXT: "tokLen": 1 2629 // CHECK-NEXT: } 2630 // CHECK-NEXT: }, 2631 // CHECK-NEXT: "type": { 2632 // CHECK-NEXT: "qualType": "void" 2633 // CHECK-NEXT: }, 2634 // CHECK-NEXT: "valueCategory": "prvalue", 2635 // CHECK-NEXT: "inner": [ 2636 // CHECK-NEXT: { 2637 // CHECK-NEXT: "id": "0x{{.*}}", 2638 // CHECK-NEXT: "kind": "MemberExpr", 2639 // CHECK-NEXT: "range": { 2640 // CHECK-NEXT: "begin": { 2641 // CHECK-NEXT: "offset": {{[0-9]+}}, 2642 // CHECK-NEXT: "col": 3, 2643 // CHECK-NEXT: "tokLen": 1 2644 // CHECK-NEXT: }, 2645 // CHECK-NEXT: "end": { 2646 // CHECK-NEXT: "offset": {{[0-9]+}}, 2647 // CHECK-NEXT: "col": 5, 2648 // CHECK-NEXT: "tokLen": 4 2649 // CHECK-NEXT: } 2650 // CHECK-NEXT: }, 2651 // CHECK-NEXT: "type": { 2652 // CHECK-NEXT: "qualType": "<bound member function type>" 2653 // CHECK-NEXT: }, 2654 // CHECK-NEXT: "valueCategory": "prvalue", 2655 // CHECK-NEXT: "name": "func", 2656 // CHECK-NEXT: "isArrow": false, 2657 // CHECK-NEXT: "referencedMemberDecl": "0x{{.*}}", 2658 // CHECK-NEXT: "inner": [ 2659 // CHECK-NEXT: { 2660 // CHECK-NEXT: "id": "0x{{.*}}", 2661 // CHECK-NEXT: "kind": "DeclRefExpr", 2662 // CHECK-NEXT: "range": { 2663 // CHECK-NEXT: "begin": { 2664 // CHECK-NEXT: "offset": {{[0-9]+}}, 2665 // CHECK-NEXT: "col": 3, 2666 // CHECK-NEXT: "tokLen": 1 2667 // CHECK-NEXT: }, 2668 // CHECK-NEXT: "end": { 2669 // CHECK-NEXT: "offset": {{[0-9]+}}, 2670 // CHECK-NEXT: "col": 3, 2671 // CHECK-NEXT: "tokLen": 1 2672 // CHECK-NEXT: } 2673 // CHECK-NEXT: }, 2674 // CHECK-NEXT: "type": { 2675 // CHECK-NEXT: "desugaredQualType": "S", 2676 // CHECK-NEXT: "qualType": "S" 2677 // CHECK-NEXT: }, 2678 // CHECK-NEXT: "valueCategory": "lvalue", 2679 // CHECK-NEXT: "referencedDecl": { 2680 // CHECK-NEXT: "id": "0x{{.*}}", 2681 // CHECK-NEXT: "kind": "ParmVarDecl", 2682 // CHECK-NEXT: "name": "a", 2683 // CHECK-NEXT: "type": { 2684 // CHECK-NEXT: "desugaredQualType": "S", 2685 // CHECK-NEXT: "qualType": "S" 2686 // CHECK-NEXT: } 2687 // CHECK-NEXT: } 2688 // CHECK-NEXT: } 2689 // CHECK-NEXT: ] 2690 // CHECK-NEXT: }, 2691 // CHECK-NEXT: { 2692 // CHECK-NEXT: "id": "0x{{.*}}", 2693 // CHECK-NEXT: "kind": "IntegerLiteral", 2694 // CHECK-NEXT: "range": { 2695 // CHECK-NEXT: "begin": { 2696 // CHECK-NEXT: "offset": {{[0-9]+}}, 2697 // CHECK-NEXT: "col": 10, 2698 // CHECK-NEXT: "tokLen": 1 2699 // CHECK-NEXT: }, 2700 // CHECK-NEXT: "end": { 2701 // CHECK-NEXT: "offset": {{[0-9]+}}, 2702 // CHECK-NEXT: "col": 10, 2703 // CHECK-NEXT: "tokLen": 1 2704 // CHECK-NEXT: } 2705 // CHECK-NEXT: }, 2706 // CHECK-NEXT: "type": { 2707 // CHECK-NEXT: "qualType": "int" 2708 // CHECK-NEXT: }, 2709 // CHECK-NEXT: "valueCategory": "prvalue", 2710 // CHECK-NEXT: "value": "0" 2711 // CHECK-NEXT: } 2712 // CHECK-NEXT: ] 2713 // CHECK-NEXT: }, 2714 // CHECK-NEXT: { 2715 // CHECK-NEXT: "id": "0x{{.*}}", 2716 // CHECK-NEXT: "kind": "CXXMemberCallExpr", 2717 // CHECK-NEXT: "range": { 2718 // CHECK-NEXT: "begin": { 2719 // CHECK-NEXT: "offset": {{[0-9]+}}, 2720 // CHECK-NEXT: "line": 79, 2721 // CHECK-NEXT: "col": 3, 2722 // CHECK-NEXT: "tokLen": 1 2723 // CHECK-NEXT: }, 2724 // CHECK-NEXT: "end": { 2725 // CHECK-NEXT: "offset": {{[0-9]+}}, 2726 // CHECK-NEXT: "col": 12, 2727 // CHECK-NEXT: "tokLen": 1 2728 // CHECK-NEXT: } 2729 // CHECK-NEXT: }, 2730 // CHECK-NEXT: "type": { 2731 // CHECK-NEXT: "qualType": "void" 2732 // CHECK-NEXT: }, 2733 // CHECK-NEXT: "valueCategory": "prvalue", 2734 // CHECK-NEXT: "inner": [ 2735 // CHECK-NEXT: { 2736 // CHECK-NEXT: "id": "0x{{.*}}", 2737 // CHECK-NEXT: "kind": "MemberExpr", 2738 // CHECK-NEXT: "range": { 2739 // CHECK-NEXT: "begin": { 2740 // CHECK-NEXT: "offset": {{[0-9]+}}, 2741 // CHECK-NEXT: "col": 3, 2742 // CHECK-NEXT: "tokLen": 1 2743 // CHECK-NEXT: }, 2744 // CHECK-NEXT: "end": { 2745 // CHECK-NEXT: "offset": {{[0-9]+}}, 2746 // CHECK-NEXT: "col": 6, 2747 // CHECK-NEXT: "tokLen": 4 2748 // CHECK-NEXT: } 2749 // CHECK-NEXT: }, 2750 // CHECK-NEXT: "type": { 2751 // CHECK-NEXT: "qualType": "<bound member function type>" 2752 // CHECK-NEXT: }, 2753 // CHECK-NEXT: "valueCategory": "prvalue", 2754 // CHECK-NEXT: "name": "func", 2755 // CHECK-NEXT: "isArrow": true, 2756 // CHECK-NEXT: "referencedMemberDecl": "0x{{.*}}", 2757 // CHECK-NEXT: "inner": [ 2758 // CHECK-NEXT: { 2759 // CHECK-NEXT: "id": "0x{{.*}}", 2760 // CHECK-NEXT: "kind": "ImplicitCastExpr", 2761 // CHECK-NEXT: "range": { 2762 // CHECK-NEXT: "begin": { 2763 // CHECK-NEXT: "offset": {{[0-9]+}}, 2764 // CHECK-NEXT: "col": 3, 2765 // CHECK-NEXT: "tokLen": 1 2766 // CHECK-NEXT: }, 2767 // CHECK-NEXT: "end": { 2768 // CHECK-NEXT: "offset": {{[0-9]+}}, 2769 // CHECK-NEXT: "col": 3, 2770 // CHECK-NEXT: "tokLen": 1 2771 // CHECK-NEXT: } 2772 // CHECK-NEXT: }, 2773 // CHECK-NEXT: "type": { 2774 // CHECK-NEXT: "qualType": "S *" 2775 // CHECK-NEXT: }, 2776 // CHECK-NEXT: "valueCategory": "prvalue", 2777 // CHECK-NEXT: "castKind": "LValueToRValue", 2778 // CHECK-NEXT: "inner": [ 2779 // CHECK-NEXT: { 2780 // CHECK-NEXT: "id": "0x{{.*}}", 2781 // CHECK-NEXT: "kind": "DeclRefExpr", 2782 // CHECK-NEXT: "range": { 2783 // CHECK-NEXT: "begin": { 2784 // CHECK-NEXT: "offset": {{[0-9]+}}, 2785 // CHECK-NEXT: "col": 3, 2786 // CHECK-NEXT: "tokLen": 1 2787 // CHECK-NEXT: }, 2788 // CHECK-NEXT: "end": { 2789 // CHECK-NEXT: "offset": {{[0-9]+}}, 2790 // CHECK-NEXT: "col": 3, 2791 // CHECK-NEXT: "tokLen": 1 2792 // CHECK-NEXT: } 2793 // CHECK-NEXT: }, 2794 // CHECK-NEXT: "type": { 2795 // CHECK-NEXT: "qualType": "S *" 2796 // CHECK-NEXT: }, 2797 // CHECK-NEXT: "valueCategory": "lvalue", 2798 // CHECK-NEXT: "referencedDecl": { 2799 // CHECK-NEXT: "id": "0x{{.*}}", 2800 // CHECK-NEXT: "kind": "ParmVarDecl", 2801 // CHECK-NEXT: "name": "p", 2802 // CHECK-NEXT: "type": { 2803 // CHECK-NEXT: "qualType": "S *" 2804 // CHECK-NEXT: } 2805 // CHECK-NEXT: } 2806 // CHECK-NEXT: } 2807 // CHECK-NEXT: ] 2808 // CHECK-NEXT: } 2809 // CHECK-NEXT: ] 2810 // CHECK-NEXT: }, 2811 // CHECK-NEXT: { 2812 // CHECK-NEXT: "id": "0x{{.*}}", 2813 // CHECK-NEXT: "kind": "IntegerLiteral", 2814 // CHECK-NEXT: "range": { 2815 // CHECK-NEXT: "begin": { 2816 // CHECK-NEXT: "offset": {{[0-9]+}}, 2817 // CHECK-NEXT: "col": 11, 2818 // CHECK-NEXT: "tokLen": 1 2819 // CHECK-NEXT: }, 2820 // CHECK-NEXT: "end": { 2821 // CHECK-NEXT: "offset": {{[0-9]+}}, 2822 // CHECK-NEXT: "col": 11, 2823 // CHECK-NEXT: "tokLen": 1 2824 // CHECK-NEXT: } 2825 // CHECK-NEXT: }, 2826 // CHECK-NEXT: "type": { 2827 // CHECK-NEXT: "qualType": "int" 2828 // CHECK-NEXT: }, 2829 // CHECK-NEXT: "valueCategory": "prvalue", 2830 // CHECK-NEXT: "value": "0" 2831 // CHECK-NEXT: } 2832 // CHECK-NEXT: ] 2833 // CHECK-NEXT: }, 2834 // CHECK-NEXT: { 2835 // CHECK-NEXT: "id": "0x{{.*}}", 2836 // CHECK-NEXT: "kind": "CXXMemberCallExpr", 2837 // CHECK-NEXT: "range": { 2838 // CHECK-NEXT: "begin": { 2839 // CHECK-NEXT: "offset": {{[0-9]+}}, 2840 // CHECK-NEXT: "line": 80, 2841 // CHECK-NEXT: "col": 3, 2842 // CHECK-NEXT: "tokLen": 1 2843 // CHECK-NEXT: }, 2844 // CHECK-NEXT: "end": { 2845 // CHECK-NEXT: "offset": {{[0-9]+}}, 2846 // CHECK-NEXT: "col": 24, 2847 // CHECK-NEXT: "tokLen": 1 2848 // CHECK-NEXT: } 2849 // CHECK-NEXT: }, 2850 // CHECK-NEXT: "type": { 2851 // CHECK-NEXT: "desugaredQualType": "int", 2852 // CHECK-NEXT: "qualType": "int" 2853 // CHECK-NEXT: }, 2854 // CHECK-NEXT: "valueCategory": "prvalue", 2855 // CHECK-NEXT: "inner": [ 2856 // CHECK-NEXT: { 2857 // CHECK-NEXT: "id": "0x{{.*}}", 2858 // CHECK-NEXT: "kind": "MemberExpr", 2859 // CHECK-NEXT: "range": { 2860 // CHECK-NEXT: "begin": { 2861 // CHECK-NEXT: "offset": {{[0-9]+}}, 2862 // CHECK-NEXT: "col": 3, 2863 // CHECK-NEXT: "tokLen": 1 2864 // CHECK-NEXT: }, 2865 // CHECK-NEXT: "end": { 2866 // CHECK-NEXT: "offset": {{[0-9]+}}, 2867 // CHECK-NEXT: "col": 22, 2868 // CHECK-NEXT: "tokLen": 1 2869 // CHECK-NEXT: } 2870 // CHECK-NEXT: }, 2871 // CHECK-NEXT: "type": { 2872 // CHECK-NEXT: "qualType": "<bound member function type>" 2873 // CHECK-NEXT: }, 2874 // CHECK-NEXT: "valueCategory": "prvalue", 2875 // CHECK-NEXT: "name": "foo", 2876 // CHECK-NEXT: "isArrow": true, 2877 // CHECK-NEXT: "referencedMemberDecl": "0x{{.*}}", 2878 // CHECK-NEXT: "inner": [ 2879 // CHECK-NEXT: { 2880 // CHECK-NEXT: "id": "0x{{.*}}", 2881 // CHECK-NEXT: "kind": "ImplicitCastExpr", 2882 // CHECK-NEXT: "range": { 2883 // CHECK-NEXT: "begin": { 2884 // CHECK-NEXT: "offset": {{[0-9]+}}, 2885 // CHECK-NEXT: "col": 3, 2886 // CHECK-NEXT: "tokLen": 1 2887 // CHECK-NEXT: }, 2888 // CHECK-NEXT: "end": { 2889 // CHECK-NEXT: "offset": {{[0-9]+}}, 2890 // CHECK-NEXT: "col": 3, 2891 // CHECK-NEXT: "tokLen": 1 2892 // CHECK-NEXT: } 2893 // CHECK-NEXT: }, 2894 // CHECK-NEXT: "type": { 2895 // CHECK-NEXT: "qualType": "S *" 2896 // CHECK-NEXT: }, 2897 // CHECK-NEXT: "valueCategory": "prvalue", 2898 // CHECK-NEXT: "castKind": "LValueToRValue", 2899 // CHECK-NEXT: "inner": [ 2900 // CHECK-NEXT: { 2901 // CHECK-NEXT: "id": "0x{{.*}}", 2902 // CHECK-NEXT: "kind": "DeclRefExpr", 2903 // CHECK-NEXT: "range": { 2904 // CHECK-NEXT: "begin": { 2905 // CHECK-NEXT: "offset": {{[0-9]+}}, 2906 // CHECK-NEXT: "col": 3, 2907 // CHECK-NEXT: "tokLen": 1 2908 // CHECK-NEXT: }, 2909 // CHECK-NEXT: "end": { 2910 // CHECK-NEXT: "offset": {{[0-9]+}}, 2911 // CHECK-NEXT: "col": 3, 2912 // CHECK-NEXT: "tokLen": 1 2913 // CHECK-NEXT: } 2914 // CHECK-NEXT: }, 2915 // CHECK-NEXT: "type": { 2916 // CHECK-NEXT: "qualType": "S *" 2917 // CHECK-NEXT: }, 2918 // CHECK-NEXT: "valueCategory": "lvalue", 2919 // CHECK-NEXT: "referencedDecl": { 2920 // CHECK-NEXT: "id": "0x{{.*}}", 2921 // CHECK-NEXT: "kind": "ParmVarDecl", 2922 // CHECK-NEXT: "name": "p", 2923 // CHECK-NEXT: "type": { 2924 // CHECK-NEXT: "qualType": "S *" 2925 // CHECK-NEXT: } 2926 // CHECK-NEXT: } 2927 // CHECK-NEXT: } 2928 // CHECK-NEXT: ] 2929 // CHECK-NEXT: } 2930 // CHECK-NEXT: ] 2931 // CHECK-NEXT: } 2932 // CHECK-NEXT: ] 2933 // CHECK-NEXT: }, 2934 // CHECK-NEXT: { 2935 // CHECK-NEXT: "id": "0x{{.*}}", 2936 // CHECK-NEXT: "kind": "CXXMemberCallExpr", 2937 // CHECK-NEXT: "range": { 2938 // CHECK-NEXT: "begin": { 2939 // CHECK-NEXT: "offset": {{[0-9]+}}, 2940 // CHECK-NEXT: "line": 81, 2941 // CHECK-NEXT: "col": 3, 2942 // CHECK-NEXT: "tokLen": 1 2943 // CHECK-NEXT: }, 2944 // CHECK-NEXT: "end": { 2945 // CHECK-NEXT: "offset": {{[0-9]+}}, 2946 // CHECK-NEXT: "col": 25, 2947 // CHECK-NEXT: "tokLen": 1 2948 // CHECK-NEXT: } 2949 // CHECK-NEXT: }, 2950 // CHECK-NEXT: "type": { 2951 // CHECK-NEXT: "desugaredQualType": "float", 2952 // CHECK-NEXT: "qualType": "float" 2953 // CHECK-NEXT: }, 2954 // CHECK-NEXT: "valueCategory": "prvalue", 2955 // CHECK-NEXT: "inner": [ 2956 // CHECK-NEXT: { 2957 // CHECK-NEXT: "id": "0x{{.*}}", 2958 // CHECK-NEXT: "kind": "MemberExpr", 2959 // CHECK-NEXT: "range": { 2960 // CHECK-NEXT: "begin": { 2961 // CHECK-NEXT: "offset": {{[0-9]+}}, 2962 // CHECK-NEXT: "col": 3, 2963 // CHECK-NEXT: "tokLen": 1 2964 // CHECK-NEXT: }, 2965 // CHECK-NEXT: "end": { 2966 // CHECK-NEXT: "offset": {{[0-9]+}}, 2967 // CHECK-NEXT: "col": 23, 2968 // CHECK-NEXT: "tokLen": 1 2969 // CHECK-NEXT: } 2970 // CHECK-NEXT: }, 2971 // CHECK-NEXT: "type": { 2972 // CHECK-NEXT: "qualType": "<bound member function type>" 2973 // CHECK-NEXT: }, 2974 // CHECK-NEXT: "valueCategory": "prvalue", 2975 // CHECK-NEXT: "name": "foo", 2976 // CHECK-NEXT: "isArrow": false, 2977 // CHECK-NEXT: "referencedMemberDecl": "0x{{.*}}", 2978 // CHECK-NEXT: "inner": [ 2979 // CHECK-NEXT: { 2980 // CHECK-NEXT: "id": "0x{{.*}}", 2981 // CHECK-NEXT: "kind": "DeclRefExpr", 2982 // CHECK-NEXT: "range": { 2983 // CHECK-NEXT: "begin": { 2984 // CHECK-NEXT: "offset": {{[0-9]+}}, 2985 // CHECK-NEXT: "col": 3, 2986 // CHECK-NEXT: "tokLen": 1 2987 // CHECK-NEXT: }, 2988 // CHECK-NEXT: "end": { 2989 // CHECK-NEXT: "offset": {{[0-9]+}}, 2990 // CHECK-NEXT: "col": 3, 2991 // CHECK-NEXT: "tokLen": 1 2992 // CHECK-NEXT: } 2993 // CHECK-NEXT: }, 2994 // CHECK-NEXT: "type": { 2995 // CHECK-NEXT: "desugaredQualType": "S", 2996 // CHECK-NEXT: "qualType": "S" 2997 // CHECK-NEXT: }, 2998 // CHECK-NEXT: "valueCategory": "lvalue", 2999 // CHECK-NEXT: "referencedDecl": { 3000 // CHECK-NEXT: "id": "0x{{.*}}", 3001 // CHECK-NEXT: "kind": "ParmVarDecl", 3002 // CHECK-NEXT: "name": "a", 3003 // CHECK-NEXT: "type": { 3004 // CHECK-NEXT: "desugaredQualType": "S", 3005 // CHECK-NEXT: "qualType": "S" 3006 // CHECK-NEXT: } 3007 // CHECK-NEXT: } 3008 // CHECK-NEXT: } 3009 // CHECK-NEXT: ] 3010 // CHECK-NEXT: } 3011 // CHECK-NEXT: ] 3012 // CHECK-NEXT: }, 3013 // CHECK-NEXT: { 3014 // CHECK-NEXT: "id": "0x{{.*}}", 3015 // CHECK-NEXT: "kind": "CXXMemberCallExpr", 3016 // CHECK-NEXT: "range": { 3017 // CHECK-NEXT: "begin": { 3018 // CHECK-NEXT: "offset": {{[0-9]+}}, 3019 // CHECK-NEXT: "line": 82, 3020 // CHECK-NEXT: "col": 3, 3021 // CHECK-NEXT: "tokLen": 1 3022 // CHECK-NEXT: }, 3023 // CHECK-NEXT: "end": { 3024 // CHECK-NEXT: "offset": {{[0-9]+}}, 3025 // CHECK-NEXT: "col": 9, 3026 // CHECK-NEXT: "tokLen": 1 3027 // CHECK-NEXT: } 3028 // CHECK-NEXT: }, 3029 // CHECK-NEXT: "type": { 3030 // CHECK-NEXT: "qualType": "void" 3031 // CHECK-NEXT: }, 3032 // CHECK-NEXT: "valueCategory": "prvalue", 3033 // CHECK-NEXT: "inner": [ 3034 // CHECK-NEXT: { 3035 // CHECK-NEXT: "id": "0x{{.*}}", 3036 // CHECK-NEXT: "kind": "MemberExpr", 3037 // CHECK-NEXT: "range": { 3038 // CHECK-NEXT: "begin": { 3039 // CHECK-NEXT: "offset": {{[0-9]+}}, 3040 // CHECK-NEXT: "col": 3, 3041 // CHECK-NEXT: "tokLen": 1 3042 // CHECK-NEXT: }, 3043 // CHECK-NEXT: "end": { 3044 // CHECK-NEXT: "offset": {{[0-9]+}}, 3045 // CHECK-NEXT: "col": 7, 3046 // CHECK-NEXT: "tokLen": 1 3047 // CHECK-NEXT: } 3048 // CHECK-NEXT: }, 3049 // CHECK-NEXT: "type": { 3050 // CHECK-NEXT: "qualType": "<bound member function type>" 3051 // CHECK-NEXT: }, 3052 // CHECK-NEXT: "valueCategory": "prvalue", 3053 // CHECK-NEXT: "name": "~S", 3054 // CHECK-NEXT: "isArrow": true, 3055 // CHECK-NEXT: "referencedMemberDecl": "0x{{.*}}", 3056 // CHECK-NEXT: "inner": [ 3057 // CHECK-NEXT: { 3058 // CHECK-NEXT: "id": "0x{{.*}}", 3059 // CHECK-NEXT: "kind": "ImplicitCastExpr", 3060 // CHECK-NEXT: "range": { 3061 // CHECK-NEXT: "begin": { 3062 // CHECK-NEXT: "offset": {{[0-9]+}}, 3063 // CHECK-NEXT: "col": 3, 3064 // CHECK-NEXT: "tokLen": 1 3065 // CHECK-NEXT: }, 3066 // CHECK-NEXT: "end": { 3067 // CHECK-NEXT: "offset": {{[0-9]+}}, 3068 // CHECK-NEXT: "col": 3, 3069 // CHECK-NEXT: "tokLen": 1 3070 // CHECK-NEXT: } 3071 // CHECK-NEXT: }, 3072 // CHECK-NEXT: "type": { 3073 // CHECK-NEXT: "qualType": "S *" 3074 // CHECK-NEXT: }, 3075 // CHECK-NEXT: "valueCategory": "prvalue", 3076 // CHECK-NEXT: "castKind": "LValueToRValue", 3077 // CHECK-NEXT: "inner": [ 3078 // CHECK-NEXT: { 3079 // CHECK-NEXT: "id": "0x{{.*}}", 3080 // CHECK-NEXT: "kind": "DeclRefExpr", 3081 // CHECK-NEXT: "range": { 3082 // CHECK-NEXT: "begin": { 3083 // CHECK-NEXT: "offset": {{[0-9]+}}, 3084 // CHECK-NEXT: "col": 3, 3085 // CHECK-NEXT: "tokLen": 1 3086 // CHECK-NEXT: }, 3087 // CHECK-NEXT: "end": { 3088 // CHECK-NEXT: "offset": {{[0-9]+}}, 3089 // CHECK-NEXT: "col": 3, 3090 // CHECK-NEXT: "tokLen": 1 3091 // CHECK-NEXT: } 3092 // CHECK-NEXT: }, 3093 // CHECK-NEXT: "type": { 3094 // CHECK-NEXT: "qualType": "S *" 3095 // CHECK-NEXT: }, 3096 // CHECK-NEXT: "valueCategory": "lvalue", 3097 // CHECK-NEXT: "referencedDecl": { 3098 // CHECK-NEXT: "id": "0x{{.*}}", 3099 // CHECK-NEXT: "kind": "ParmVarDecl", 3100 // CHECK-NEXT: "name": "p", 3101 // CHECK-NEXT: "type": { 3102 // CHECK-NEXT: "qualType": "S *" 3103 // CHECK-NEXT: } 3104 // CHECK-NEXT: } 3105 // CHECK-NEXT: } 3106 // CHECK-NEXT: ] 3107 // CHECK-NEXT: } 3108 // CHECK-NEXT: ] 3109 // CHECK-NEXT: } 3110 // CHECK-NEXT: ] 3111 // CHECK-NEXT: }, 3112 // CHECK-NEXT: { 3113 // CHECK-NEXT: "id": "0x{{.*}}", 3114 // CHECK-NEXT: "kind": "CXXMemberCallExpr", 3115 // CHECK-NEXT: "range": { 3116 // CHECK-NEXT: "begin": { 3117 // CHECK-NEXT: "offset": {{[0-9]+}}, 3118 // CHECK-NEXT: "line": 83, 3119 // CHECK-NEXT: "col": 3, 3120 // CHECK-NEXT: "tokLen": 1 3121 // CHECK-NEXT: }, 3122 // CHECK-NEXT: "end": { 3123 // CHECK-NEXT: "offset": {{[0-9]+}}, 3124 // CHECK-NEXT: "col": 8, 3125 // CHECK-NEXT: "tokLen": 1 3126 // CHECK-NEXT: } 3127 // CHECK-NEXT: }, 3128 // CHECK-NEXT: "type": { 3129 // CHECK-NEXT: "qualType": "void" 3130 // CHECK-NEXT: }, 3131 // CHECK-NEXT: "valueCategory": "prvalue", 3132 // CHECK-NEXT: "inner": [ 3133 // CHECK-NEXT: { 3134 // CHECK-NEXT: "id": "0x{{.*}}", 3135 // CHECK-NEXT: "kind": "MemberExpr", 3136 // CHECK-NEXT: "range": { 3137 // CHECK-NEXT: "begin": { 3138 // CHECK-NEXT: "offset": {{[0-9]+}}, 3139 // CHECK-NEXT: "col": 3, 3140 // CHECK-NEXT: "tokLen": 1 3141 // CHECK-NEXT: }, 3142 // CHECK-NEXT: "end": { 3143 // CHECK-NEXT: "offset": {{[0-9]+}}, 3144 // CHECK-NEXT: "col": 6, 3145 // CHECK-NEXT: "tokLen": 1 3146 // CHECK-NEXT: } 3147 // CHECK-NEXT: }, 3148 // CHECK-NEXT: "type": { 3149 // CHECK-NEXT: "qualType": "<bound member function type>" 3150 // CHECK-NEXT: }, 3151 // CHECK-NEXT: "valueCategory": "prvalue", 3152 // CHECK-NEXT: "name": "~S", 3153 // CHECK-NEXT: "isArrow": false, 3154 // CHECK-NEXT: "referencedMemberDecl": "0x{{.*}}", 3155 // CHECK-NEXT: "inner": [ 3156 // CHECK-NEXT: { 3157 // CHECK-NEXT: "id": "0x{{.*}}", 3158 // CHECK-NEXT: "kind": "DeclRefExpr", 3159 // CHECK-NEXT: "range": { 3160 // CHECK-NEXT: "begin": { 3161 // CHECK-NEXT: "offset": {{[0-9]+}}, 3162 // CHECK-NEXT: "col": 3, 3163 // CHECK-NEXT: "tokLen": 1 3164 // CHECK-NEXT: }, 3165 // CHECK-NEXT: "end": { 3166 // CHECK-NEXT: "offset": {{[0-9]+}}, 3167 // CHECK-NEXT: "col": 3, 3168 // CHECK-NEXT: "tokLen": 1 3169 // CHECK-NEXT: } 3170 // CHECK-NEXT: }, 3171 // CHECK-NEXT: "type": { 3172 // CHECK-NEXT: "desugaredQualType": "S", 3173 // CHECK-NEXT: "qualType": "S" 3174 // CHECK-NEXT: }, 3175 // CHECK-NEXT: "valueCategory": "lvalue", 3176 // CHECK-NEXT: "referencedDecl": { 3177 // CHECK-NEXT: "id": "0x{{.*}}", 3178 // CHECK-NEXT: "kind": "ParmVarDecl", 3179 // CHECK-NEXT: "name": "a", 3180 // CHECK-NEXT: "type": { 3181 // CHECK-NEXT: "desugaredQualType": "S", 3182 // CHECK-NEXT: "qualType": "S" 3183 // CHECK-NEXT: } 3184 // CHECK-NEXT: } 3185 // CHECK-NEXT: } 3186 // CHECK-NEXT: ] 3187 // CHECK-NEXT: } 3188 // CHECK-NEXT: ] 3189 // CHECK-NEXT: }, 3190 // CHECK-NEXT: { 3191 // CHECK-NEXT: "id": "0x{{.*}}", 3192 // CHECK-NEXT: "kind": "CXXMemberCallExpr", 3193 // CHECK-NEXT: "range": { 3194 // CHECK-NEXT: "begin": { 3195 // CHECK-NEXT: "offset": {{[0-9]+}}, 3196 // CHECK-NEXT: "line": 84, 3197 // CHECK-NEXT: "col": 3, 3198 // CHECK-NEXT: "tokLen": 1 3199 // CHECK-NEXT: }, 3200 // CHECK-NEXT: "end": { 3201 // CHECK-NEXT: "offset": {{[0-9]+}}, 3202 // CHECK-NEXT: "col": 18, 3203 // CHECK-NEXT: "tokLen": 1 3204 // CHECK-NEXT: } 3205 // CHECK-NEXT: }, 3206 // CHECK-NEXT: "type": { 3207 // CHECK-NEXT: "qualType": "void" 3208 // CHECK-NEXT: }, 3209 // CHECK-NEXT: "valueCategory": "prvalue", 3210 // CHECK-NEXT: "inner": [ 3211 // CHECK-NEXT: { 3212 // CHECK-NEXT: "id": "0x{{.*}}", 3213 // CHECK-NEXT: "kind": "MemberExpr", 3214 // CHECK-NEXT: "range": { 3215 // CHECK-NEXT: "begin": { 3216 // CHECK-NEXT: "offset": {{[0-9]+}}, 3217 // CHECK-NEXT: "col": 3, 3218 // CHECK-NEXT: "tokLen": 1 3219 // CHECK-NEXT: }, 3220 // CHECK-NEXT: "end": { 3221 // CHECK-NEXT: "offset": {{[0-9]+}}, 3222 // CHECK-NEXT: "col": 5, 3223 // CHECK-NEXT: "tokLen": 1 3224 // CHECK-NEXT: } 3225 // CHECK-NEXT: }, 3226 // CHECK-NEXT: "type": { 3227 // CHECK-NEXT: "qualType": "<bound member function type>" 3228 // CHECK-NEXT: }, 3229 // CHECK-NEXT: "valueCategory": "prvalue", 3230 // CHECK-NEXT: "name": "~S", 3231 // CHECK-NEXT: "isArrow": false, 3232 // CHECK-NEXT: "referencedMemberDecl": "0x{{.*}}", 3233 // CHECK-NEXT: "inner": [ 3234 // CHECK-NEXT: { 3235 // CHECK-NEXT: "id": "0x{{.*}}", 3236 // CHECK-NEXT: "kind": "DeclRefExpr", 3237 // CHECK-NEXT: "range": { 3238 // CHECK-NEXT: "begin": { 3239 // CHECK-NEXT: "offset": {{[0-9]+}}, 3240 // CHECK-NEXT: "col": 3, 3241 // CHECK-NEXT: "tokLen": 1 3242 // CHECK-NEXT: }, 3243 // CHECK-NEXT: "end": { 3244 // CHECK-NEXT: "offset": {{[0-9]+}}, 3245 // CHECK-NEXT: "col": 3, 3246 // CHECK-NEXT: "tokLen": 1 3247 // CHECK-NEXT: } 3248 // CHECK-NEXT: }, 3249 // CHECK-NEXT: "type": { 3250 // CHECK-NEXT: "desugaredQualType": "S", 3251 // CHECK-NEXT: "qualType": "S" 3252 // CHECK-NEXT: }, 3253 // CHECK-NEXT: "valueCategory": "lvalue", 3254 // CHECK-NEXT: "referencedDecl": { 3255 // CHECK-NEXT: "id": "0x{{.*}}", 3256 // CHECK-NEXT: "kind": "ParmVarDecl", 3257 // CHECK-NEXT: "name": "a", 3258 // CHECK-NEXT: "type": { 3259 // CHECK-NEXT: "desugaredQualType": "S", 3260 // CHECK-NEXT: "qualType": "S" 3261 // CHECK-NEXT: } 3262 // CHECK-NEXT: } 3263 // CHECK-NEXT: } 3264 // CHECK-NEXT: ] 3265 // CHECK-NEXT: } 3266 // CHECK-NEXT: ] 3267 // CHECK-NEXT: }, 3268 // CHECK-NEXT: { 3269 // CHECK-NEXT: "id": "0x{{.*}}", 3270 // CHECK-NEXT: "kind": "CXXMemberCallExpr", 3271 // CHECK-NEXT: "range": { 3272 // CHECK-NEXT: "begin": { 3273 // CHECK-NEXT: "offset": {{[0-9]+}}, 3274 // CHECK-NEXT: "line": 85, 3275 // CHECK-NEXT: "col": 3, 3276 // CHECK-NEXT: "tokLen": 1 3277 // CHECK-NEXT: }, 3278 // CHECK-NEXT: "end": { 3279 // CHECK-NEXT: "offset": {{[0-9]+}}, 3280 // CHECK-NEXT: "col": 14, 3281 // CHECK-NEXT: "tokLen": 1 3282 // CHECK-NEXT: } 3283 // CHECK-NEXT: }, 3284 // CHECK-NEXT: "type": { 3285 // CHECK-NEXT: "qualType": "void" 3286 // CHECK-NEXT: }, 3287 // CHECK-NEXT: "valueCategory": "prvalue", 3288 // CHECK-NEXT: "inner": [ 3289 // CHECK-NEXT: { 3290 // CHECK-NEXT: "id": "0x{{.*}}", 3291 // CHECK-NEXT: "kind": "MemberExpr", 3292 // CHECK-NEXT: "range": { 3293 // CHECK-NEXT: "begin": { 3294 // CHECK-NEXT: "offset": {{[0-9]+}}, 3295 // CHECK-NEXT: "col": 3, 3296 // CHECK-NEXT: "tokLen": 1 3297 // CHECK-NEXT: }, 3298 // CHECK-NEXT: "end": { 3299 // CHECK-NEXT: "offset": {{[0-9]+}}, 3300 // CHECK-NEXT: "col": 12, 3301 // CHECK-NEXT: "tokLen": 1 3302 // CHECK-NEXT: } 3303 // CHECK-NEXT: }, 3304 // CHECK-NEXT: "type": { 3305 // CHECK-NEXT: "qualType": "<bound member function type>" 3306 // CHECK-NEXT: }, 3307 // CHECK-NEXT: "valueCategory": "prvalue", 3308 // CHECK-NEXT: "name": "~S", 3309 // CHECK-NEXT: "isArrow": true, 3310 // CHECK-NEXT: "referencedMemberDecl": "0x{{.*}}", 3311 // CHECK-NEXT: "inner": [ 3312 // CHECK-NEXT: { 3313 // CHECK-NEXT: "id": "0x{{.*}}", 3314 // CHECK-NEXT: "kind": "ImplicitCastExpr", 3315 // CHECK-NEXT: "range": { 3316 // CHECK-NEXT: "begin": { 3317 // CHECK-NEXT: "offset": {{[0-9]+}}, 3318 // CHECK-NEXT: "col": 3, 3319 // CHECK-NEXT: "tokLen": 1 3320 // CHECK-NEXT: }, 3321 // CHECK-NEXT: "end": { 3322 // CHECK-NEXT: "offset": {{[0-9]+}}, 3323 // CHECK-NEXT: "col": 3, 3324 // CHECK-NEXT: "tokLen": 1 3325 // CHECK-NEXT: } 3326 // CHECK-NEXT: }, 3327 // CHECK-NEXT: "type": { 3328 // CHECK-NEXT: "qualType": "S *" 3329 // CHECK-NEXT: }, 3330 // CHECK-NEXT: "valueCategory": "prvalue", 3331 // CHECK-NEXT: "castKind": "LValueToRValue", 3332 // CHECK-NEXT: "inner": [ 3333 // CHECK-NEXT: { 3334 // CHECK-NEXT: "id": "0x{{.*}}", 3335 // CHECK-NEXT: "kind": "DeclRefExpr", 3336 // CHECK-NEXT: "range": { 3337 // CHECK-NEXT: "begin": { 3338 // CHECK-NEXT: "offset": {{[0-9]+}}, 3339 // CHECK-NEXT: "col": 3, 3340 // CHECK-NEXT: "tokLen": 1 3341 // CHECK-NEXT: }, 3342 // CHECK-NEXT: "end": { 3343 // CHECK-NEXT: "offset": {{[0-9]+}}, 3344 // CHECK-NEXT: "col": 3, 3345 // CHECK-NEXT: "tokLen": 1 3346 // CHECK-NEXT: } 3347 // CHECK-NEXT: }, 3348 // CHECK-NEXT: "type": { 3349 // CHECK-NEXT: "qualType": "S *" 3350 // CHECK-NEXT: }, 3351 // CHECK-NEXT: "valueCategory": "lvalue", 3352 // CHECK-NEXT: "referencedDecl": { 3353 // CHECK-NEXT: "id": "0x{{.*}}", 3354 // CHECK-NEXT: "kind": "ParmVarDecl", 3355 // CHECK-NEXT: "name": "p", 3356 // CHECK-NEXT: "type": { 3357 // CHECK-NEXT: "qualType": "S *" 3358 // CHECK-NEXT: } 3359 // CHECK-NEXT: } 3360 // CHECK-NEXT: } 3361 // CHECK-NEXT: ] 3362 // CHECK-NEXT: } 3363 // CHECK-NEXT: ] 3364 // CHECK-NEXT: } 3365 // CHECK-NEXT: ] 3366 // CHECK-NEXT: }, 3367 // CHECK-NEXT: { 3368 // CHECK-NEXT: "id": "0x{{.*}}", 3369 // CHECK-NEXT: "kind": "CXXMemberCallExpr", 3370 // CHECK-NEXT: "range": { 3371 // CHECK-NEXT: "begin": { 3372 // CHECK-NEXT: "offset": {{[0-9]+}}, 3373 // CHECK-NEXT: "line": 86, 3374 // CHECK-NEXT: "col": 3, 3375 // CHECK-NEXT: "tokLen": 1 3376 // CHECK-NEXT: }, 3377 // CHECK-NEXT: "end": { 3378 // CHECK-NEXT: "offset": {{[0-9]+}}, 3379 // CHECK-NEXT: "col": 26, 3380 // CHECK-NEXT: "tokLen": 1 3381 // CHECK-NEXT: } 3382 // CHECK-NEXT: }, 3383 // CHECK-NEXT: "type": { 3384 // CHECK-NEXT: "qualType": "void" 3385 // CHECK-NEXT: }, 3386 // CHECK-NEXT: "valueCategory": "prvalue", 3387 // CHECK-NEXT: "inner": [ 3388 // CHECK-NEXT: { 3389 // CHECK-NEXT: "id": "0x{{.*}}", 3390 // CHECK-NEXT: "kind": "MemberExpr", 3391 // CHECK-NEXT: "range": { 3392 // CHECK-NEXT: "begin": { 3393 // CHECK-NEXT: "offset": {{[0-9]+}}, 3394 // CHECK-NEXT: "col": 3, 3395 // CHECK-NEXT: "tokLen": 1 3396 // CHECK-NEXT: }, 3397 // CHECK-NEXT: "end": { 3398 // CHECK-NEXT: "offset": {{[0-9]+}}, 3399 // CHECK-NEXT: "col": 24, 3400 // CHECK-NEXT: "tokLen": 1 3401 // CHECK-NEXT: } 3402 // CHECK-NEXT: }, 3403 // CHECK-NEXT: "type": { 3404 // CHECK-NEXT: "qualType": "<bound member function type>" 3405 // CHECK-NEXT: }, 3406 // CHECK-NEXT: "valueCategory": "prvalue", 3407 // CHECK-NEXT: "name": "~U", 3408 // CHECK-NEXT: "isArrow": true, 3409 // CHECK-NEXT: "referencedMemberDecl": "0x{{.*}}", 3410 // CHECK-NEXT: "inner": [ 3411 // CHECK-NEXT: { 3412 // CHECK-NEXT: "id": "0x{{.*}}", 3413 // CHECK-NEXT: "kind": "ImplicitCastExpr", 3414 // CHECK-NEXT: "range": { 3415 // CHECK-NEXT: "begin": { 3416 // CHECK-NEXT: "offset": {{[0-9]+}}, 3417 // CHECK-NEXT: "col": 3, 3418 // CHECK-NEXT: "tokLen": 1 3419 // CHECK-NEXT: }, 3420 // CHECK-NEXT: "end": { 3421 // CHECK-NEXT: "offset": {{[0-9]+}}, 3422 // CHECK-NEXT: "col": 3, 3423 // CHECK-NEXT: "tokLen": 1 3424 // CHECK-NEXT: } 3425 // CHECK-NEXT: }, 3426 // CHECK-NEXT: "type": { 3427 // CHECK-NEXT: "qualType": "U<int> *" 3428 // CHECK-NEXT: }, 3429 // CHECK-NEXT: "valueCategory": "prvalue", 3430 // CHECK-NEXT: "castKind": "LValueToRValue", 3431 // CHECK-NEXT: "inner": [ 3432 // CHECK-NEXT: { 3433 // CHECK-NEXT: "id": "0x{{.*}}", 3434 // CHECK-NEXT: "kind": "DeclRefExpr", 3435 // CHECK-NEXT: "range": { 3436 // CHECK-NEXT: "begin": { 3437 // CHECK-NEXT: "offset": {{[0-9]+}}, 3438 // CHECK-NEXT: "col": 3, 3439 // CHECK-NEXT: "tokLen": 1 3440 // CHECK-NEXT: }, 3441 // CHECK-NEXT: "end": { 3442 // CHECK-NEXT: "offset": {{[0-9]+}}, 3443 // CHECK-NEXT: "col": 3, 3444 // CHECK-NEXT: "tokLen": 1 3445 // CHECK-NEXT: } 3446 // CHECK-NEXT: }, 3447 // CHECK-NEXT: "type": { 3448 // CHECK-NEXT: "qualType": "U<int> *" 3449 // CHECK-NEXT: }, 3450 // CHECK-NEXT: "valueCategory": "lvalue", 3451 // CHECK-NEXT: "referencedDecl": { 3452 // CHECK-NEXT: "id": "0x{{.*}}", 3453 // CHECK-NEXT: "kind": "ParmVarDecl", 3454 // CHECK-NEXT: "name": "r", 3455 // CHECK-NEXT: "type": { 3456 // CHECK-NEXT: "qualType": "U<int> *" 3457 // CHECK-NEXT: } 3458 // CHECK-NEXT: } 3459 // CHECK-NEXT: } 3460 // CHECK-NEXT: ] 3461 // CHECK-NEXT: } 3462 // CHECK-NEXT: ] 3463 // CHECK-NEXT: } 3464 // CHECK-NEXT: ] 3465 // CHECK-NEXT: }, 3466 // CHECK-NEXT: { 3467 // CHECK-NEXT: "id": "0x{{.*}}", 3468 // CHECK-NEXT: "kind": "CXXTypeidExpr", 3469 // CHECK-NEXT: "range": { 3470 // CHECK-NEXT: "begin": { 3471 // CHECK-NEXT: "offset": {{[0-9]+}}, 3472 // CHECK-NEXT: "line": 87, 3473 // CHECK-NEXT: "col": 3, 3474 // CHECK-NEXT: "tokLen": 6 3475 // CHECK-NEXT: }, 3476 // CHECK-NEXT: "end": { 3477 // CHECK-NEXT: "offset": {{[0-9]+}}, 3478 // CHECK-NEXT: "col": 11, 3479 // CHECK-NEXT: "tokLen": 1 3480 // CHECK-NEXT: } 3481 // CHECK-NEXT: }, 3482 // CHECK-NEXT: "type": { 3483 // CHECK-NEXT: "qualType": "const std::type_info" 3484 // CHECK-NEXT: }, 3485 // CHECK-NEXT: "valueCategory": "lvalue", 3486 // CHECK-NEXT: "inner": [ 3487 // CHECK-NEXT: { 3488 // CHECK-NEXT: "id": "0x{{.*}}", 3489 // CHECK-NEXT: "kind": "DeclRefExpr", 3490 // CHECK-NEXT: "range": { 3491 // CHECK-NEXT: "begin": { 3492 // CHECK-NEXT: "offset": {{[0-9]+}}, 3493 // CHECK-NEXT: "col": 10, 3494 // CHECK-NEXT: "tokLen": 1 3495 // CHECK-NEXT: }, 3496 // CHECK-NEXT: "end": { 3497 // CHECK-NEXT: "offset": {{[0-9]+}}, 3498 // CHECK-NEXT: "col": 10, 3499 // CHECK-NEXT: "tokLen": 1 3500 // CHECK-NEXT: } 3501 // CHECK-NEXT: }, 3502 // CHECK-NEXT: "type": { 3503 // CHECK-NEXT: "desugaredQualType": "S", 3504 // CHECK-NEXT: "qualType": "S" 3505 // CHECK-NEXT: }, 3506 // CHECK-NEXT: "valueCategory": "lvalue", 3507 // CHECK-NEXT: "referencedDecl": { 3508 // CHECK-NEXT: "id": "0x{{.*}}", 3509 // CHECK-NEXT: "kind": "ParmVarDecl", 3510 // CHECK-NEXT: "name": "a", 3511 // CHECK-NEXT: "type": { 3512 // CHECK-NEXT: "desugaredQualType": "S", 3513 // CHECK-NEXT: "qualType": "S" 3514 // CHECK-NEXT: } 3515 // CHECK-NEXT: } 3516 // CHECK-NEXT: } 3517 // CHECK-NEXT: ] 3518 // CHECK-NEXT: }, 3519 // CHECK-NEXT: { 3520 // CHECK-NEXT: "id": "0x{{.*}}", 3521 // CHECK-NEXT: "kind": "CXXTypeidExpr", 3522 // CHECK-NEXT: "range": { 3523 // CHECK-NEXT: "begin": { 3524 // CHECK-NEXT: "offset": {{[0-9]+}}, 3525 // CHECK-NEXT: "line": 88, 3526 // CHECK-NEXT: "col": 3, 3527 // CHECK-NEXT: "tokLen": 6 3528 // CHECK-NEXT: }, 3529 // CHECK-NEXT: "end": { 3530 // CHECK-NEXT: "offset": {{[0-9]+}}, 3531 // CHECK-NEXT: "col": 11, 3532 // CHECK-NEXT: "tokLen": 1 3533 // CHECK-NEXT: } 3534 // CHECK-NEXT: }, 3535 // CHECK-NEXT: "type": { 3536 // CHECK-NEXT: "qualType": "const std::type_info" 3537 // CHECK-NEXT: }, 3538 // CHECK-NEXT: "valueCategory": "lvalue", 3539 // CHECK-NEXT: "typeArg": { 3540 // CHECK-NEXT: "desugaredQualType": "S", 3541 // CHECK-NEXT: "qualType": "S" 3542 // CHECK-NEXT: } 3543 // CHECK-NEXT: }, 3544 // CHECK-NEXT: { 3545 // CHECK-NEXT: "id": "0x{{.*}}", 3546 // CHECK-NEXT: "kind": "CXXTypeidExpr", 3547 // CHECK-NEXT: "range": { 3548 // CHECK-NEXT: "begin": { 3549 // CHECK-NEXT: "offset": {{[0-9]+}}, 3550 // CHECK-NEXT: "line": 89, 3551 // CHECK-NEXT: "col": 3, 3552 // CHECK-NEXT: "tokLen": 6 3553 // CHECK-NEXT: }, 3554 // CHECK-NEXT: "end": { 3555 // CHECK-NEXT: "offset": {{[0-9]+}}, 3556 // CHECK-NEXT: "col": 26, 3557 // CHECK-NEXT: "tokLen": 1 3558 // CHECK-NEXT: } 3559 // CHECK-NEXT: }, 3560 // CHECK-NEXT: "type": { 3561 // CHECK-NEXT: "qualType": "const std::type_info" 3562 // CHECK-NEXT: }, 3563 // CHECK-NEXT: "valueCategory": "lvalue", 3564 // CHECK-NEXT: "typeArg": { 3565 // CHECK-NEXT: "desugaredQualType": "const volatile S", 3566 // CHECK-NEXT: "qualType": "const volatile S" 3567 // CHECK-NEXT: }, 3568 // CHECK-NEXT: "adjustedTypeArg": { 3569 // CHECK-NEXT: "desugaredQualType": "S", 3570 // CHECK-NEXT: "qualType": "S" 3571 // CHECK-NEXT: } 3572 // CHECK-NEXT: } 3573 // CHECK-NEXT: ] 3574 // CHECK-NEXT: } 3575 // CHECK-NEXT: ] 3576 // CHECK-NEXT: } 3577 3578 3579 // CHECK-NOT: {{^}}Dumping 3580 // CHECK: "kind": "FunctionTemplateDecl", 3581 // CHECK-NEXT: "loc": { 3582 // CHECK-NEXT: "offset": {{[0-9]+}}, 3583 // CHECK-NEXT: "file": "{{.*}}", 3584 // CHECK-NEXT: "line": 93, 3585 // CHECK-NEXT: "col": 6, 3586 // CHECK-NEXT: "tokLen": 22 3587 // CHECK-NEXT: }, 3588 // CHECK-NEXT: "range": { 3589 // CHECK-NEXT: "begin": { 3590 // CHECK-NEXT: "offset": {{[0-9]+}}, 3591 // CHECK-NEXT: "line": 92, 3592 // CHECK-NEXT: "col": 1, 3593 // CHECK-NEXT: "tokLen": 8 3594 // CHECK-NEXT: }, 3595 // CHECK-NEXT: "end": { 3596 // CHECK-NEXT: "offset": {{[0-9]+}}, 3597 // CHECK-NEXT: "line": 122, 3598 // CHECK-NEXT: "col": 1, 3599 // CHECK-NEXT: "tokLen": 1 3600 // CHECK-NEXT: } 3601 // CHECK-NEXT: }, 3602 // CHECK-NEXT: "name": "TestPrimaryExpressions", 3603 // CHECK-NEXT: "inner": [ 3604 // CHECK-NEXT: { 3605 // CHECK-NEXT: "id": "0x{{.*}}", 3606 // CHECK-NEXT: "kind": "TemplateTypeParmDecl", 3607 // CHECK-NEXT: "loc": { 3608 // CHECK-NEXT: "offset": {{[0-9]+}}, 3609 // CHECK-NEXT: "line": 92, 3610 // CHECK-NEXT: "col": 23, 3611 // CHECK-NEXT: "tokLen": 2 3612 // CHECK-NEXT: }, 3613 // CHECK-NEXT: "range": { 3614 // CHECK-NEXT: "begin": { 3615 // CHECK-NEXT: "offset": {{[0-9]+}}, 3616 // CHECK-NEXT: "col": 11, 3617 // CHECK-NEXT: "tokLen": 8 3618 // CHECK-NEXT: }, 3619 // CHECK-NEXT: "end": { 3620 // CHECK-NEXT: "offset": {{[0-9]+}}, 3621 // CHECK-NEXT: "col": 23, 3622 // CHECK-NEXT: "tokLen": 2 3623 // CHECK-NEXT: } 3624 // CHECK-NEXT: }, 3625 // CHECK-NEXT: "isReferenced": true, 3626 // CHECK-NEXT: "name": "Ts", 3627 // CHECK-NEXT: "tagUsed": "typename", 3628 // CHECK-NEXT: "depth": 0, 3629 // CHECK-NEXT: "index": 0, 3630 // CHECK-NEXT: "isParameterPack": true 3631 // CHECK-NEXT: }, 3632 // CHECK-NEXT: { 3633 // CHECK-NEXT: "id": "0x{{.*}}", 3634 // CHECK-NEXT: "kind": "FunctionDecl", 3635 // CHECK-NEXT: "loc": { 3636 // CHECK-NEXT: "offset": {{[0-9]+}}, 3637 // CHECK-NEXT: "line": 93, 3638 // CHECK-NEXT: "col": 6, 3639 // CHECK-NEXT: "tokLen": 22 3640 // CHECK-NEXT: }, 3641 // CHECK-NEXT: "range": { 3642 // CHECK-NEXT: "begin": { 3643 // CHECK-NEXT: "offset": {{[0-9]+}}, 3644 // CHECK-NEXT: "col": 1, 3645 // CHECK-NEXT: "tokLen": 4 3646 // CHECK-NEXT: }, 3647 // CHECK-NEXT: "end": { 3648 // CHECK-NEXT: "offset": {{[0-9]+}}, 3649 // CHECK-NEXT: "line": 122, 3650 // CHECK-NEXT: "col": 1, 3651 // CHECK-NEXT: "tokLen": 1 3652 // CHECK-NEXT: } 3653 // CHECK-NEXT: }, 3654 // CHECK-NEXT: "name": "TestPrimaryExpressions", 3655 // CHECK-NEXT: "type": { 3656 // CHECK-NEXT: "qualType": "void (Ts...)" 3657 // CHECK-NEXT: }, 3658 // CHECK-NEXT: "inner": [ 3659 // CHECK-NEXT: { 3660 // CHECK-NEXT: "id": "0x{{.*}}", 3661 // CHECK-NEXT: "kind": "ParmVarDecl", 3662 // CHECK-NEXT: "loc": { 3663 // CHECK-NEXT: "offset": {{[0-9]+}}, 3664 // CHECK-NEXT: "line": 93, 3665 // CHECK-NEXT: "col": 35, 3666 // CHECK-NEXT: "tokLen": 1 3667 // CHECK-NEXT: }, 3668 // CHECK-NEXT: "range": { 3669 // CHECK-NEXT: "begin": { 3670 // CHECK-NEXT: "offset": {{[0-9]+}}, 3671 // CHECK-NEXT: "col": 29, 3672 // CHECK-NEXT: "tokLen": 2 3673 // CHECK-NEXT: }, 3674 // CHECK-NEXT: "end": { 3675 // CHECK-NEXT: "offset": {{[0-9]+}}, 3676 // CHECK-NEXT: "col": 35, 3677 // CHECK-NEXT: "tokLen": 1 3678 // CHECK-NEXT: } 3679 // CHECK-NEXT: }, 3680 // CHECK-NEXT: "isReferenced": true, 3681 // CHECK-NEXT: "name": "a", 3682 // CHECK-NEXT: "type": { 3683 // CHECK-NEXT: "qualType": "Ts..." 3684 // CHECK-NEXT: }, 3685 // CHECK-NEXT: "isParameterPack": true 3686 // CHECK-NEXT: }, 3687 // CHECK-NEXT: { 3688 // CHECK-NEXT: "id": "0x{{.*}}", 3689 // CHECK-NEXT: "kind": "CompoundStmt", 3690 // CHECK-NEXT: "range": { 3691 // CHECK-NEXT: "begin": { 3692 // CHECK-NEXT: "offset": {{[0-9]+}}, 3693 // CHECK-NEXT: "col": 38, 3694 // CHECK-NEXT: "tokLen": 1 3695 // CHECK-NEXT: }, 3696 // CHECK-NEXT: "end": { 3697 // CHECK-NEXT: "offset": {{[0-9]+}}, 3698 // CHECK-NEXT: "line": 122, 3699 // CHECK-NEXT: "col": 1, 3700 // CHECK-NEXT: "tokLen": 1 3701 // CHECK-NEXT: } 3702 // CHECK-NEXT: }, 3703 // CHECK-NEXT: "inner": [ 3704 // CHECK-NEXT: { 3705 // CHECK-NEXT: "id": "0x{{.*}}", 3706 // CHECK-NEXT: "kind": "DeclStmt", 3707 // CHECK-NEXT: "range": { 3708 // CHECK-NEXT: "begin": { 3709 // CHECK-NEXT: "offset": {{[0-9]+}}, 3710 // CHECK-NEXT: "line": 94, 3711 // CHECK-NEXT: "col": 3, 3712 // CHECK-NEXT: "tokLen": 6 3713 // CHECK-NEXT: }, 3714 // CHECK-NEXT: "end": { 3715 // CHECK-NEXT: "offset": {{[0-9]+}}, 3716 // CHECK-NEXT: "line": 101, 3717 // CHECK-NEXT: "col": 4, 3718 // CHECK-NEXT: "tokLen": 1 3719 // CHECK-NEXT: } 3720 // CHECK-NEXT: }, 3721 // CHECK-NEXT: "inner": [ 3722 // CHECK-NEXT: { 3723 // CHECK-NEXT: "id": "0x{{.*}}", 3724 // CHECK-NEXT: "kind": "CXXRecordDecl", 3725 // CHECK-NEXT: "loc": { 3726 // CHECK-NEXT: "offset": {{[0-9]+}}, 3727 // CHECK-NEXT: "line": 94, 3728 // CHECK-NEXT: "col": 10, 3729 // CHECK-NEXT: "tokLen": 1 3730 // CHECK-NEXT: }, 3731 // CHECK-NEXT: "range": { 3732 // CHECK-NEXT: "begin": { 3733 // CHECK-NEXT: "offset": {{[0-9]+}}, 3734 // CHECK-NEXT: "col": 3, 3735 // CHECK-NEXT: "tokLen": 6 3736 // CHECK-NEXT: }, 3737 // CHECK-NEXT: "end": { 3738 // CHECK-NEXT: "offset": {{[0-9]+}}, 3739 // CHECK-NEXT: "line": 101, 3740 // CHECK-NEXT: "col": 3, 3741 // CHECK-NEXT: "tokLen": 1 3742 // CHECK-NEXT: } 3743 // CHECK-NEXT: }, 3744 // CHECK-NEXT: "name": "V", 3745 // CHECK-NEXT: "tagUsed": "struct", 3746 // CHECK-NEXT: "completeDefinition": true, 3747 // CHECK-NEXT: "definitionData": { 3748 // CHECK-NEXT: "canConstDefaultInit": true, 3749 // CHECK-NEXT: "copyAssign": { 3750 // CHECK-NEXT: "hasConstParam": true, 3751 // CHECK-NEXT: "implicitHasConstParam": true, 3752 // CHECK-NEXT: "needsImplicit": true, 3753 // CHECK-NEXT: "simple": true, 3754 // CHECK-NEXT: "trivial": true 3755 // CHECK-NEXT: }, 3756 // CHECK-NEXT: "copyCtor": { 3757 // CHECK-NEXT: "hasConstParam": true, 3758 // CHECK-NEXT: "implicitHasConstParam": true, 3759 // CHECK-NEXT: "needsImplicit": true, 3760 // CHECK-NEXT: "simple": true, 3761 // CHECK-NEXT: "trivial": true 3762 // CHECK-NEXT: }, 3763 // CHECK-NEXT: "defaultCtor": { 3764 // CHECK-NEXT: "defaultedIsConstexpr": true, 3765 // CHECK-NEXT: "exists": true, 3766 // CHECK-NEXT: "isConstexpr": true, 3767 // CHECK-NEXT: "needsImplicit": true, 3768 // CHECK-NEXT: "trivial": true 3769 // CHECK-NEXT: }, 3770 // CHECK-NEXT: "dtor": { 3771 // CHECK-NEXT: "irrelevant": true, 3772 // CHECK-NEXT: "needsImplicit": true, 3773 // CHECK-NEXT: "simple": true, 3774 // CHECK-NEXT: "trivial": true 3775 // CHECK-NEXT: }, 3776 // CHECK-NEXT: "hasConstexprNonCopyMoveConstructor": true, 3777 // CHECK-NEXT: "isAggregate": true, 3778 // CHECK-NEXT: "isEmpty": true, 3779 // CHECK-NEXT: "isLiteral": true, 3780 // CHECK-NEXT: "isPOD": true, 3781 // CHECK-NEXT: "isStandardLayout": true, 3782 // CHECK-NEXT: "isTrivial": true, 3783 // CHECK-NEXT: "isTriviallyCopyable": true, 3784 // CHECK-NEXT: "moveAssign": { 3785 // CHECK-NEXT: "exists": true, 3786 // CHECK-NEXT: "needsImplicit": true, 3787 // CHECK-NEXT: "simple": true, 3788 // CHECK-NEXT: "trivial": true 3789 // CHECK-NEXT: }, 3790 // CHECK-NEXT: "moveCtor": { 3791 // CHECK-NEXT: "exists": true, 3792 // CHECK-NEXT: "needsImplicit": true, 3793 // CHECK-NEXT: "simple": true, 3794 // CHECK-NEXT: "trivial": true 3795 // CHECK-NEXT: } 3796 // CHECK-NEXT: }, 3797 // CHECK-NEXT: "inner": [ 3798 // CHECK-NEXT: { 3799 // CHECK-NEXT: "id": "0x{{.*}}", 3800 // CHECK-NEXT: "kind": "CXXRecordDecl", 3801 // CHECK-NEXT: "loc": { 3802 // CHECK-NEXT: "offset": {{[0-9]+}}, 3803 // CHECK-NEXT: "line": 94, 3804 // CHECK-NEXT: "col": 10, 3805 // CHECK-NEXT: "tokLen": 1 3806 // CHECK-NEXT: }, 3807 // CHECK-NEXT: "range": { 3808 // CHECK-NEXT: "begin": { 3809 // CHECK-NEXT: "offset": {{[0-9]+}}, 3810 // CHECK-NEXT: "col": 3, 3811 // CHECK-NEXT: "tokLen": 6 3812 // CHECK-NEXT: }, 3813 // CHECK-NEXT: "end": { 3814 // CHECK-NEXT: "offset": {{[0-9]+}}, 3815 // CHECK-NEXT: "col": 10, 3816 // CHECK-NEXT: "tokLen": 1 3817 // CHECK-NEXT: } 3818 // CHECK-NEXT: }, 3819 // CHECK-NEXT: "isImplicit": true, 3820 // CHECK-NEXT: "name": "V", 3821 // CHECK-NEXT: "tagUsed": "struct" 3822 // CHECK-NEXT: }, 3823 // CHECK-NEXT: { 3824 // CHECK-NEXT: "id": "0x{{.*}}", 3825 // CHECK-NEXT: "kind": "CXXMethodDecl", 3826 // CHECK-NEXT: "loc": { 3827 // CHECK-NEXT: "offset": {{[0-9]+}}, 3828 // CHECK-NEXT: "line": 95, 3829 // CHECK-NEXT: "col": 10, 3830 // CHECK-NEXT: "tokLen": 1 3831 // CHECK-NEXT: }, 3832 // CHECK-NEXT: "range": { 3833 // CHECK-NEXT: "begin": { 3834 // CHECK-NEXT: "offset": {{[0-9]+}}, 3835 // CHECK-NEXT: "col": 5, 3836 // CHECK-NEXT: "tokLen": 4 3837 // CHECK-NEXT: }, 3838 // CHECK-NEXT: "end": { 3839 // CHECK-NEXT: "offset": {{[0-9]+}}, 3840 // CHECK-NEXT: "line": 100, 3841 // CHECK-NEXT: "col": 5, 3842 // CHECK-NEXT: "tokLen": 1 3843 // CHECK-NEXT: } 3844 // CHECK-NEXT: }, 3845 // CHECK-NEXT: "name": "f", 3846 // CHECK-NEXT: "type": { 3847 // CHECK-NEXT: "qualType": "void ()" 3848 // CHECK-NEXT: }, 3849 // CHECK-NEXT: "inner": [ 3850 // CHECK-NEXT: { 3851 // CHECK-NEXT: "id": "0x{{.*}}", 3852 // CHECK-NEXT: "kind": "CompoundStmt", 3853 // CHECK-NEXT: "range": { 3854 // CHECK-NEXT: "begin": { 3855 // CHECK-NEXT: "offset": {{[0-9]+}}, 3856 // CHECK-NEXT: "line": 95, 3857 // CHECK-NEXT: "col": 14, 3858 // CHECK-NEXT: "tokLen": 1 3859 // CHECK-NEXT: }, 3860 // CHECK-NEXT: "end": { 3861 // CHECK-NEXT: "offset": {{[0-9]+}}, 3862 // CHECK-NEXT: "line": 100, 3863 // CHECK-NEXT: "col": 5, 3864 // CHECK-NEXT: "tokLen": 1 3865 // CHECK-NEXT: } 3866 // CHECK-NEXT: }, 3867 // CHECK-NEXT: "inner": [ 3868 // CHECK-NEXT: { 3869 // CHECK-NEXT: "id": "0x{{.*}}", 3870 // CHECK-NEXT: "kind": "CXXThisExpr", 3871 // CHECK-NEXT: "range": { 3872 // CHECK-NEXT: "begin": { 3873 // CHECK-NEXT: "offset": {{[0-9]+}}, 3874 // CHECK-NEXT: "line": 96, 3875 // CHECK-NEXT: "col": 7, 3876 // CHECK-NEXT: "tokLen": 4 3877 // CHECK-NEXT: }, 3878 // CHECK-NEXT: "end": { 3879 // CHECK-NEXT: "offset": {{[0-9]+}}, 3880 // CHECK-NEXT: "col": 7, 3881 // CHECK-NEXT: "tokLen": 4 3882 // CHECK-NEXT: } 3883 // CHECK-NEXT: }, 3884 // CHECK-NEXT: "type": { 3885 // CHECK-NEXT: "qualType": "V *" 3886 // CHECK-NEXT: }, 3887 // CHECK-NEXT: "valueCategory": "prvalue" 3888 // CHECK-NEXT: }, 3889 // CHECK-NEXT: { 3890 // CHECK-NEXT: "id": "0x{{.*}}", 3891 // CHECK-NEXT: "kind": "LambdaExpr", 3892 // CHECK-NEXT: "range": { 3893 // CHECK-NEXT: "begin": { 3894 // CHECK-NEXT: "offset": {{[0-9]+}}, 3895 // CHECK-NEXT: "line": 98, 3896 // CHECK-NEXT: "col": 7, 3897 // CHECK-NEXT: "tokLen": 1 3898 // CHECK-NEXT: }, 3899 // CHECK-NEXT: "end": { 3900 // CHECK-NEXT: "offset": {{[0-9]+}}, 3901 // CHECK-NEXT: "col": 14, 3902 // CHECK-NEXT: "tokLen": 1 3903 // CHECK-NEXT: } 3904 // CHECK-NEXT: }, 3905 // CHECK-NEXT: "type": { 3906 // CHECK-NEXT: "qualType": "(lambda at {{.*}}:98:7)" 3907 // CHECK-NEXT: }, 3908 // CHECK-NEXT: "valueCategory": "prvalue", 3909 // CHECK-NEXT: "inner": [ 3910 // CHECK-NEXT: { 3911 // CHECK-NEXT: "id": "0x{{.*}}", 3912 // CHECK-NEXT: "kind": "CXXRecordDecl", 3913 // CHECK-NEXT: "loc": { 3914 // CHECK-NEXT: "offset": {{[0-9]+}}, 3915 // CHECK-NEXT: "col": 7, 3916 // CHECK-NEXT: "tokLen": 1 3917 // CHECK-NEXT: }, 3918 // CHECK-NEXT: "range": { 3919 // CHECK-NEXT: "begin": { 3920 // CHECK-NEXT: "offset": {{[0-9]+}}, 3921 // CHECK-NEXT: "col": 7, 3922 // CHECK-NEXT: "tokLen": 1 3923 // CHECK-NEXT: }, 3924 // CHECK-NEXT: "end": { 3925 // CHECK-NEXT: "offset": {{[0-9]+}}, 3926 // CHECK-NEXT: "col": 7, 3927 // CHECK-NEXT: "tokLen": 1 3928 // CHECK-NEXT: } 3929 // CHECK-NEXT: }, 3930 // CHECK-NEXT: "isImplicit": true, 3931 // CHECK-NEXT: "tagUsed": "class", 3932 // CHECK-NEXT: "completeDefinition": true, 3933 // CHECK-NEXT: "definitionData": { 3934 // CHECK-NEXT: "canConstDefaultInit": true, 3935 // CHECK-NEXT: "copyAssign": { 3936 // CHECK-NEXT: "hasConstParam": true, 3937 // CHECK-NEXT: "implicitHasConstParam": true, 3938 // CHECK-NEXT: "needsImplicit": true, 3939 // CHECK-NEXT: "trivial": true 3940 // CHECK-NEXT: }, 3941 // CHECK-NEXT: "copyCtor": { 3942 // CHECK-NEXT: "hasConstParam": true, 3943 // CHECK-NEXT: "implicitHasConstParam": true, 3944 // CHECK-NEXT: "needsImplicit": true, 3945 // CHECK-NEXT: "simple": true, 3946 // CHECK-NEXT: "trivial": true 3947 // CHECK-NEXT: }, 3948 // CHECK-NEXT: "defaultCtor": {}, 3949 // CHECK-NEXT: "dtor": { 3950 // CHECK-NEXT: "irrelevant": true, 3951 // CHECK-NEXT: "needsImplicit": true, 3952 // CHECK-NEXT: "simple": true, 3953 // CHECK-NEXT: "trivial": true 3954 // CHECK-NEXT: }, 3955 // CHECK-NEXT: "isLambda": true, 3956 // CHECK-NEXT: "isStandardLayout": true, 3957 // CHECK-NEXT: "isTriviallyCopyable": true, 3958 // CHECK-NEXT: "moveAssign": {}, 3959 // CHECK-NEXT: "moveCtor": { 3960 // CHECK-NEXT: "exists": true, 3961 // CHECK-NEXT: "needsImplicit": true, 3962 // CHECK-NEXT: "simple": true, 3963 // CHECK-NEXT: "trivial": true 3964 // CHECK-NEXT: } 3965 // CHECK-NEXT: }, 3966 // CHECK-NEXT: "inner": [ 3967 // CHECK-NEXT: { 3968 // CHECK-NEXT: "id": "0x{{.*}}", 3969 // CHECK-NEXT: "kind": "CXXMethodDecl", 3970 // CHECK-NEXT: "loc": { 3971 // CHECK-NEXT: "offset": {{[0-9]+}}, 3972 // CHECK-NEXT: "col": 7, 3973 // CHECK-NEXT: "tokLen": 1 3974 // CHECK-NEXT: }, 3975 // CHECK-NEXT: "range": { 3976 // CHECK-NEXT: "begin": { 3977 // CHECK-NEXT: "offset": {{[0-9]+}}, 3978 // CHECK-NEXT: "col": 12, 3979 // CHECK-NEXT: "tokLen": 1 3980 // CHECK-NEXT: }, 3981 // CHECK-NEXT: "end": { 3982 // CHECK-NEXT: "offset": {{[0-9]+}}, 3983 // CHECK-NEXT: "col": 14, 3984 // CHECK-NEXT: "tokLen": 1 3985 // CHECK-NEXT: } 3986 // CHECK-NEXT: }, 3987 // CHECK-NEXT: "name": "operator()", 3988 // CHECK-NEXT: "type": { 3989 // CHECK-NEXT: "qualType": "auto () const -> auto" 3990 // CHECK-NEXT: }, 3991 // CHECK-NEXT: "inline": true, 3992 // CHECK-NEXT: "inner": [ 3993 // CHECK-NEXT: { 3994 // CHECK-NEXT: "id": "0x{{.*}}", 3995 // CHECK-NEXT: "kind": "CompoundStmt", 3996 // CHECK-NEXT: "range": { 3997 // CHECK-NEXT: "begin": { 3998 // CHECK-NEXT: "offset": {{[0-9]+}}, 3999 // CHECK-NEXT: "col": 13, 4000 // CHECK-NEXT: "tokLen": 1 4001 // CHECK-NEXT: }, 4002 // CHECK-NEXT: "end": { 4003 // CHECK-NEXT: "offset": {{[0-9]+}}, 4004 // CHECK-NEXT: "col": 14, 4005 // CHECK-NEXT: "tokLen": 1 4006 // CHECK-NEXT: } 4007 // CHECK-NEXT: } 4008 // CHECK-NEXT: } 4009 // CHECK-NEXT: ] 4010 // CHECK-NEXT: }, 4011 // CHECK-NEXT: { 4012 // CHECK-NEXT: "id": "0x{{.*}}", 4013 // CHECK-NEXT: "kind": "FieldDecl", 4014 // CHECK-NEXT: "loc": { 4015 // CHECK-NEXT: "offset": {{[0-9]+}}, 4016 // CHECK-NEXT: "col": 8, 4017 // CHECK-NEXT: "tokLen": 4 4018 // CHECK-NEXT: }, 4019 // CHECK-NEXT: "range": { 4020 // CHECK-NEXT: "begin": { 4021 // CHECK-NEXT: "offset": {{[0-9]+}}, 4022 // CHECK-NEXT: "col": 8, 4023 // CHECK-NEXT: "tokLen": 4 4024 // CHECK-NEXT: }, 4025 // CHECK-NEXT: "end": { 4026 // CHECK-NEXT: "offset": {{[0-9]+}}, 4027 // CHECK-NEXT: "col": 8, 4028 // CHECK-NEXT: "tokLen": 4 4029 // CHECK-NEXT: } 4030 // CHECK-NEXT: }, 4031 // CHECK-NEXT: "isImplicit": true, 4032 // CHECK-NEXT: "type": { 4033 // CHECK-NEXT: "qualType": "V *" 4034 // CHECK-NEXT: } 4035 // CHECK-NEXT: } 4036 // CHECK-NEXT: ] 4037 // CHECK-NEXT: }, 4038 // CHECK-NEXT: { 4039 // CHECK-NEXT: "id": "0x{{.*}}", 4040 // CHECK-NEXT: "kind": "ParenListExpr", 4041 // CHECK-NEXT: "range": { 4042 // CHECK-NEXT: "begin": { 4043 // CHECK-NEXT: "offset": {{[0-9]+}}, 4044 // CHECK-NEXT: "col": 8, 4045 // CHECK-NEXT: "tokLen": 4 4046 // CHECK-NEXT: }, 4047 // CHECK-NEXT: "end": { 4048 // CHECK-NEXT: "offset": {{[0-9]+}}, 4049 // CHECK-NEXT: "col": 8, 4050 // CHECK-NEXT: "tokLen": 4 4051 // CHECK-NEXT: } 4052 // CHECK-NEXT: }, 4053 // CHECK-NEXT: "type": { 4054 // CHECK-NEXT: "qualType": "NULL TYPE" 4055 // CHECK-NEXT: }, 4056 // CHECK-NEXT: "valueCategory": "prvalue", 4057 // CHECK-NEXT: "inner": [ 4058 // CHECK-NEXT: { 4059 // CHECK-NEXT: "id": "0x{{.*}}", 4060 // CHECK-NEXT: "kind": "CXXThisExpr", 4061 // CHECK-NEXT: "range": { 4062 // CHECK-NEXT: "begin": { 4063 // CHECK-NEXT: "offset": {{[0-9]+}}, 4064 // CHECK-NEXT: "col": 8, 4065 // CHECK-NEXT: "tokLen": 4 4066 // CHECK-NEXT: }, 4067 // CHECK-NEXT: "end": { 4068 // CHECK-NEXT: "offset": {{[0-9]+}}, 4069 // CHECK-NEXT: "col": 8, 4070 // CHECK-NEXT: "tokLen": 4 4071 // CHECK-NEXT: } 4072 // CHECK-NEXT: }, 4073 // CHECK-NEXT: "type": { 4074 // CHECK-NEXT: "qualType": "V *" 4075 // CHECK-NEXT: }, 4076 // CHECK-NEXT: "valueCategory": "prvalue" 4077 // CHECK-NEXT: } 4078 // CHECK-NEXT: ] 4079 // CHECK-NEXT: }, 4080 // CHECK-NEXT: { 4081 // CHECK-NEXT: "id": "0x{{.*}}", 4082 // CHECK-NEXT: "kind": "CompoundStmt", 4083 // CHECK-NEXT: "range": { 4084 // CHECK-NEXT: "begin": { 4085 // CHECK-NEXT: "offset": {{[0-9]+}}, 4086 // CHECK-NEXT: "col": 13, 4087 // CHECK-NEXT: "tokLen": 1 4088 // CHECK-NEXT: }, 4089 // CHECK-NEXT: "end": { 4090 // CHECK-NEXT: "offset": {{[0-9]+}}, 4091 // CHECK-NEXT: "col": 14, 4092 // CHECK-NEXT: "tokLen": 1 4093 // CHECK-NEXT: } 4094 // CHECK-NEXT: } 4095 // CHECK-NEXT: } 4096 // CHECK-NEXT: ] 4097 // CHECK-NEXT: }, 4098 // CHECK-NEXT: { 4099 // CHECK-NEXT: "id": "0x{{.*}}", 4100 // CHECK-NEXT: "kind": "LambdaExpr", 4101 // CHECK-NEXT: "range": { 4102 // CHECK-NEXT: "begin": { 4103 // CHECK-NEXT: "offset": {{[0-9]+}}, 4104 // CHECK-NEXT: "line": 99, 4105 // CHECK-NEXT: "col": 7, 4106 // CHECK-NEXT: "tokLen": 1 4107 // CHECK-NEXT: }, 4108 // CHECK-NEXT: "end": { 4109 // CHECK-NEXT: "offset": {{[0-9]+}}, 4110 // CHECK-NEXT: "col": 15, 4111 // CHECK-NEXT: "tokLen": 1 4112 // CHECK-NEXT: } 4113 // CHECK-NEXT: }, 4114 // CHECK-NEXT: "type": { 4115 // CHECK-NEXT: "qualType": "(lambda at {{.*}}:99:7)" 4116 // CHECK-NEXT: }, 4117 // CHECK-NEXT: "valueCategory": "prvalue", 4118 // CHECK-NEXT: "inner": [ 4119 // CHECK-NEXT: { 4120 // CHECK-NEXT: "id": "0x{{.*}}", 4121 // CHECK-NEXT: "kind": "CXXRecordDecl", 4122 // CHECK-NEXT: "loc": { 4123 // CHECK-NEXT: "offset": {{[0-9]+}}, 4124 // CHECK-NEXT: "col": 7, 4125 // CHECK-NEXT: "tokLen": 1 4126 // CHECK-NEXT: }, 4127 // CHECK-NEXT: "range": { 4128 // CHECK-NEXT: "begin": { 4129 // CHECK-NEXT: "offset": {{[0-9]+}}, 4130 // CHECK-NEXT: "col": 7, 4131 // CHECK-NEXT: "tokLen": 1 4132 // CHECK-NEXT: }, 4133 // CHECK-NEXT: "end": { 4134 // CHECK-NEXT: "offset": {{[0-9]+}}, 4135 // CHECK-NEXT: "col": 7, 4136 // CHECK-NEXT: "tokLen": 1 4137 // CHECK-NEXT: } 4138 // CHECK-NEXT: }, 4139 // CHECK-NEXT: "isImplicit": true, 4140 // CHECK-NEXT: "tagUsed": "class", 4141 // CHECK-NEXT: "completeDefinition": true, 4142 // CHECK-NEXT: "definitionData": { 4143 // CHECK-NEXT: "canConstDefaultInit": true, 4144 // CHECK-NEXT: "copyAssign": { 4145 // CHECK-NEXT: "hasConstParam": true, 4146 // CHECK-NEXT: "implicitHasConstParam": true, 4147 // CHECK-NEXT: "needsImplicit": true, 4148 // CHECK-NEXT: "trivial": true 4149 // CHECK-NEXT: }, 4150 // CHECK-NEXT: "copyCtor": { 4151 // CHECK-NEXT: "hasConstParam": true, 4152 // CHECK-NEXT: "implicitHasConstParam": true, 4153 // CHECK-NEXT: "needsImplicit": true, 4154 // CHECK-NEXT: "simple": true, 4155 // CHECK-NEXT: "trivial": true 4156 // CHECK-NEXT: }, 4157 // CHECK-NEXT: "defaultCtor": { 4158 // CHECK-NEXT: "defaultedIsConstexpr": true 4159 // CHECK-NEXT: }, 4160 // CHECK-NEXT: "dtor": { 4161 // CHECK-NEXT: "irrelevant": true, 4162 // CHECK-NEXT: "needsImplicit": true, 4163 // CHECK-NEXT: "simple": true, 4164 // CHECK-NEXT: "trivial": true 4165 // CHECK-NEXT: }, 4166 // CHECK-NEXT: "isLambda": true, 4167 // CHECK-NEXT: "isStandardLayout": true, 4168 // CHECK-NEXT: "isTriviallyCopyable": true, 4169 // CHECK-NEXT: "moveAssign": {}, 4170 // CHECK-NEXT: "moveCtor": { 4171 // CHECK-NEXT: "exists": true, 4172 // CHECK-NEXT: "needsImplicit": true, 4173 // CHECK-NEXT: "simple": true, 4174 // CHECK-NEXT: "trivial": true 4175 // CHECK-NEXT: } 4176 // CHECK-NEXT: }, 4177 // CHECK-NEXT: "inner": [ 4178 // CHECK-NEXT: { 4179 // CHECK-NEXT: "id": "0x{{.*}}", 4180 // CHECK-NEXT: "kind": "CXXMethodDecl", 4181 // CHECK-NEXT: "loc": { 4182 // CHECK-NEXT: "offset": {{[0-9]+}}, 4183 // CHECK-NEXT: "col": 7, 4184 // CHECK-NEXT: "tokLen": 1 4185 // CHECK-NEXT: }, 4186 // CHECK-NEXT: "range": { 4187 // CHECK-NEXT: "begin": { 4188 // CHECK-NEXT: "offset": {{[0-9]+}}, 4189 // CHECK-NEXT: "col": 13, 4190 // CHECK-NEXT: "tokLen": 1 4191 // CHECK-NEXT: }, 4192 // CHECK-NEXT: "end": { 4193 // CHECK-NEXT: "offset": {{[0-9]+}}, 4194 // CHECK-NEXT: "col": 15, 4195 // CHECK-NEXT: "tokLen": 1 4196 // CHECK-NEXT: } 4197 // CHECK-NEXT: }, 4198 // CHECK-NEXT: "name": "operator()", 4199 // CHECK-NEXT: "type": { 4200 // CHECK-NEXT: "qualType": "auto () const -> auto" 4201 // CHECK-NEXT: }, 4202 // CHECK-NEXT: "inline": true, 4203 // CHECK-NEXT: "inner": [ 4204 // CHECK-NEXT: { 4205 // CHECK-NEXT: "id": "0x{{.*}}", 4206 // CHECK-NEXT: "kind": "CompoundStmt", 4207 // CHECK-NEXT: "range": { 4208 // CHECK-NEXT: "begin": { 4209 // CHECK-NEXT: "offset": {{[0-9]+}}, 4210 // CHECK-NEXT: "col": 14, 4211 // CHECK-NEXT: "tokLen": 1 4212 // CHECK-NEXT: }, 4213 // CHECK-NEXT: "end": { 4214 // CHECK-NEXT: "offset": {{[0-9]+}}, 4215 // CHECK-NEXT: "col": 15, 4216 // CHECK-NEXT: "tokLen": 1 4217 // CHECK-NEXT: } 4218 // CHECK-NEXT: } 4219 // CHECK-NEXT: } 4220 // CHECK-NEXT: ] 4221 // CHECK-NEXT: }, 4222 // CHECK-NEXT: { 4223 // CHECK-NEXT: "id": "0x{{.*}}", 4224 // CHECK-NEXT: "kind": "FieldDecl", 4225 // CHECK-NEXT: "loc": { 4226 // CHECK-NEXT: "offset": {{[0-9]+}}, 4227 // CHECK-NEXT: "col": 8, 4228 // CHECK-NEXT: "tokLen": 1 4229 // CHECK-NEXT: }, 4230 // CHECK-NEXT: "range": { 4231 // CHECK-NEXT: "begin": { 4232 // CHECK-NEXT: "offset": {{[0-9]+}}, 4233 // CHECK-NEXT: "col": 8, 4234 // CHECK-NEXT: "tokLen": 1 4235 // CHECK-NEXT: }, 4236 // CHECK-NEXT: "end": { 4237 // CHECK-NEXT: "offset": {{[0-9]+}}, 4238 // CHECK-NEXT: "col": 8, 4239 // CHECK-NEXT: "tokLen": 1 4240 // CHECK-NEXT: } 4241 // CHECK-NEXT: }, 4242 // CHECK-NEXT: "isImplicit": true, 4243 // CHECK-NEXT: "type": { 4244 // CHECK-NEXT: "qualType": "V" 4245 // CHECK-NEXT: } 4246 // CHECK-NEXT: } 4247 // CHECK-NEXT: ] 4248 // CHECK-NEXT: }, 4249 // CHECK-NEXT: { 4250 // CHECK-NEXT: "id": "0x{{.*}}", 4251 // CHECK-NEXT: "kind": "ParenListExpr", 4252 // CHECK-NEXT: "range": { 4253 // CHECK-NEXT: "begin": { 4254 // CHECK-NEXT: "offset": {{[0-9]+}}, 4255 // CHECK-NEXT: "col": 8, 4256 // CHECK-NEXT: "tokLen": 1 4257 // CHECK-NEXT: }, 4258 // CHECK-NEXT: "end": { 4259 // CHECK-NEXT: "offset": {{[0-9]+}}, 4260 // CHECK-NEXT: "col": 8, 4261 // CHECK-NEXT: "tokLen": 1 4262 // CHECK-NEXT: } 4263 // CHECK-NEXT: }, 4264 // CHECK-NEXT: "type": { 4265 // CHECK-NEXT: "qualType": "NULL TYPE" 4266 // CHECK-NEXT: }, 4267 // CHECK-NEXT: "valueCategory": "prvalue", 4268 // CHECK-NEXT: "inner": [ 4269 // CHECK-NEXT: { 4270 // CHECK-NEXT: "id": "0x{{.*}}", 4271 // CHECK-NEXT: "kind": "UnaryOperator", 4272 // CHECK-NEXT: "range": { 4273 // CHECK-NEXT: "begin": { 4274 // CHECK-NEXT: "offset": {{[0-9]+}}, 4275 // CHECK-NEXT: "col": 8, 4276 // CHECK-NEXT: "tokLen": 1 4277 // CHECK-NEXT: }, 4278 // CHECK-NEXT: "end": { 4279 // CHECK-NEXT: "offset": {{[0-9]+}}, 4280 // CHECK-NEXT: "col": 8, 4281 // CHECK-NEXT: "tokLen": 1 4282 // CHECK-NEXT: } 4283 // CHECK-NEXT: }, 4284 // CHECK-NEXT: "type": { 4285 // CHECK-NEXT: "qualType": "<dependent type>" 4286 // CHECK-NEXT: }, 4287 // CHECK-NEXT: "valueCategory": "prvalue", 4288 // CHECK-NEXT: "isPostfix": false, 4289 // CHECK-NEXT: "opcode": "*", 4290 // CHECK-NEXT: "canOverflow": false, 4291 // CHECK-NEXT: "inner": [ 4292 // CHECK-NEXT: { 4293 // CHECK-NEXT: "id": "0x{{.*}}", 4294 // CHECK-NEXT: "kind": "CXXThisExpr", 4295 // CHECK-NEXT: "range": { 4296 // CHECK-NEXT: "begin": { 4297 // CHECK-NEXT: "offset": {{[0-9]+}}, 4298 // CHECK-NEXT: "col": 8, 4299 // CHECK-NEXT: "tokLen": 1 4300 // CHECK-NEXT: }, 4301 // CHECK-NEXT: "end": { 4302 // CHECK-NEXT: "offset": {{[0-9]+}}, 4303 // CHECK-NEXT: "col": 8, 4304 // CHECK-NEXT: "tokLen": 1 4305 // CHECK-NEXT: } 4306 // CHECK-NEXT: }, 4307 // CHECK-NEXT: "type": { 4308 // CHECK-NEXT: "qualType": "V *" 4309 // CHECK-NEXT: }, 4310 // CHECK-NEXT: "valueCategory": "prvalue" 4311 // CHECK-NEXT: } 4312 // CHECK-NEXT: ] 4313 // CHECK-NEXT: } 4314 // CHECK-NEXT: ] 4315 // CHECK-NEXT: }, 4316 // CHECK-NEXT: { 4317 // CHECK-NEXT: "id": "0x{{.*}}", 4318 // CHECK-NEXT: "kind": "CompoundStmt", 4319 // CHECK-NEXT: "range": { 4320 // CHECK-NEXT: "begin": { 4321 // CHECK-NEXT: "offset": {{[0-9]+}}, 4322 // CHECK-NEXT: "col": 14, 4323 // CHECK-NEXT: "tokLen": 1 4324 // CHECK-NEXT: }, 4325 // CHECK-NEXT: "end": { 4326 // CHECK-NEXT: "offset": {{[0-9]+}}, 4327 // CHECK-NEXT: "col": 15, 4328 // CHECK-NEXT: "tokLen": 1 4329 // CHECK-NEXT: } 4330 // CHECK-NEXT: } 4331 // CHECK-NEXT: } 4332 // CHECK-NEXT: ] 4333 // CHECK-NEXT: } 4334 // CHECK-NEXT: ] 4335 // CHECK-NEXT: } 4336 // CHECK-NEXT: ] 4337 // CHECK-NEXT: } 4338 // CHECK-NEXT: ] 4339 // CHECK-NEXT: } 4340 // CHECK-NEXT: ] 4341 // CHECK-NEXT: }, 4342 // CHECK-NEXT: { 4343 // CHECK-NEXT: "id": "0x{{.*}}", 4344 // CHECK-NEXT: "kind": "DeclStmt", 4345 // CHECK-NEXT: "range": { 4346 // CHECK-NEXT: "begin": { 4347 // CHECK-NEXT: "offset": {{[0-9]+}}, 4348 // CHECK-NEXT: "line": 103, 4349 // CHECK-NEXT: "col": 3, 4350 // CHECK-NEXT: "tokLen": 3 4351 // CHECK-NEXT: }, 4352 // CHECK-NEXT: "end": { 4353 // CHECK-NEXT: "offset": {{[0-9]+}}, 4354 // CHECK-NEXT: "col": 11, 4355 // CHECK-NEXT: "tokLen": 1 4356 // CHECK-NEXT: } 4357 // CHECK-NEXT: }, 4358 // CHECK-NEXT: "inner": [ 4359 // CHECK-NEXT: { 4360 // CHECK-NEXT: "id": "0x{{.*}}", 4361 // CHECK-NEXT: "kind": "VarDecl", 4362 // CHECK-NEXT: "loc": { 4363 // CHECK-NEXT: "offset": {{[0-9]+}}, 4364 // CHECK-NEXT: "col": 7, 4365 // CHECK-NEXT: "tokLen": 1 4366 // CHECK-NEXT: }, 4367 // CHECK-NEXT: "range": { 4368 // CHECK-NEXT: "begin": { 4369 // CHECK-NEXT: "offset": {{[0-9]+}}, 4370 // CHECK-NEXT: "col": 3, 4371 // CHECK-NEXT: "tokLen": 3 4372 // CHECK-NEXT: }, 4373 // CHECK-NEXT: "end": { 4374 // CHECK-NEXT: "offset": {{[0-9]+}}, 4375 // CHECK-NEXT: "col": 7, 4376 // CHECK-NEXT: "tokLen": 1 4377 // CHECK-NEXT: } 4378 // CHECK-NEXT: }, 4379 // CHECK-NEXT: "isReferenced": true, 4380 // CHECK-NEXT: "name": "b", 4381 // CHECK-NEXT: "type": { 4382 // CHECK-NEXT: "qualType": "int" 4383 // CHECK-NEXT: } 4384 // CHECK-NEXT: }, 4385 // CHECK-NEXT: { 4386 // CHECK-NEXT: "id": "0x{{.*}}", 4387 // CHECK-NEXT: "kind": "VarDecl", 4388 // CHECK-NEXT: "loc": { 4389 // CHECK-NEXT: "offset": {{[0-9]+}}, 4390 // CHECK-NEXT: "col": 10, 4391 // CHECK-NEXT: "tokLen": 1 4392 // CHECK-NEXT: }, 4393 // CHECK-NEXT: "range": { 4394 // CHECK-NEXT: "begin": { 4395 // CHECK-NEXT: "offset": {{[0-9]+}}, 4396 // CHECK-NEXT: "col": 3, 4397 // CHECK-NEXT: "tokLen": 3 4398 // CHECK-NEXT: }, 4399 // CHECK-NEXT: "end": { 4400 // CHECK-NEXT: "offset": {{[0-9]+}}, 4401 // CHECK-NEXT: "col": 10, 4402 // CHECK-NEXT: "tokLen": 1 4403 // CHECK-NEXT: } 4404 // CHECK-NEXT: }, 4405 // CHECK-NEXT: "isReferenced": true, 4406 // CHECK-NEXT: "name": "c", 4407 // CHECK-NEXT: "type": { 4408 // CHECK-NEXT: "qualType": "int" 4409 // CHECK-NEXT: } 4410 // CHECK-NEXT: } 4411 // CHECK-NEXT: ] 4412 // CHECK-NEXT: }, 4413 // CHECK-NEXT: { 4414 // CHECK-NEXT: "id": "0x{{.*}}", 4415 // CHECK-NEXT: "kind": "LambdaExpr", 4416 // CHECK-NEXT: "range": { 4417 // CHECK-NEXT: "begin": { 4418 // CHECK-NEXT: "offset": {{[0-9]+}}, 4419 // CHECK-NEXT: "line": 105, 4420 // CHECK-NEXT: "col": 3, 4421 // CHECK-NEXT: "tokLen": 1 4422 // CHECK-NEXT: }, 4423 // CHECK-NEXT: "end": { 4424 // CHECK-NEXT: "offset": {{[0-9]+}}, 4425 // CHECK-NEXT: "col": 8, 4426 // CHECK-NEXT: "tokLen": 1 4427 // CHECK-NEXT: } 4428 // CHECK-NEXT: }, 4429 // CHECK-NEXT: "type": { 4430 // CHECK-NEXT: "qualType": "(lambda at {{.*}}:105:3)" 4431 // CHECK-NEXT: }, 4432 // CHECK-NEXT: "valueCategory": "prvalue", 4433 // CHECK-NEXT: "inner": [ 4434 // CHECK-NEXT: { 4435 // CHECK-NEXT: "id": "0x{{.*}}", 4436 // CHECK-NEXT: "kind": "CXXRecordDecl", 4437 // CHECK-NEXT: "loc": { 4438 // CHECK-NEXT: "offset": {{[0-9]+}}, 4439 // CHECK-NEXT: "col": 3, 4440 // CHECK-NEXT: "tokLen": 1 4441 // CHECK-NEXT: }, 4442 // CHECK-NEXT: "range": { 4443 // CHECK-NEXT: "begin": { 4444 // CHECK-NEXT: "offset": {{[0-9]+}}, 4445 // CHECK-NEXT: "col": 3, 4446 // CHECK-NEXT: "tokLen": 1 4447 // CHECK-NEXT: }, 4448 // CHECK-NEXT: "end": { 4449 // CHECK-NEXT: "offset": {{[0-9]+}}, 4450 // CHECK-NEXT: "col": 3, 4451 // CHECK-NEXT: "tokLen": 1 4452 // CHECK-NEXT: } 4453 // CHECK-NEXT: }, 4454 // CHECK-NEXT: "isImplicit": true, 4455 // CHECK-NEXT: "tagUsed": "class", 4456 // CHECK-NEXT: "completeDefinition": true, 4457 // CHECK-NEXT: "definitionData": { 4458 // CHECK-NEXT: "canConstDefaultInit": true, 4459 // CHECK-NEXT: "copyAssign": { 4460 // CHECK-NEXT: "hasConstParam": true, 4461 // CHECK-NEXT: "implicitHasConstParam": true, 4462 // CHECK-NEXT: "needsImplicit": true, 4463 // CHECK-NEXT: "trivial": true 4464 // CHECK-NEXT: }, 4465 // CHECK-NEXT: "copyCtor": { 4466 // CHECK-NEXT: "hasConstParam": true, 4467 // CHECK-NEXT: "implicitHasConstParam": true, 4468 // CHECK-NEXT: "needsImplicit": true, 4469 // CHECK-NEXT: "simple": true, 4470 // CHECK-NEXT: "trivial": true 4471 // CHECK-NEXT: }, 4472 // CHECK-NEXT: "defaultCtor": { 4473 // CHECK-NEXT: "defaultedIsConstexpr": true 4474 // CHECK-NEXT: }, 4475 // CHECK-NEXT: "dtor": { 4476 // CHECK-NEXT: "irrelevant": true, 4477 // CHECK-NEXT: "needsImplicit": true, 4478 // CHECK-NEXT: "simple": true, 4479 // CHECK-NEXT: "trivial": true 4480 // CHECK-NEXT: }, 4481 // CHECK-NEXT: "isEmpty": true, 4482 // CHECK-NEXT: "isLambda": true, 4483 // CHECK-NEXT: "isLiteral": true, 4484 // CHECK-NEXT: "isStandardLayout": true, 4485 // CHECK-NEXT: "isTriviallyCopyable": true, 4486 // CHECK-NEXT: "moveAssign": {}, 4487 // CHECK-NEXT: "moveCtor": { 4488 // CHECK-NEXT: "exists": true, 4489 // CHECK-NEXT: "needsImplicit": true, 4490 // CHECK-NEXT: "simple": true, 4491 // CHECK-NEXT: "trivial": true 4492 // CHECK-NEXT: } 4493 // CHECK-NEXT: }, 4494 // CHECK-NEXT: "inner": [ 4495 // CHECK-NEXT: { 4496 // CHECK-NEXT: "id": "0x{{.*}}", 4497 // CHECK-NEXT: "kind": "CXXMethodDecl", 4498 // CHECK-NEXT: "loc": { 4499 // CHECK-NEXT: "offset": {{[0-9]+}}, 4500 // CHECK-NEXT: "col": 3, 4501 // CHECK-NEXT: "tokLen": 1 4502 // CHECK-NEXT: }, 4503 // CHECK-NEXT: "range": { 4504 // CHECK-NEXT: "begin": { 4505 // CHECK-NEXT: "offset": {{[0-9]+}}, 4506 // CHECK-NEXT: "col": 6, 4507 // CHECK-NEXT: "tokLen": 1 4508 // CHECK-NEXT: }, 4509 // CHECK-NEXT: "end": { 4510 // CHECK-NEXT: "offset": {{[0-9]+}}, 4511 // CHECK-NEXT: "col": 8, 4512 // CHECK-NEXT: "tokLen": 1 4513 // CHECK-NEXT: } 4514 // CHECK-NEXT: }, 4515 // CHECK-NEXT: "name": "operator()", 4516 // CHECK-NEXT: "type": { 4517 // CHECK-NEXT: "qualType": "auto () const" 4518 // CHECK-NEXT: }, 4519 // CHECK-NEXT: "inline": true, 4520 // CHECK-NEXT: "inner": [ 4521 // CHECK-NEXT: { 4522 // CHECK-NEXT: "id": "0x{{.*}}", 4523 // CHECK-NEXT: "kind": "CompoundStmt", 4524 // CHECK-NEXT: "range": { 4525 // CHECK-NEXT: "begin": { 4526 // CHECK-NEXT: "offset": {{[0-9]+}}, 4527 // CHECK-NEXT: "col": 7, 4528 // CHECK-NEXT: "tokLen": 1 4529 // CHECK-NEXT: }, 4530 // CHECK-NEXT: "end": { 4531 // CHECK-NEXT: "offset": {{[0-9]+}}, 4532 // CHECK-NEXT: "col": 8, 4533 // CHECK-NEXT: "tokLen": 1 4534 // CHECK-NEXT: } 4535 // CHECK-NEXT: } 4536 // CHECK-NEXT: } 4537 // CHECK-NEXT: ] 4538 // CHECK-NEXT: }, 4539 // CHECK-NEXT: { 4540 // CHECK-NEXT: "id": "0x{{.*}}", 4541 // CHECK-NEXT: "kind": "CXXConversionDecl", 4542 // CHECK-NEXT: "loc": { 4543 // CHECK-NEXT: "offset": {{[0-9]+}}, 4544 // CHECK-NEXT: "col": 3, 4545 // CHECK-NEXT: "tokLen": 1 4546 // CHECK-NEXT: }, 4547 // CHECK-NEXT: "range": { 4548 // CHECK-NEXT: "begin": { 4549 // CHECK-NEXT: "offset": {{[0-9]+}}, 4550 // CHECK-NEXT: "col": 3, 4551 // CHECK-NEXT: "tokLen": 1 4552 // CHECK-NEXT: }, 4553 // CHECK-NEXT: "end": { 4554 // CHECK-NEXT: "offset": {{[0-9]+}}, 4555 // CHECK-NEXT: "col": 8, 4556 // CHECK-NEXT: "tokLen": 1 4557 // CHECK-NEXT: } 4558 // CHECK-NEXT: }, 4559 // CHECK-NEXT: "isImplicit": true, 4560 // CHECK-NEXT: "name": "operator auto (*)()", 4561 // CHECK-NEXT: "type": { 4562 // CHECK-NEXT: "qualType": "auto (*() const noexcept)()" 4563 // CHECK-NEXT: }, 4564 // CHECK-NEXT: "inline": true, 4565 // CHECK-NEXT: "constexpr": true 4566 // CHECK-NEXT: }, 4567 // CHECK-NEXT: { 4568 // CHECK-NEXT: "id": "0x{{.*}}", 4569 // CHECK-NEXT: "kind": "CXXMethodDecl", 4570 // CHECK-NEXT: "loc": { 4571 // CHECK-NEXT: "offset": {{[0-9]+}}, 4572 // CHECK-NEXT: "col": 3, 4573 // CHECK-NEXT: "tokLen": 1 4574 // CHECK-NEXT: }, 4575 // CHECK-NEXT: "range": { 4576 // CHECK-NEXT: "begin": { 4577 // CHECK-NEXT: "offset": {{[0-9]+}}, 4578 // CHECK-NEXT: "col": 3, 4579 // CHECK-NEXT: "tokLen": 1 4580 // CHECK-NEXT: }, 4581 // CHECK-NEXT: "end": { 4582 // CHECK-NEXT: "offset": {{[0-9]+}}, 4583 // CHECK-NEXT: "col": 8, 4584 // CHECK-NEXT: "tokLen": 1 4585 // CHECK-NEXT: } 4586 // CHECK-NEXT: }, 4587 // CHECK-NEXT: "isImplicit": true, 4588 // CHECK-NEXT: "name": "__invoke", 4589 // CHECK-NEXT: "type": { 4590 // CHECK-NEXT: "qualType": "auto ()" 4591 // CHECK-NEXT: }, 4592 // CHECK-NEXT: "storageClass": "static", 4593 // CHECK-NEXT: "inline": true 4594 // CHECK-NEXT: } 4595 // CHECK-NEXT: ] 4596 // CHECK-NEXT: }, 4597 // CHECK-NEXT: { 4598 // CHECK-NEXT: "id": "0x{{.*}}", 4599 // CHECK-NEXT: "kind": "CompoundStmt", 4600 // CHECK-NEXT: "range": { 4601 // CHECK-NEXT: "begin": { 4602 // CHECK-NEXT: "offset": {{[0-9]+}}, 4603 // CHECK-NEXT: "col": 7, 4604 // CHECK-NEXT: "tokLen": 1 4605 // CHECK-NEXT: }, 4606 // CHECK-NEXT: "end": { 4607 // CHECK-NEXT: "offset": {{[0-9]+}}, 4608 // CHECK-NEXT: "col": 8, 4609 // CHECK-NEXT: "tokLen": 1 4610 // CHECK-NEXT: } 4611 // CHECK-NEXT: } 4612 // CHECK-NEXT: } 4613 // CHECK-NEXT: ] 4614 // CHECK-NEXT: }, 4615 // CHECK-NEXT: { 4616 // CHECK-NEXT: "id": "0x{{.*}}", 4617 // CHECK-NEXT: "kind": "LambdaExpr", 4618 // CHECK-NEXT: "range": { 4619 // CHECK-NEXT: "begin": { 4620 // CHECK-NEXT: "offset": {{[0-9]+}}, 4621 // CHECK-NEXT: "line": 106, 4622 // CHECK-NEXT: "col": 3, 4623 // CHECK-NEXT: "tokLen": 1 4624 // CHECK-NEXT: }, 4625 // CHECK-NEXT: "end": { 4626 // CHECK-NEXT: "offset": {{[0-9]+}}, 4627 // CHECK-NEXT: "col": 18, 4628 // CHECK-NEXT: "tokLen": 1 4629 // CHECK-NEXT: } 4630 // CHECK-NEXT: }, 4631 // CHECK-NEXT: "type": { 4632 // CHECK-NEXT: "qualType": "(lambda at {{.*}}:106:3)" 4633 // CHECK-NEXT: }, 4634 // CHECK-NEXT: "valueCategory": "prvalue", 4635 // CHECK-NEXT: "inner": [ 4636 // CHECK-NEXT: { 4637 // CHECK-NEXT: "id": "0x{{.*}}", 4638 // CHECK-NEXT: "kind": "CXXRecordDecl", 4639 // CHECK-NEXT: "loc": { 4640 // CHECK-NEXT: "offset": {{[0-9]+}}, 4641 // CHECK-NEXT: "col": 3, 4642 // CHECK-NEXT: "tokLen": 1 4643 // CHECK-NEXT: }, 4644 // CHECK-NEXT: "range": { 4645 // CHECK-NEXT: "begin": { 4646 // CHECK-NEXT: "offset": {{[0-9]+}}, 4647 // CHECK-NEXT: "col": 3, 4648 // CHECK-NEXT: "tokLen": 1 4649 // CHECK-NEXT: }, 4650 // CHECK-NEXT: "end": { 4651 // CHECK-NEXT: "offset": {{[0-9]+}}, 4652 // CHECK-NEXT: "col": 3, 4653 // CHECK-NEXT: "tokLen": 1 4654 // CHECK-NEXT: } 4655 // CHECK-NEXT: }, 4656 // CHECK-NEXT: "isImplicit": true, 4657 // CHECK-NEXT: "tagUsed": "class", 4658 // CHECK-NEXT: "completeDefinition": true, 4659 // CHECK-NEXT: "definitionData": { 4660 // CHECK-NEXT: "canConstDefaultInit": true, 4661 // CHECK-NEXT: "copyAssign": { 4662 // CHECK-NEXT: "hasConstParam": true, 4663 // CHECK-NEXT: "implicitHasConstParam": true, 4664 // CHECK-NEXT: "needsImplicit": true, 4665 // CHECK-NEXT: "trivial": true 4666 // CHECK-NEXT: }, 4667 // CHECK-NEXT: "copyCtor": { 4668 // CHECK-NEXT: "hasConstParam": true, 4669 // CHECK-NEXT: "implicitHasConstParam": true, 4670 // CHECK-NEXT: "needsImplicit": true, 4671 // CHECK-NEXT: "simple": true, 4672 // CHECK-NEXT: "trivial": true 4673 // CHECK-NEXT: }, 4674 // CHECK-NEXT: "defaultCtor": { 4675 // CHECK-NEXT: "defaultedIsConstexpr": true 4676 // CHECK-NEXT: }, 4677 // CHECK-NEXT: "dtor": { 4678 // CHECK-NEXT: "irrelevant": true, 4679 // CHECK-NEXT: "needsImplicit": true, 4680 // CHECK-NEXT: "simple": true, 4681 // CHECK-NEXT: "trivial": true 4682 // CHECK-NEXT: }, 4683 // CHECK-NEXT: "isEmpty": true, 4684 // CHECK-NEXT: "isLambda": true, 4685 // CHECK-NEXT: "isLiteral": true, 4686 // CHECK-NEXT: "isStandardLayout": true, 4687 // CHECK-NEXT: "isTriviallyCopyable": true, 4688 // CHECK-NEXT: "moveAssign": {}, 4689 // CHECK-NEXT: "moveCtor": { 4690 // CHECK-NEXT: "exists": true, 4691 // CHECK-NEXT: "needsImplicit": true, 4692 // CHECK-NEXT: "simple": true, 4693 // CHECK-NEXT: "trivial": true 4694 // CHECK-NEXT: } 4695 // CHECK-NEXT: }, 4696 // CHECK-NEXT: "inner": [ 4697 // CHECK-NEXT: { 4698 // CHECK-NEXT: "id": "0x{{.*}}", 4699 // CHECK-NEXT: "kind": "CXXMethodDecl", 4700 // CHECK-NEXT: "loc": { 4701 // CHECK-NEXT: "offset": {{[0-9]+}}, 4702 // CHECK-NEXT: "col": 3, 4703 // CHECK-NEXT: "tokLen": 1 4704 // CHECK-NEXT: }, 4705 // CHECK-NEXT: "range": { 4706 // CHECK-NEXT: "begin": { 4707 // CHECK-NEXT: "offset": {{[0-9]+}}, 4708 // CHECK-NEXT: "col": 16, 4709 // CHECK-NEXT: "tokLen": 1 4710 // CHECK-NEXT: }, 4711 // CHECK-NEXT: "end": { 4712 // CHECK-NEXT: "offset": {{[0-9]+}}, 4713 // CHECK-NEXT: "col": 18, 4714 // CHECK-NEXT: "tokLen": 1 4715 // CHECK-NEXT: } 4716 // CHECK-NEXT: }, 4717 // CHECK-NEXT: "name": "operator()", 4718 // CHECK-NEXT: "type": { 4719 // CHECK-NEXT: "qualType": "auto (int, ...) const" 4720 // CHECK-NEXT: }, 4721 // CHECK-NEXT: "inline": true, 4722 // CHECK-NEXT: "variadic": true, 4723 // CHECK-NEXT: "inner": [ 4724 // CHECK-NEXT: { 4725 // CHECK-NEXT: "id": "0x{{.*}}", 4726 // CHECK-NEXT: "kind": "ParmVarDecl", 4727 // CHECK-NEXT: "loc": { 4728 // CHECK-NEXT: "offset": {{[0-9]+}}, 4729 // CHECK-NEXT: "col": 10, 4730 // CHECK-NEXT: "tokLen": 1 4731 // CHECK-NEXT: }, 4732 // CHECK-NEXT: "range": { 4733 // CHECK-NEXT: "begin": { 4734 // CHECK-NEXT: "offset": {{[0-9]+}}, 4735 // CHECK-NEXT: "col": 6, 4736 // CHECK-NEXT: "tokLen": 3 4737 // CHECK-NEXT: }, 4738 // CHECK-NEXT: "end": { 4739 // CHECK-NEXT: "offset": {{[0-9]+}}, 4740 // CHECK-NEXT: "col": 10, 4741 // CHECK-NEXT: "tokLen": 1 4742 // CHECK-NEXT: } 4743 // CHECK-NEXT: }, 4744 // CHECK-NEXT: "name": "a", 4745 // CHECK-NEXT: "type": { 4746 // CHECK-NEXT: "qualType": "int" 4747 // CHECK-NEXT: } 4748 // CHECK-NEXT: }, 4749 // CHECK-NEXT: { 4750 // CHECK-NEXT: "id": "0x{{.*}}", 4751 // CHECK-NEXT: "kind": "CompoundStmt", 4752 // CHECK-NEXT: "range": { 4753 // CHECK-NEXT: "begin": { 4754 // CHECK-NEXT: "offset": {{[0-9]+}}, 4755 // CHECK-NEXT: "col": 17, 4756 // CHECK-NEXT: "tokLen": 1 4757 // CHECK-NEXT: }, 4758 // CHECK-NEXT: "end": { 4759 // CHECK-NEXT: "offset": {{[0-9]+}}, 4760 // CHECK-NEXT: "col": 18, 4761 // CHECK-NEXT: "tokLen": 1 4762 // CHECK-NEXT: } 4763 // CHECK-NEXT: } 4764 // CHECK-NEXT: } 4765 // CHECK-NEXT: ] 4766 // CHECK-NEXT: }, 4767 // CHECK-NEXT: { 4768 // CHECK-NEXT: "id": "0x{{.*}}", 4769 // CHECK-NEXT: "kind": "CXXConversionDecl", 4770 // CHECK-NEXT: "loc": { 4771 // CHECK-NEXT: "offset": {{[0-9]+}}, 4772 // CHECK-NEXT: "col": 3, 4773 // CHECK-NEXT: "tokLen": 1 4774 // CHECK-NEXT: }, 4775 // CHECK-NEXT: "range": { 4776 // CHECK-NEXT: "begin": { 4777 // CHECK-NEXT: "offset": {{[0-9]+}}, 4778 // CHECK-NEXT: "col": 3, 4779 // CHECK-NEXT: "tokLen": 1 4780 // CHECK-NEXT: }, 4781 // CHECK-NEXT: "end": { 4782 // CHECK-NEXT: "offset": {{[0-9]+}}, 4783 // CHECK-NEXT: "col": 18, 4784 // CHECK-NEXT: "tokLen": 1 4785 // CHECK-NEXT: } 4786 // CHECK-NEXT: }, 4787 // CHECK-NEXT: "isImplicit": true, 4788 // CHECK-NEXT: "name": "operator auto (*)(int, ...)", 4789 // CHECK-NEXT: "type": { 4790 // CHECK-NEXT: "qualType": "auto (*() const noexcept)(int, ...)" 4791 // CHECK-NEXT: }, 4792 // CHECK-NEXT: "inline": true, 4793 // CHECK-NEXT: "constexpr": true 4794 // CHECK-NEXT: }, 4795 // CHECK-NEXT: { 4796 // CHECK-NEXT: "id": "0x{{.*}}", 4797 // CHECK-NEXT: "kind": "CXXMethodDecl", 4798 // CHECK-NEXT: "loc": { 4799 // CHECK-NEXT: "offset": {{[0-9]+}}, 4800 // CHECK-NEXT: "col": 3, 4801 // CHECK-NEXT: "tokLen": 1 4802 // CHECK-NEXT: }, 4803 // CHECK-NEXT: "range": { 4804 // CHECK-NEXT: "begin": { 4805 // CHECK-NEXT: "offset": {{[0-9]+}}, 4806 // CHECK-NEXT: "col": 3, 4807 // CHECK-NEXT: "tokLen": 1 4808 // CHECK-NEXT: }, 4809 // CHECK-NEXT: "end": { 4810 // CHECK-NEXT: "offset": {{[0-9]+}}, 4811 // CHECK-NEXT: "col": 18, 4812 // CHECK-NEXT: "tokLen": 1 4813 // CHECK-NEXT: } 4814 // CHECK-NEXT: }, 4815 // CHECK-NEXT: "isImplicit": true, 4816 // CHECK-NEXT: "name": "__invoke", 4817 // CHECK-NEXT: "type": { 4818 // CHECK-NEXT: "qualType": "auto (int, ...)" 4819 // CHECK-NEXT: }, 4820 // CHECK-NEXT: "storageClass": "static", 4821 // CHECK-NEXT: "inline": true, 4822 // CHECK-NEXT: "variadic": true, 4823 // CHECK-NEXT: "inner": [ 4824 // CHECK-NEXT: { 4825 // CHECK-NEXT: "id": "0x{{.*}}", 4826 // CHECK-NEXT: "kind": "ParmVarDecl", 4827 // CHECK-NEXT: "loc": { 4828 // CHECK-NEXT: "offset": {{[0-9]+}}, 4829 // CHECK-NEXT: "col": 10, 4830 // CHECK-NEXT: "tokLen": 1 4831 // CHECK-NEXT: }, 4832 // CHECK-NEXT: "range": { 4833 // CHECK-NEXT: "begin": { 4834 // CHECK-NEXT: "offset": {{[0-9]+}}, 4835 // CHECK-NEXT: "col": 6, 4836 // CHECK-NEXT: "tokLen": 3 4837 // CHECK-NEXT: }, 4838 // CHECK-NEXT: "end": { 4839 // CHECK-NEXT: "offset": {{[0-9]+}}, 4840 // CHECK-NEXT: "col": 10, 4841 // CHECK-NEXT: "tokLen": 1 4842 // CHECK-NEXT: } 4843 // CHECK-NEXT: }, 4844 // CHECK-NEXT: "name": "a", 4845 // CHECK-NEXT: "type": { 4846 // CHECK-NEXT: "qualType": "int" 4847 // CHECK-NEXT: } 4848 // CHECK-NEXT: } 4849 // CHECK-NEXT: ] 4850 // CHECK-NEXT: } 4851 // CHECK-NEXT: ] 4852 // CHECK-NEXT: }, 4853 // CHECK-NEXT: { 4854 // CHECK-NEXT: "id": "0x{{.*}}", 4855 // CHECK-NEXT: "kind": "CompoundStmt", 4856 // CHECK-NEXT: "range": { 4857 // CHECK-NEXT: "begin": { 4858 // CHECK-NEXT: "offset": {{[0-9]+}}, 4859 // CHECK-NEXT: "col": 17, 4860 // CHECK-NEXT: "tokLen": 1 4861 // CHECK-NEXT: }, 4862 // CHECK-NEXT: "end": { 4863 // CHECK-NEXT: "offset": {{[0-9]+}}, 4864 // CHECK-NEXT: "col": 18, 4865 // CHECK-NEXT: "tokLen": 1 4866 // CHECK-NEXT: } 4867 // CHECK-NEXT: } 4868 // CHECK-NEXT: } 4869 // CHECK-NEXT: ] 4870 // CHECK-NEXT: }, 4871 // CHECK-NEXT: { 4872 // CHECK-NEXT: "id": "0x{{.*}}", 4873 // CHECK-NEXT: "kind": "LambdaExpr", 4874 // CHECK-NEXT: "range": { 4875 // CHECK-NEXT: "begin": { 4876 // CHECK-NEXT: "offset": {{[0-9]+}}, 4877 // CHECK-NEXT: "line": 107, 4878 // CHECK-NEXT: "col": 3, 4879 // CHECK-NEXT: "tokLen": 1 4880 // CHECK-NEXT: }, 4881 // CHECK-NEXT: "end": { 4882 // CHECK-NEXT: "offset": {{[0-9]+}}, 4883 // CHECK-NEXT: "col": 10, 4884 // CHECK-NEXT: "tokLen": 1 4885 // CHECK-NEXT: } 4886 // CHECK-NEXT: }, 4887 // CHECK-NEXT: "type": { 4888 // CHECK-NEXT: "qualType": "(lambda at {{.*}}:107:3)" 4889 // CHECK-NEXT: }, 4890 // CHECK-NEXT: "valueCategory": "prvalue", 4891 // CHECK-NEXT: "inner": [ 4892 // CHECK-NEXT: { 4893 // CHECK-NEXT: "id": "0x{{.*}}", 4894 // CHECK-NEXT: "kind": "CXXRecordDecl", 4895 // CHECK-NEXT: "loc": { 4896 // CHECK-NEXT: "offset": {{[0-9]+}}, 4897 // CHECK-NEXT: "col": 3, 4898 // CHECK-NEXT: "tokLen": 1 4899 // CHECK-NEXT: }, 4900 // CHECK-NEXT: "range": { 4901 // CHECK-NEXT: "begin": { 4902 // CHECK-NEXT: "offset": {{[0-9]+}}, 4903 // CHECK-NEXT: "col": 3, 4904 // CHECK-NEXT: "tokLen": 1 4905 // CHECK-NEXT: }, 4906 // CHECK-NEXT: "end": { 4907 // CHECK-NEXT: "offset": {{[0-9]+}}, 4908 // CHECK-NEXT: "col": 3, 4909 // CHECK-NEXT: "tokLen": 1 4910 // CHECK-NEXT: } 4911 // CHECK-NEXT: }, 4912 // CHECK-NEXT: "isImplicit": true, 4913 // CHECK-NEXT: "tagUsed": "class", 4914 // CHECK-NEXT: "completeDefinition": true, 4915 // CHECK-NEXT: "definitionData": { 4916 // CHECK-NEXT: "canConstDefaultInit": true, 4917 // CHECK-NEXT: "copyAssign": { 4918 // CHECK-NEXT: "hasConstParam": true, 4919 // CHECK-NEXT: "implicitHasConstParam": true, 4920 // CHECK-NEXT: "needsImplicit": true, 4921 // CHECK-NEXT: "trivial": true 4922 // CHECK-NEXT: }, 4923 // CHECK-NEXT: "copyCtor": { 4924 // CHECK-NEXT: "hasConstParam": true, 4925 // CHECK-NEXT: "implicitHasConstParam": true, 4926 // CHECK-NEXT: "needsImplicit": true, 4927 // CHECK-NEXT: "simple": true, 4928 // CHECK-NEXT: "trivial": true 4929 // CHECK-NEXT: }, 4930 // CHECK-NEXT: "defaultCtor": {}, 4931 // CHECK-NEXT: "dtor": { 4932 // CHECK-NEXT: "irrelevant": true, 4933 // CHECK-NEXT: "needsImplicit": true, 4934 // CHECK-NEXT: "simple": true, 4935 // CHECK-NEXT: "trivial": true 4936 // CHECK-NEXT: }, 4937 // CHECK-NEXT: "isLambda": true, 4938 // CHECK-NEXT: "isStandardLayout": true, 4939 // CHECK-NEXT: "isTriviallyCopyable": true, 4940 // CHECK-NEXT: "moveAssign": {}, 4941 // CHECK-NEXT: "moveCtor": { 4942 // CHECK-NEXT: "exists": true, 4943 // CHECK-NEXT: "needsImplicit": true, 4944 // CHECK-NEXT: "simple": true, 4945 // CHECK-NEXT: "trivial": true 4946 // CHECK-NEXT: } 4947 // CHECK-NEXT: }, 4948 // CHECK-NEXT: "inner": [ 4949 // CHECK-NEXT: { 4950 // CHECK-NEXT: "id": "0x{{.*}}", 4951 // CHECK-NEXT: "kind": "CXXMethodDecl", 4952 // CHECK-NEXT: "loc": { 4953 // CHECK-NEXT: "offset": {{[0-9]+}}, 4954 // CHECK-NEXT: "col": 3, 4955 // CHECK-NEXT: "tokLen": 1 4956 // CHECK-NEXT: }, 4957 // CHECK-NEXT: "range": { 4958 // CHECK-NEXT: "begin": { 4959 // CHECK-NEXT: "offset": {{[0-9]+}}, 4960 // CHECK-NEXT: "col": 8, 4961 // CHECK-NEXT: "tokLen": 1 4962 // CHECK-NEXT: }, 4963 // CHECK-NEXT: "end": { 4964 // CHECK-NEXT: "offset": {{[0-9]+}}, 4965 // CHECK-NEXT: "col": 10, 4966 // CHECK-NEXT: "tokLen": 1 4967 // CHECK-NEXT: } 4968 // CHECK-NEXT: }, 4969 // CHECK-NEXT: "name": "operator()", 4970 // CHECK-NEXT: "type": { 4971 // CHECK-NEXT: "qualType": "auto () const -> auto" 4972 // CHECK-NEXT: }, 4973 // CHECK-NEXT: "inline": true, 4974 // CHECK-NEXT: "inner": [ 4975 // CHECK-NEXT: { 4976 // CHECK-NEXT: "id": "0x{{.*}}", 4977 // CHECK-NEXT: "kind": "CompoundStmt", 4978 // CHECK-NEXT: "range": { 4979 // CHECK-NEXT: "begin": { 4980 // CHECK-NEXT: "offset": {{[0-9]+}}, 4981 // CHECK-NEXT: "col": 9, 4982 // CHECK-NEXT: "tokLen": 1 4983 // CHECK-NEXT: }, 4984 // CHECK-NEXT: "end": { 4985 // CHECK-NEXT: "offset": {{[0-9]+}}, 4986 // CHECK-NEXT: "col": 10, 4987 // CHECK-NEXT: "tokLen": 1 4988 // CHECK-NEXT: } 4989 // CHECK-NEXT: } 4990 // CHECK-NEXT: } 4991 // CHECK-NEXT: ] 4992 // CHECK-NEXT: }, 4993 // CHECK-NEXT: { 4994 // CHECK-NEXT: "id": "0x{{.*}}", 4995 // CHECK-NEXT: "kind": "FieldDecl", 4996 // CHECK-NEXT: "loc": { 4997 // CHECK-NEXT: "offset": {{[0-9]+}}, 4998 // CHECK-NEXT: "col": 4, 4999 // CHECK-NEXT: "tokLen": 1 5000 // CHECK-NEXT: }, 5001 // CHECK-NEXT: "range": { 5002 // CHECK-NEXT: "begin": { 5003 // CHECK-NEXT: "offset": {{[0-9]+}}, 5004 // CHECK-NEXT: "col": 4, 5005 // CHECK-NEXT: "tokLen": 1 5006 // CHECK-NEXT: }, 5007 // CHECK-NEXT: "end": { 5008 // CHECK-NEXT: "offset": {{[0-9]+}}, 5009 // CHECK-NEXT: "col": 4, 5010 // CHECK-NEXT: "tokLen": 1 5011 // CHECK-NEXT: } 5012 // CHECK-NEXT: }, 5013 // CHECK-NEXT: "isImplicit": true, 5014 // CHECK-NEXT: "type": { 5015 // CHECK-NEXT: "qualType": "Ts..." 5016 // CHECK-NEXT: } 5017 // CHECK-NEXT: } 5018 // CHECK-NEXT: ] 5019 // CHECK-NEXT: }, 5020 // CHECK-NEXT: { 5021 // CHECK-NEXT: "id": "0x{{.*}}", 5022 // CHECK-NEXT: "kind": "ParenListExpr", 5023 // CHECK-NEXT: "range": { 5024 // CHECK-NEXT: "begin": { 5025 // CHECK-NEXT: "offset": {{[0-9]+}}, 5026 // CHECK-NEXT: "col": 4, 5027 // CHECK-NEXT: "tokLen": 1 5028 // CHECK-NEXT: }, 5029 // CHECK-NEXT: "end": { 5030 // CHECK-NEXT: "offset": {{[0-9]+}}, 5031 // CHECK-NEXT: "col": 4, 5032 // CHECK-NEXT: "tokLen": 1 5033 // CHECK-NEXT: } 5034 // CHECK-NEXT: }, 5035 // CHECK-NEXT: "type": { 5036 // CHECK-NEXT: "qualType": "NULL TYPE" 5037 // CHECK-NEXT: }, 5038 // CHECK-NEXT: "valueCategory": "prvalue", 5039 // CHECK-NEXT: "inner": [ 5040 // CHECK-NEXT: { 5041 // CHECK-NEXT: "id": "0x{{.*}}", 5042 // CHECK-NEXT: "kind": "DeclRefExpr", 5043 // CHECK-NEXT: "range": { 5044 // CHECK-NEXT: "begin": { 5045 // CHECK-NEXT: "offset": {{[0-9]+}}, 5046 // CHECK-NEXT: "col": 4, 5047 // CHECK-NEXT: "tokLen": 1 5048 // CHECK-NEXT: }, 5049 // CHECK-NEXT: "end": { 5050 // CHECK-NEXT: "offset": {{[0-9]+}}, 5051 // CHECK-NEXT: "col": 4, 5052 // CHECK-NEXT: "tokLen": 1 5053 // CHECK-NEXT: } 5054 // CHECK-NEXT: }, 5055 // CHECK-NEXT: "type": { 5056 // CHECK-NEXT: "qualType": "Ts" 5057 // CHECK-NEXT: }, 5058 // CHECK-NEXT: "valueCategory": "lvalue", 5059 // CHECK-NEXT: "referencedDecl": { 5060 // CHECK-NEXT: "id": "0x{{.*}}", 5061 // CHECK-NEXT: "kind": "ParmVarDecl", 5062 // CHECK-NEXT: "name": "a", 5063 // CHECK-NEXT: "type": { 5064 // CHECK-NEXT: "qualType": "Ts..." 5065 // CHECK-NEXT: } 5066 // CHECK-NEXT: } 5067 // CHECK-NEXT: } 5068 // CHECK-NEXT: ] 5069 // CHECK-NEXT: }, 5070 // CHECK-NEXT: { 5071 // CHECK-NEXT: "id": "0x{{.*}}", 5072 // CHECK-NEXT: "kind": "CompoundStmt", 5073 // CHECK-NEXT: "range": { 5074 // CHECK-NEXT: "begin": { 5075 // CHECK-NEXT: "offset": {{[0-9]+}}, 5076 // CHECK-NEXT: "col": 9, 5077 // CHECK-NEXT: "tokLen": 1 5078 // CHECK-NEXT: }, 5079 // CHECK-NEXT: "end": { 5080 // CHECK-NEXT: "offset": {{[0-9]+}}, 5081 // CHECK-NEXT: "col": 10, 5082 // CHECK-NEXT: "tokLen": 1 5083 // CHECK-NEXT: } 5084 // CHECK-NEXT: } 5085 // CHECK-NEXT: } 5086 // CHECK-NEXT: ] 5087 // CHECK-NEXT: }, 5088 // CHECK-NEXT: { 5089 // CHECK-NEXT: "id": "0x{{.*}}", 5090 // CHECK-NEXT: "kind": "LambdaExpr", 5091 // CHECK-NEXT: "range": { 5092 // CHECK-NEXT: "begin": { 5093 // CHECK-NEXT: "offset": {{[0-9]+}}, 5094 // CHECK-NEXT: "line": 108, 5095 // CHECK-NEXT: "col": 3, 5096 // CHECK-NEXT: "tokLen": 1 5097 // CHECK-NEXT: }, 5098 // CHECK-NEXT: "end": { 5099 // CHECK-NEXT: "offset": {{[0-9]+}}, 5100 // CHECK-NEXT: "col": 7, 5101 // CHECK-NEXT: "tokLen": 1 5102 // CHECK-NEXT: } 5103 // CHECK-NEXT: }, 5104 // CHECK-NEXT: "type": { 5105 // CHECK-NEXT: "qualType": "(lambda at {{.*}}:108:3)" 5106 // CHECK-NEXT: }, 5107 // CHECK-NEXT: "valueCategory": "prvalue", 5108 // CHECK-NEXT: "inner": [ 5109 // CHECK-NEXT: { 5110 // CHECK-NEXT: "id": "0x{{.*}}", 5111 // CHECK-NEXT: "kind": "CXXRecordDecl", 5112 // CHECK-NEXT: "loc": { 5113 // CHECK-NEXT: "offset": {{[0-9]+}}, 5114 // CHECK-NEXT: "col": 3, 5115 // CHECK-NEXT: "tokLen": 1 5116 // CHECK-NEXT: }, 5117 // CHECK-NEXT: "range": { 5118 // CHECK-NEXT: "begin": { 5119 // CHECK-NEXT: "offset": {{[0-9]+}}, 5120 // CHECK-NEXT: "col": 3, 5121 // CHECK-NEXT: "tokLen": 1 5122 // CHECK-NEXT: }, 5123 // CHECK-NEXT: "end": { 5124 // CHECK-NEXT: "offset": {{[0-9]+}}, 5125 // CHECK-NEXT: "col": 3, 5126 // CHECK-NEXT: "tokLen": 1 5127 // CHECK-NEXT: } 5128 // CHECK-NEXT: }, 5129 // CHECK-NEXT: "isImplicit": true, 5130 // CHECK-NEXT: "tagUsed": "class", 5131 // CHECK-NEXT: "completeDefinition": true, 5132 // CHECK-NEXT: "definitionData": { 5133 // CHECK-NEXT: "canConstDefaultInit": true, 5134 // CHECK-NEXT: "copyAssign": { 5135 // CHECK-NEXT: "hasConstParam": true, 5136 // CHECK-NEXT: "implicitHasConstParam": true, 5137 // CHECK-NEXT: "needsImplicit": true, 5138 // CHECK-NEXT: "trivial": true 5139 // CHECK-NEXT: }, 5140 // CHECK-NEXT: "copyCtor": { 5141 // CHECK-NEXT: "hasConstParam": true, 5142 // CHECK-NEXT: "implicitHasConstParam": true, 5143 // CHECK-NEXT: "needsImplicit": true, 5144 // CHECK-NEXT: "simple": true, 5145 // CHECK-NEXT: "trivial": true 5146 // CHECK-NEXT: }, 5147 // CHECK-NEXT: "defaultCtor": { 5148 // CHECK-NEXT: "defaultedIsConstexpr": true 5149 // CHECK-NEXT: }, 5150 // CHECK-NEXT: "dtor": { 5151 // CHECK-NEXT: "irrelevant": true, 5152 // CHECK-NEXT: "needsImplicit": true, 5153 // CHECK-NEXT: "simple": true, 5154 // CHECK-NEXT: "trivial": true 5155 // CHECK-NEXT: }, 5156 // CHECK-NEXT: "isEmpty": true, 5157 // CHECK-NEXT: "isLambda": true, 5158 // CHECK-NEXT: "isLiteral": true, 5159 // CHECK-NEXT: "isStandardLayout": true, 5160 // CHECK-NEXT: "isTriviallyCopyable": true, 5161 // CHECK-NEXT: "moveAssign": {}, 5162 // CHECK-NEXT: "moveCtor": { 5163 // CHECK-NEXT: "exists": true, 5164 // CHECK-NEXT: "needsImplicit": true, 5165 // CHECK-NEXT: "simple": true, 5166 // CHECK-NEXT: "trivial": true 5167 // CHECK-NEXT: } 5168 // CHECK-NEXT: }, 5169 // CHECK-NEXT: "inner": [ 5170 // CHECK-NEXT: { 5171 // CHECK-NEXT: "id": "0x{{.*}}", 5172 // CHECK-NEXT: "kind": "CXXMethodDecl", 5173 // CHECK-NEXT: "loc": { 5174 // CHECK-NEXT: "offset": {{[0-9]+}}, 5175 // CHECK-NEXT: "col": 3, 5176 // CHECK-NEXT: "tokLen": 1 5177 // CHECK-NEXT: }, 5178 // CHECK-NEXT: "range": { 5179 // CHECK-NEXT: "begin": { 5180 // CHECK-NEXT: "offset": {{[0-9]+}}, 5181 // CHECK-NEXT: "col": 5, 5182 // CHECK-NEXT: "tokLen": 1 5183 // CHECK-NEXT: }, 5184 // CHECK-NEXT: "end": { 5185 // CHECK-NEXT: "offset": {{[0-9]+}}, 5186 // CHECK-NEXT: "col": 7, 5187 // CHECK-NEXT: "tokLen": 1 5188 // CHECK-NEXT: } 5189 // CHECK-NEXT: }, 5190 // CHECK-NEXT: "name": "operator()", 5191 // CHECK-NEXT: "type": { 5192 // CHECK-NEXT: "qualType": "auto () const -> auto" 5193 // CHECK-NEXT: }, 5194 // CHECK-NEXT: "inline": true, 5195 // CHECK-NEXT: "inner": [ 5196 // CHECK-NEXT: { 5197 // CHECK-NEXT: "id": "0x{{.*}}", 5198 // CHECK-NEXT: "kind": "CompoundStmt", 5199 // CHECK-NEXT: "range": { 5200 // CHECK-NEXT: "begin": { 5201 // CHECK-NEXT: "offset": {{[0-9]+}}, 5202 // CHECK-NEXT: "col": 6, 5203 // CHECK-NEXT: "tokLen": 1 5204 // CHECK-NEXT: }, 5205 // CHECK-NEXT: "end": { 5206 // CHECK-NEXT: "offset": {{[0-9]+}}, 5207 // CHECK-NEXT: "col": 7, 5208 // CHECK-NEXT: "tokLen": 1 5209 // CHECK-NEXT: } 5210 // CHECK-NEXT: } 5211 // CHECK-NEXT: } 5212 // CHECK-NEXT: ] 5213 // CHECK-NEXT: } 5214 // CHECK-NEXT: ] 5215 // CHECK-NEXT: }, 5216 // CHECK-NEXT: { 5217 // CHECK-NEXT: "id": "0x{{.*}}", 5218 // CHECK-NEXT: "kind": "CompoundStmt", 5219 // CHECK-NEXT: "range": { 5220 // CHECK-NEXT: "begin": { 5221 // CHECK-NEXT: "offset": {{[0-9]+}}, 5222 // CHECK-NEXT: "col": 6, 5223 // CHECK-NEXT: "tokLen": 1 5224 // CHECK-NEXT: }, 5225 // CHECK-NEXT: "end": { 5226 // CHECK-NEXT: "offset": {{[0-9]+}}, 5227 // CHECK-NEXT: "col": 7, 5228 // CHECK-NEXT: "tokLen": 1 5229 // CHECK-NEXT: } 5230 // CHECK-NEXT: } 5231 // CHECK-NEXT: } 5232 // CHECK-NEXT: ] 5233 // CHECK-NEXT: }, 5234 // CHECK-NEXT: { 5235 // CHECK-NEXT: "id": "0x{{.*}}", 5236 // CHECK-NEXT: "kind": "LambdaExpr", 5237 // CHECK-NEXT: "range": { 5238 // CHECK-NEXT: "begin": { 5239 // CHECK-NEXT: "offset": {{[0-9]+}}, 5240 // CHECK-NEXT: "line": 109, 5241 // CHECK-NEXT: "col": 3, 5242 // CHECK-NEXT: "tokLen": 1 5243 // CHECK-NEXT: }, 5244 // CHECK-NEXT: "end": { 5245 // CHECK-NEXT: "offset": {{[0-9]+}}, 5246 // CHECK-NEXT: "col": 19, 5247 // CHECK-NEXT: "tokLen": 1 5248 // CHECK-NEXT: } 5249 // CHECK-NEXT: }, 5250 // CHECK-NEXT: "type": { 5251 // CHECK-NEXT: "qualType": "(lambda at {{.*}}:109:3)" 5252 // CHECK-NEXT: }, 5253 // CHECK-NEXT: "valueCategory": "prvalue", 5254 // CHECK-NEXT: "inner": [ 5255 // CHECK-NEXT: { 5256 // CHECK-NEXT: "id": "0x{{.*}}", 5257 // CHECK-NEXT: "kind": "CXXRecordDecl", 5258 // CHECK-NEXT: "loc": { 5259 // CHECK-NEXT: "offset": {{[0-9]+}}, 5260 // CHECK-NEXT: "col": 3, 5261 // CHECK-NEXT: "tokLen": 1 5262 // CHECK-NEXT: }, 5263 // CHECK-NEXT: "range": { 5264 // CHECK-NEXT: "begin": { 5265 // CHECK-NEXT: "offset": {{[0-9]+}}, 5266 // CHECK-NEXT: "col": 3, 5267 // CHECK-NEXT: "tokLen": 1 5268 // CHECK-NEXT: }, 5269 // CHECK-NEXT: "end": { 5270 // CHECK-NEXT: "offset": {{[0-9]+}}, 5271 // CHECK-NEXT: "col": 3, 5272 // CHECK-NEXT: "tokLen": 1 5273 // CHECK-NEXT: } 5274 // CHECK-NEXT: }, 5275 // CHECK-NEXT: "isImplicit": true, 5276 // CHECK-NEXT: "tagUsed": "class", 5277 // CHECK-NEXT: "completeDefinition": true, 5278 // CHECK-NEXT: "definitionData": { 5279 // CHECK-NEXT: "canConstDefaultInit": true, 5280 // CHECK-NEXT: "copyAssign": { 5281 // CHECK-NEXT: "hasConstParam": true, 5282 // CHECK-NEXT: "implicitHasConstParam": true, 5283 // CHECK-NEXT: "needsImplicit": true, 5284 // CHECK-NEXT: "trivial": true 5285 // CHECK-NEXT: }, 5286 // CHECK-NEXT: "copyCtor": { 5287 // CHECK-NEXT: "hasConstParam": true, 5288 // CHECK-NEXT: "implicitHasConstParam": true, 5289 // CHECK-NEXT: "needsImplicit": true, 5290 // CHECK-NEXT: "simple": true, 5291 // CHECK-NEXT: "trivial": true 5292 // CHECK-NEXT: }, 5293 // CHECK-NEXT: "defaultCtor": { 5294 // CHECK-NEXT: "defaultedIsConstexpr": true 5295 // CHECK-NEXT: }, 5296 // CHECK-NEXT: "dtor": { 5297 // CHECK-NEXT: "irrelevant": true, 5298 // CHECK-NEXT: "needsImplicit": true, 5299 // CHECK-NEXT: "simple": true, 5300 // CHECK-NEXT: "trivial": true 5301 // CHECK-NEXT: }, 5302 // CHECK-NEXT: "isEmpty": true, 5303 // CHECK-NEXT: "isLambda": true, 5304 // CHECK-NEXT: "isLiteral": true, 5305 // CHECK-NEXT: "isStandardLayout": true, 5306 // CHECK-NEXT: "isTriviallyCopyable": true, 5307 // CHECK-NEXT: "moveAssign": {}, 5308 // CHECK-NEXT: "moveCtor": { 5309 // CHECK-NEXT: "exists": true, 5310 // CHECK-NEXT: "needsImplicit": true, 5311 // CHECK-NEXT: "simple": true, 5312 // CHECK-NEXT: "trivial": true 5313 // CHECK-NEXT: } 5314 // CHECK-NEXT: }, 5315 // CHECK-NEXT: "inner": [ 5316 // CHECK-NEXT: { 5317 // CHECK-NEXT: "id": "0x{{.*}}", 5318 // CHECK-NEXT: "kind": "CXXMethodDecl", 5319 // CHECK-NEXT: "loc": { 5320 // CHECK-NEXT: "offset": {{[0-9]+}}, 5321 // CHECK-NEXT: "col": 3, 5322 // CHECK-NEXT: "tokLen": 1 5323 // CHECK-NEXT: }, 5324 // CHECK-NEXT: "range": { 5325 // CHECK-NEXT: "begin": { 5326 // CHECK-NEXT: "offset": {{[0-9]+}}, 5327 // CHECK-NEXT: "col": 5, 5328 // CHECK-NEXT: "tokLen": 1 5329 // CHECK-NEXT: }, 5330 // CHECK-NEXT: "end": { 5331 // CHECK-NEXT: "offset": {{[0-9]+}}, 5332 // CHECK-NEXT: "col": 19, 5333 // CHECK-NEXT: "tokLen": 1 5334 // CHECK-NEXT: } 5335 // CHECK-NEXT: }, 5336 // CHECK-NEXT: "name": "operator()", 5337 // CHECK-NEXT: "type": { 5338 // CHECK-NEXT: "qualType": "auto () const -> auto" 5339 // CHECK-NEXT: }, 5340 // CHECK-NEXT: "inline": true, 5341 // CHECK-NEXT: "inner": [ 5342 // CHECK-NEXT: { 5343 // CHECK-NEXT: "id": "0x{{.*}}", 5344 // CHECK-NEXT: "kind": "CompoundStmt", 5345 // CHECK-NEXT: "range": { 5346 // CHECK-NEXT: "begin": { 5347 // CHECK-NEXT: "offset": {{[0-9]+}}, 5348 // CHECK-NEXT: "col": 7, 5349 // CHECK-NEXT: "tokLen": 1 5350 // CHECK-NEXT: }, 5351 // CHECK-NEXT: "end": { 5352 // CHECK-NEXT: "offset": {{[0-9]+}}, 5353 // CHECK-NEXT: "col": 19, 5354 // CHECK-NEXT: "tokLen": 1 5355 // CHECK-NEXT: } 5356 // CHECK-NEXT: }, 5357 // CHECK-NEXT: "inner": [ 5358 // CHECK-NEXT: { 5359 // CHECK-NEXT: "id": "0x{{.*}}", 5360 // CHECK-NEXT: "kind": "ReturnStmt", 5361 // CHECK-NEXT: "range": { 5362 // CHECK-NEXT: "begin": { 5363 // CHECK-NEXT: "offset": {{[0-9]+}}, 5364 // CHECK-NEXT: "col": 9, 5365 // CHECK-NEXT: "tokLen": 6 5366 // CHECK-NEXT: }, 5367 // CHECK-NEXT: "end": { 5368 // CHECK-NEXT: "offset": {{[0-9]+}}, 5369 // CHECK-NEXT: "col": 16, 5370 // CHECK-NEXT: "tokLen": 1 5371 // CHECK-NEXT: } 5372 // CHECK-NEXT: }, 5373 // CHECK-NEXT: "inner": [ 5374 // CHECK-NEXT: { 5375 // CHECK-NEXT: "id": "0x{{.*}}", 5376 // CHECK-NEXT: "kind": "DeclRefExpr", 5377 // CHECK-NEXT: "range": { 5378 // CHECK-NEXT: "begin": { 5379 // CHECK-NEXT: "offset": {{[0-9]+}}, 5380 // CHECK-NEXT: "col": 16, 5381 // CHECK-NEXT: "tokLen": 1 5382 // CHECK-NEXT: }, 5383 // CHECK-NEXT: "end": { 5384 // CHECK-NEXT: "offset": {{[0-9]+}}, 5385 // CHECK-NEXT: "col": 16, 5386 // CHECK-NEXT: "tokLen": 1 5387 // CHECK-NEXT: } 5388 // CHECK-NEXT: }, 5389 // CHECK-NEXT: "type": { 5390 // CHECK-NEXT: "qualType": "const int" 5391 // CHECK-NEXT: }, 5392 // CHECK-NEXT: "valueCategory": "lvalue", 5393 // CHECK-NEXT: "referencedDecl": { 5394 // CHECK-NEXT: "id": "0x{{.*}}", 5395 // CHECK-NEXT: "kind": "VarDecl", 5396 // CHECK-NEXT: "name": "b", 5397 // CHECK-NEXT: "type": { 5398 // CHECK-NEXT: "qualType": "int" 5399 // CHECK-NEXT: } 5400 // CHECK-NEXT: } 5401 // CHECK-NEXT: } 5402 // CHECK-NEXT: ] 5403 // CHECK-NEXT: } 5404 // CHECK-NEXT: ] 5405 // CHECK-NEXT: } 5406 // CHECK-NEXT: ] 5407 // CHECK-NEXT: } 5408 // CHECK-NEXT: ] 5409 // CHECK-NEXT: }, 5410 // CHECK-NEXT: { 5411 // CHECK-NEXT: "id": "0x{{.*}}", 5412 // CHECK-NEXT: "kind": "CompoundStmt", 5413 // CHECK-NEXT: "range": { 5414 // CHECK-NEXT: "begin": { 5415 // CHECK-NEXT: "offset": {{[0-9]+}}, 5416 // CHECK-NEXT: "col": 7, 5417 // CHECK-NEXT: "tokLen": 1 5418 // CHECK-NEXT: }, 5419 // CHECK-NEXT: "end": { 5420 // CHECK-NEXT: "offset": {{[0-9]+}}, 5421 // CHECK-NEXT: "col": 19, 5422 // CHECK-NEXT: "tokLen": 1 5423 // CHECK-NEXT: } 5424 // CHECK-NEXT: }, 5425 // CHECK-NEXT: "inner": [ 5426 // CHECK-NEXT: { 5427 // CHECK-NEXT: "id": "0x{{.*}}", 5428 // CHECK-NEXT: "kind": "ReturnStmt", 5429 // CHECK-NEXT: "range": { 5430 // CHECK-NEXT: "begin": { 5431 // CHECK-NEXT: "offset": {{[0-9]+}}, 5432 // CHECK-NEXT: "col": 9, 5433 // CHECK-NEXT: "tokLen": 6 5434 // CHECK-NEXT: }, 5435 // CHECK-NEXT: "end": { 5436 // CHECK-NEXT: "offset": {{[0-9]+}}, 5437 // CHECK-NEXT: "col": 16, 5438 // CHECK-NEXT: "tokLen": 1 5439 // CHECK-NEXT: } 5440 // CHECK-NEXT: }, 5441 // CHECK-NEXT: "inner": [ 5442 // CHECK-NEXT: { 5443 // CHECK-NEXT: "id": "0x{{.*}}", 5444 // CHECK-NEXT: "kind": "DeclRefExpr", 5445 // CHECK-NEXT: "range": { 5446 // CHECK-NEXT: "begin": { 5447 // CHECK-NEXT: "offset": {{[0-9]+}}, 5448 // CHECK-NEXT: "col": 16, 5449 // CHECK-NEXT: "tokLen": 1 5450 // CHECK-NEXT: }, 5451 // CHECK-NEXT: "end": { 5452 // CHECK-NEXT: "offset": {{[0-9]+}}, 5453 // CHECK-NEXT: "col": 16, 5454 // CHECK-NEXT: "tokLen": 1 5455 // CHECK-NEXT: } 5456 // CHECK-NEXT: }, 5457 // CHECK-NEXT: "type": { 5458 // CHECK-NEXT: "qualType": "const int" 5459 // CHECK-NEXT: }, 5460 // CHECK-NEXT: "valueCategory": "lvalue", 5461 // CHECK-NEXT: "referencedDecl": { 5462 // CHECK-NEXT: "id": "0x{{.*}}", 5463 // CHECK-NEXT: "kind": "VarDecl", 5464 // CHECK-NEXT: "name": "b", 5465 // CHECK-NEXT: "type": { 5466 // CHECK-NEXT: "qualType": "int" 5467 // CHECK-NEXT: } 5468 // CHECK-NEXT: } 5469 // CHECK-NEXT: } 5470 // CHECK-NEXT: ] 5471 // CHECK-NEXT: } 5472 // CHECK-NEXT: ] 5473 // CHECK-NEXT: } 5474 // CHECK-NEXT: ] 5475 // CHECK-NEXT: }, 5476 // CHECK-NEXT: { 5477 // CHECK-NEXT: "id": "0x{{.*}}", 5478 // CHECK-NEXT: "kind": "LambdaExpr", 5479 // CHECK-NEXT: "range": { 5480 // CHECK-NEXT: "begin": { 5481 // CHECK-NEXT: "offset": {{[0-9]+}}, 5482 // CHECK-NEXT: "line": 110, 5483 // CHECK-NEXT: "col": 3, 5484 // CHECK-NEXT: "tokLen": 1 5485 // CHECK-NEXT: }, 5486 // CHECK-NEXT: "end": { 5487 // CHECK-NEXT: "offset": {{[0-9]+}}, 5488 // CHECK-NEXT: "col": 7, 5489 // CHECK-NEXT: "tokLen": 1 5490 // CHECK-NEXT: } 5491 // CHECK-NEXT: }, 5492 // CHECK-NEXT: "type": { 5493 // CHECK-NEXT: "qualType": "(lambda at {{.*}}:110:3)" 5494 // CHECK-NEXT: }, 5495 // CHECK-NEXT: "valueCategory": "prvalue", 5496 // CHECK-NEXT: "inner": [ 5497 // CHECK-NEXT: { 5498 // CHECK-NEXT: "id": "0x{{.*}}", 5499 // CHECK-NEXT: "kind": "CXXRecordDecl", 5500 // CHECK-NEXT: "loc": { 5501 // CHECK-NEXT: "offset": {{[0-9]+}}, 5502 // CHECK-NEXT: "col": 3, 5503 // CHECK-NEXT: "tokLen": 1 5504 // CHECK-NEXT: }, 5505 // CHECK-NEXT: "range": { 5506 // CHECK-NEXT: "begin": { 5507 // CHECK-NEXT: "offset": {{[0-9]+}}, 5508 // CHECK-NEXT: "col": 3, 5509 // CHECK-NEXT: "tokLen": 1 5510 // CHECK-NEXT: }, 5511 // CHECK-NEXT: "end": { 5512 // CHECK-NEXT: "offset": {{[0-9]+}}, 5513 // CHECK-NEXT: "col": 3, 5514 // CHECK-NEXT: "tokLen": 1 5515 // CHECK-NEXT: } 5516 // CHECK-NEXT: }, 5517 // CHECK-NEXT: "isImplicit": true, 5518 // CHECK-NEXT: "tagUsed": "class", 5519 // CHECK-NEXT: "completeDefinition": true, 5520 // CHECK-NEXT: "definitionData": { 5521 // CHECK-NEXT: "canConstDefaultInit": true, 5522 // CHECK-NEXT: "copyAssign": { 5523 // CHECK-NEXT: "hasConstParam": true, 5524 // CHECK-NEXT: "implicitHasConstParam": true, 5525 // CHECK-NEXT: "needsImplicit": true, 5526 // CHECK-NEXT: "trivial": true 5527 // CHECK-NEXT: }, 5528 // CHECK-NEXT: "copyCtor": { 5529 // CHECK-NEXT: "hasConstParam": true, 5530 // CHECK-NEXT: "implicitHasConstParam": true, 5531 // CHECK-NEXT: "needsImplicit": true, 5532 // CHECK-NEXT: "simple": true, 5533 // CHECK-NEXT: "trivial": true 5534 // CHECK-NEXT: }, 5535 // CHECK-NEXT: "defaultCtor": { 5536 // CHECK-NEXT: "defaultedIsConstexpr": true 5537 // CHECK-NEXT: }, 5538 // CHECK-NEXT: "dtor": { 5539 // CHECK-NEXT: "irrelevant": true, 5540 // CHECK-NEXT: "needsImplicit": true, 5541 // CHECK-NEXT: "simple": true, 5542 // CHECK-NEXT: "trivial": true 5543 // CHECK-NEXT: }, 5544 // CHECK-NEXT: "isEmpty": true, 5545 // CHECK-NEXT: "isLambda": true, 5546 // CHECK-NEXT: "isLiteral": true, 5547 // CHECK-NEXT: "isStandardLayout": true, 5548 // CHECK-NEXT: "isTriviallyCopyable": true, 5549 // CHECK-NEXT: "moveAssign": {}, 5550 // CHECK-NEXT: "moveCtor": { 5551 // CHECK-NEXT: "exists": true, 5552 // CHECK-NEXT: "needsImplicit": true, 5553 // CHECK-NEXT: "simple": true, 5554 // CHECK-NEXT: "trivial": true 5555 // CHECK-NEXT: } 5556 // CHECK-NEXT: }, 5557 // CHECK-NEXT: "inner": [ 5558 // CHECK-NEXT: { 5559 // CHECK-NEXT: "id": "0x{{.*}}", 5560 // CHECK-NEXT: "kind": "CXXMethodDecl", 5561 // CHECK-NEXT: "loc": { 5562 // CHECK-NEXT: "offset": {{[0-9]+}}, 5563 // CHECK-NEXT: "col": 3, 5564 // CHECK-NEXT: "tokLen": 1 5565 // CHECK-NEXT: }, 5566 // CHECK-NEXT: "range": { 5567 // CHECK-NEXT: "begin": { 5568 // CHECK-NEXT: "offset": {{[0-9]+}}, 5569 // CHECK-NEXT: "col": 5, 5570 // CHECK-NEXT: "tokLen": 1 5571 // CHECK-NEXT: }, 5572 // CHECK-NEXT: "end": { 5573 // CHECK-NEXT: "offset": {{[0-9]+}}, 5574 // CHECK-NEXT: "col": 7, 5575 // CHECK-NEXT: "tokLen": 1 5576 // CHECK-NEXT: } 5577 // CHECK-NEXT: }, 5578 // CHECK-NEXT: "name": "operator()", 5579 // CHECK-NEXT: "type": { 5580 // CHECK-NEXT: "qualType": "auto () const -> auto" 5581 // CHECK-NEXT: }, 5582 // CHECK-NEXT: "inline": true, 5583 // CHECK-NEXT: "inner": [ 5584 // CHECK-NEXT: { 5585 // CHECK-NEXT: "id": "0x{{.*}}", 5586 // CHECK-NEXT: "kind": "CompoundStmt", 5587 // CHECK-NEXT: "range": { 5588 // CHECK-NEXT: "begin": { 5589 // CHECK-NEXT: "offset": {{[0-9]+}}, 5590 // CHECK-NEXT: "col": 6, 5591 // CHECK-NEXT: "tokLen": 1 5592 // CHECK-NEXT: }, 5593 // CHECK-NEXT: "end": { 5594 // CHECK-NEXT: "offset": {{[0-9]+}}, 5595 // CHECK-NEXT: "col": 7, 5596 // CHECK-NEXT: "tokLen": 1 5597 // CHECK-NEXT: } 5598 // CHECK-NEXT: } 5599 // CHECK-NEXT: } 5600 // CHECK-NEXT: ] 5601 // CHECK-NEXT: } 5602 // CHECK-NEXT: ] 5603 // CHECK-NEXT: }, 5604 // CHECK-NEXT: { 5605 // CHECK-NEXT: "id": "0x{{.*}}", 5606 // CHECK-NEXT: "kind": "CompoundStmt", 5607 // CHECK-NEXT: "range": { 5608 // CHECK-NEXT: "begin": { 5609 // CHECK-NEXT: "offset": {{[0-9]+}}, 5610 // CHECK-NEXT: "col": 6, 5611 // CHECK-NEXT: "tokLen": 1 5612 // CHECK-NEXT: }, 5613 // CHECK-NEXT: "end": { 5614 // CHECK-NEXT: "offset": {{[0-9]+}}, 5615 // CHECK-NEXT: "col": 7, 5616 // CHECK-NEXT: "tokLen": 1 5617 // CHECK-NEXT: } 5618 // CHECK-NEXT: } 5619 // CHECK-NEXT: } 5620 // CHECK-NEXT: ] 5621 // CHECK-NEXT: }, 5622 // CHECK-NEXT: { 5623 // CHECK-NEXT: "id": "0x{{.*}}", 5624 // CHECK-NEXT: "kind": "LambdaExpr", 5625 // CHECK-NEXT: "range": { 5626 // CHECK-NEXT: "begin": { 5627 // CHECK-NEXT: "offset": {{[0-9]+}}, 5628 // CHECK-NEXT: "line": 111, 5629 // CHECK-NEXT: "col": 3, 5630 // CHECK-NEXT: "tokLen": 1 5631 // CHECK-NEXT: }, 5632 // CHECK-NEXT: "end": { 5633 // CHECK-NEXT: "offset": {{[0-9]+}}, 5634 // CHECK-NEXT: "col": 19, 5635 // CHECK-NEXT: "tokLen": 1 5636 // CHECK-NEXT: } 5637 // CHECK-NEXT: }, 5638 // CHECK-NEXT: "type": { 5639 // CHECK-NEXT: "qualType": "(lambda at {{.*}}:111:3)" 5640 // CHECK-NEXT: }, 5641 // CHECK-NEXT: "valueCategory": "prvalue", 5642 // CHECK-NEXT: "inner": [ 5643 // CHECK-NEXT: { 5644 // CHECK-NEXT: "id": "0x{{.*}}", 5645 // CHECK-NEXT: "kind": "CXXRecordDecl", 5646 // CHECK-NEXT: "loc": { 5647 // CHECK-NEXT: "offset": {{[0-9]+}}, 5648 // CHECK-NEXT: "col": 3, 5649 // CHECK-NEXT: "tokLen": 1 5650 // CHECK-NEXT: }, 5651 // CHECK-NEXT: "range": { 5652 // CHECK-NEXT: "begin": { 5653 // CHECK-NEXT: "offset": {{[0-9]+}}, 5654 // CHECK-NEXT: "col": 3, 5655 // CHECK-NEXT: "tokLen": 1 5656 // CHECK-NEXT: }, 5657 // CHECK-NEXT: "end": { 5658 // CHECK-NEXT: "offset": {{[0-9]+}}, 5659 // CHECK-NEXT: "col": 3, 5660 // CHECK-NEXT: "tokLen": 1 5661 // CHECK-NEXT: } 5662 // CHECK-NEXT: }, 5663 // CHECK-NEXT: "isImplicit": true, 5664 // CHECK-NEXT: "tagUsed": "class", 5665 // CHECK-NEXT: "completeDefinition": true, 5666 // CHECK-NEXT: "definitionData": { 5667 // CHECK-NEXT: "canConstDefaultInit": true, 5668 // CHECK-NEXT: "copyAssign": { 5669 // CHECK-NEXT: "hasConstParam": true, 5670 // CHECK-NEXT: "implicitHasConstParam": true, 5671 // CHECK-NEXT: "needsImplicit": true, 5672 // CHECK-NEXT: "trivial": true 5673 // CHECK-NEXT: }, 5674 // CHECK-NEXT: "copyCtor": { 5675 // CHECK-NEXT: "hasConstParam": true, 5676 // CHECK-NEXT: "implicitHasConstParam": true, 5677 // CHECK-NEXT: "needsImplicit": true, 5678 // CHECK-NEXT: "simple": true, 5679 // CHECK-NEXT: "trivial": true 5680 // CHECK-NEXT: }, 5681 // CHECK-NEXT: "defaultCtor": { 5682 // CHECK-NEXT: "defaultedIsConstexpr": true 5683 // CHECK-NEXT: }, 5684 // CHECK-NEXT: "dtor": { 5685 // CHECK-NEXT: "irrelevant": true, 5686 // CHECK-NEXT: "needsImplicit": true, 5687 // CHECK-NEXT: "simple": true, 5688 // CHECK-NEXT: "trivial": true 5689 // CHECK-NEXT: }, 5690 // CHECK-NEXT: "isEmpty": true, 5691 // CHECK-NEXT: "isLambda": true, 5692 // CHECK-NEXT: "isLiteral": true, 5693 // CHECK-NEXT: "isStandardLayout": true, 5694 // CHECK-NEXT: "isTriviallyCopyable": true, 5695 // CHECK-NEXT: "moveAssign": {}, 5696 // CHECK-NEXT: "moveCtor": { 5697 // CHECK-NEXT: "exists": true, 5698 // CHECK-NEXT: "needsImplicit": true, 5699 // CHECK-NEXT: "simple": true, 5700 // CHECK-NEXT: "trivial": true 5701 // CHECK-NEXT: } 5702 // CHECK-NEXT: }, 5703 // CHECK-NEXT: "inner": [ 5704 // CHECK-NEXT: { 5705 // CHECK-NEXT: "id": "0x{{.*}}", 5706 // CHECK-NEXT: "kind": "CXXMethodDecl", 5707 // CHECK-NEXT: "loc": { 5708 // CHECK-NEXT: "offset": {{[0-9]+}}, 5709 // CHECK-NEXT: "col": 3, 5710 // CHECK-NEXT: "tokLen": 1 5711 // CHECK-NEXT: }, 5712 // CHECK-NEXT: "range": { 5713 // CHECK-NEXT: "begin": { 5714 // CHECK-NEXT: "offset": {{[0-9]+}}, 5715 // CHECK-NEXT: "col": 5, 5716 // CHECK-NEXT: "tokLen": 1 5717 // CHECK-NEXT: }, 5718 // CHECK-NEXT: "end": { 5719 // CHECK-NEXT: "offset": {{[0-9]+}}, 5720 // CHECK-NEXT: "col": 19, 5721 // CHECK-NEXT: "tokLen": 1 5722 // CHECK-NEXT: } 5723 // CHECK-NEXT: }, 5724 // CHECK-NEXT: "name": "operator()", 5725 // CHECK-NEXT: "type": { 5726 // CHECK-NEXT: "qualType": "auto () const -> auto" 5727 // CHECK-NEXT: }, 5728 // CHECK-NEXT: "inline": true, 5729 // CHECK-NEXT: "inner": [ 5730 // CHECK-NEXT: { 5731 // CHECK-NEXT: "id": "0x{{.*}}", 5732 // CHECK-NEXT: "kind": "CompoundStmt", 5733 // CHECK-NEXT: "range": { 5734 // CHECK-NEXT: "begin": { 5735 // CHECK-NEXT: "offset": {{[0-9]+}}, 5736 // CHECK-NEXT: "col": 7, 5737 // CHECK-NEXT: "tokLen": 1 5738 // CHECK-NEXT: }, 5739 // CHECK-NEXT: "end": { 5740 // CHECK-NEXT: "offset": {{[0-9]+}}, 5741 // CHECK-NEXT: "col": 19, 5742 // CHECK-NEXT: "tokLen": 1 5743 // CHECK-NEXT: } 5744 // CHECK-NEXT: }, 5745 // CHECK-NEXT: "inner": [ 5746 // CHECK-NEXT: { 5747 // CHECK-NEXT: "id": "0x{{.*}}", 5748 // CHECK-NEXT: "kind": "ReturnStmt", 5749 // CHECK-NEXT: "range": { 5750 // CHECK-NEXT: "begin": { 5751 // CHECK-NEXT: "offset": {{[0-9]+}}, 5752 // CHECK-NEXT: "col": 9, 5753 // CHECK-NEXT: "tokLen": 6 5754 // CHECK-NEXT: }, 5755 // CHECK-NEXT: "end": { 5756 // CHECK-NEXT: "offset": {{[0-9]+}}, 5757 // CHECK-NEXT: "col": 16, 5758 // CHECK-NEXT: "tokLen": 1 5759 // CHECK-NEXT: } 5760 // CHECK-NEXT: }, 5761 // CHECK-NEXT: "inner": [ 5762 // CHECK-NEXT: { 5763 // CHECK-NEXT: "id": "0x{{.*}}", 5764 // CHECK-NEXT: "kind": "DeclRefExpr", 5765 // CHECK-NEXT: "range": { 5766 // CHECK-NEXT: "begin": { 5767 // CHECK-NEXT: "offset": {{[0-9]+}}, 5768 // CHECK-NEXT: "col": 16, 5769 // CHECK-NEXT: "tokLen": 1 5770 // CHECK-NEXT: }, 5771 // CHECK-NEXT: "end": { 5772 // CHECK-NEXT: "offset": {{[0-9]+}}, 5773 // CHECK-NEXT: "col": 16, 5774 // CHECK-NEXT: "tokLen": 1 5775 // CHECK-NEXT: } 5776 // CHECK-NEXT: }, 5777 // CHECK-NEXT: "type": { 5778 // CHECK-NEXT: "qualType": "int" 5779 // CHECK-NEXT: }, 5780 // CHECK-NEXT: "valueCategory": "lvalue", 5781 // CHECK-NEXT: "referencedDecl": { 5782 // CHECK-NEXT: "id": "0x{{.*}}", 5783 // CHECK-NEXT: "kind": "VarDecl", 5784 // CHECK-NEXT: "name": "c", 5785 // CHECK-NEXT: "type": { 5786 // CHECK-NEXT: "qualType": "int" 5787 // CHECK-NEXT: } 5788 // CHECK-NEXT: } 5789 // CHECK-NEXT: } 5790 // CHECK-NEXT: ] 5791 // CHECK-NEXT: } 5792 // CHECK-NEXT: ] 5793 // CHECK-NEXT: } 5794 // CHECK-NEXT: ] 5795 // CHECK-NEXT: } 5796 // CHECK-NEXT: ] 5797 // CHECK-NEXT: }, 5798 // CHECK-NEXT: { 5799 // CHECK-NEXT: "id": "0x{{.*}}", 5800 // CHECK-NEXT: "kind": "CompoundStmt", 5801 // CHECK-NEXT: "range": { 5802 // CHECK-NEXT: "begin": { 5803 // CHECK-NEXT: "offset": {{[0-9]+}}, 5804 // CHECK-NEXT: "col": 7, 5805 // CHECK-NEXT: "tokLen": 1 5806 // CHECK-NEXT: }, 5807 // CHECK-NEXT: "end": { 5808 // CHECK-NEXT: "offset": {{[0-9]+}}, 5809 // CHECK-NEXT: "col": 19, 5810 // CHECK-NEXT: "tokLen": 1 5811 // CHECK-NEXT: } 5812 // CHECK-NEXT: }, 5813 // CHECK-NEXT: "inner": [ 5814 // CHECK-NEXT: { 5815 // CHECK-NEXT: "id": "0x{{.*}}", 5816 // CHECK-NEXT: "kind": "ReturnStmt", 5817 // CHECK-NEXT: "range": { 5818 // CHECK-NEXT: "begin": { 5819 // CHECK-NEXT: "offset": {{[0-9]+}}, 5820 // CHECK-NEXT: "col": 9, 5821 // CHECK-NEXT: "tokLen": 6 5822 // CHECK-NEXT: }, 5823 // CHECK-NEXT: "end": { 5824 // CHECK-NEXT: "offset": {{[0-9]+}}, 5825 // CHECK-NEXT: "col": 16, 5826 // CHECK-NEXT: "tokLen": 1 5827 // CHECK-NEXT: } 5828 // CHECK-NEXT: }, 5829 // CHECK-NEXT: "inner": [ 5830 // CHECK-NEXT: { 5831 // CHECK-NEXT: "id": "0x{{.*}}", 5832 // CHECK-NEXT: "kind": "DeclRefExpr", 5833 // CHECK-NEXT: "range": { 5834 // CHECK-NEXT: "begin": { 5835 // CHECK-NEXT: "offset": {{[0-9]+}}, 5836 // CHECK-NEXT: "col": 16, 5837 // CHECK-NEXT: "tokLen": 1 5838 // CHECK-NEXT: }, 5839 // CHECK-NEXT: "end": { 5840 // CHECK-NEXT: "offset": {{[0-9]+}}, 5841 // CHECK-NEXT: "col": 16, 5842 // CHECK-NEXT: "tokLen": 1 5843 // CHECK-NEXT: } 5844 // CHECK-NEXT: }, 5845 // CHECK-NEXT: "type": { 5846 // CHECK-NEXT: "qualType": "int" 5847 // CHECK-NEXT: }, 5848 // CHECK-NEXT: "valueCategory": "lvalue", 5849 // CHECK-NEXT: "referencedDecl": { 5850 // CHECK-NEXT: "id": "0x{{.*}}", 5851 // CHECK-NEXT: "kind": "VarDecl", 5852 // CHECK-NEXT: "name": "c", 5853 // CHECK-NEXT: "type": { 5854 // CHECK-NEXT: "qualType": "int" 5855 // CHECK-NEXT: } 5856 // CHECK-NEXT: } 5857 // CHECK-NEXT: } 5858 // CHECK-NEXT: ] 5859 // CHECK-NEXT: } 5860 // CHECK-NEXT: ] 5861 // CHECK-NEXT: } 5862 // CHECK-NEXT: ] 5863 // CHECK-NEXT: }, 5864 // CHECK-NEXT: { 5865 // CHECK-NEXT: "id": "0x{{.*}}", 5866 // CHECK-NEXT: "kind": "LambdaExpr", 5867 // CHECK-NEXT: "range": { 5868 // CHECK-NEXT: "begin": { 5869 // CHECK-NEXT: "offset": {{[0-9]+}}, 5870 // CHECK-NEXT: "line": 112, 5871 // CHECK-NEXT: "col": 3, 5872 // CHECK-NEXT: "tokLen": 1 5873 // CHECK-NEXT: }, 5874 // CHECK-NEXT: "end": { 5875 // CHECK-NEXT: "offset": {{[0-9]+}}, 5876 // CHECK-NEXT: "col": 26, 5877 // CHECK-NEXT: "tokLen": 1 5878 // CHECK-NEXT: } 5879 // CHECK-NEXT: }, 5880 // CHECK-NEXT: "type": { 5881 // CHECK-NEXT: "qualType": "(lambda at {{.*}}:112:3)" 5882 // CHECK-NEXT: }, 5883 // CHECK-NEXT: "valueCategory": "prvalue", 5884 // CHECK-NEXT: "inner": [ 5885 // CHECK-NEXT: { 5886 // CHECK-NEXT: "id": "0x{{.*}}", 5887 // CHECK-NEXT: "kind": "CXXRecordDecl", 5888 // CHECK-NEXT: "loc": { 5889 // CHECK-NEXT: "offset": {{[0-9]+}}, 5890 // CHECK-NEXT: "col": 3, 5891 // CHECK-NEXT: "tokLen": 1 5892 // CHECK-NEXT: }, 5893 // CHECK-NEXT: "range": { 5894 // CHECK-NEXT: "begin": { 5895 // CHECK-NEXT: "offset": {{[0-9]+}}, 5896 // CHECK-NEXT: "col": 3, 5897 // CHECK-NEXT: "tokLen": 1 5898 // CHECK-NEXT: }, 5899 // CHECK-NEXT: "end": { 5900 // CHECK-NEXT: "offset": {{[0-9]+}}, 5901 // CHECK-NEXT: "col": 3, 5902 // CHECK-NEXT: "tokLen": 1 5903 // CHECK-NEXT: } 5904 // CHECK-NEXT: }, 5905 // CHECK-NEXT: "isImplicit": true, 5906 // CHECK-NEXT: "tagUsed": "class", 5907 // CHECK-NEXT: "completeDefinition": true, 5908 // CHECK-NEXT: "definitionData": { 5909 // CHECK-NEXT: "canConstDefaultInit": true, 5910 // CHECK-NEXT: "copyAssign": { 5911 // CHECK-NEXT: "hasConstParam": true, 5912 // CHECK-NEXT: "implicitHasConstParam": true, 5913 // CHECK-NEXT: "needsImplicit": true, 5914 // CHECK-NEXT: "trivial": true 5915 // CHECK-NEXT: }, 5916 // CHECK-NEXT: "copyCtor": { 5917 // CHECK-NEXT: "hasConstParam": true, 5918 // CHECK-NEXT: "implicitHasConstParam": true, 5919 // CHECK-NEXT: "needsImplicit": true, 5920 // CHECK-NEXT: "simple": true, 5921 // CHECK-NEXT: "trivial": true 5922 // CHECK-NEXT: }, 5923 // CHECK-NEXT: "defaultCtor": {}, 5924 // CHECK-NEXT: "dtor": { 5925 // CHECK-NEXT: "irrelevant": true, 5926 // CHECK-NEXT: "needsImplicit": true, 5927 // CHECK-NEXT: "simple": true, 5928 // CHECK-NEXT: "trivial": true 5929 // CHECK-NEXT: }, 5930 // CHECK-NEXT: "isLambda": true, 5931 // CHECK-NEXT: "isLiteral": true, 5932 // CHECK-NEXT: "isTriviallyCopyable": true, 5933 // CHECK-NEXT: "moveAssign": {}, 5934 // CHECK-NEXT: "moveCtor": { 5935 // CHECK-NEXT: "exists": true, 5936 // CHECK-NEXT: "needsImplicit": true, 5937 // CHECK-NEXT: "simple": true, 5938 // CHECK-NEXT: "trivial": true 5939 // CHECK-NEXT: } 5940 // CHECK-NEXT: }, 5941 // CHECK-NEXT: "inner": [ 5942 // CHECK-NEXT: { 5943 // CHECK-NEXT: "id": "0x{{.*}}", 5944 // CHECK-NEXT: "kind": "CXXMethodDecl", 5945 // CHECK-NEXT: "loc": { 5946 // CHECK-NEXT: "offset": {{[0-9]+}}, 5947 // CHECK-NEXT: "col": 3, 5948 // CHECK-NEXT: "tokLen": 1 5949 // CHECK-NEXT: }, 5950 // CHECK-NEXT: "range": { 5951 // CHECK-NEXT: "begin": { 5952 // CHECK-NEXT: "offset": {{[0-9]+}}, 5953 // CHECK-NEXT: "col": 9, 5954 // CHECK-NEXT: "tokLen": 1 5955 // CHECK-NEXT: }, 5956 // CHECK-NEXT: "end": { 5957 // CHECK-NEXT: "offset": {{[0-9]+}}, 5958 // CHECK-NEXT: "col": 26, 5959 // CHECK-NEXT: "tokLen": 1 5960 // CHECK-NEXT: } 5961 // CHECK-NEXT: }, 5962 // CHECK-NEXT: "name": "operator()", 5963 // CHECK-NEXT: "type": { 5964 // CHECK-NEXT: "qualType": "auto () const -> auto" 5965 // CHECK-NEXT: }, 5966 // CHECK-NEXT: "inline": true, 5967 // CHECK-NEXT: "inner": [ 5968 // CHECK-NEXT: { 5969 // CHECK-NEXT: "id": "0x{{.*}}", 5970 // CHECK-NEXT: "kind": "CompoundStmt", 5971 // CHECK-NEXT: "range": { 5972 // CHECK-NEXT: "begin": { 5973 // CHECK-NEXT: "offset": {{[0-9]+}}, 5974 // CHECK-NEXT: "col": 10, 5975 // CHECK-NEXT: "tokLen": 1 5976 // CHECK-NEXT: }, 5977 // CHECK-NEXT: "end": { 5978 // CHECK-NEXT: "offset": {{[0-9]+}}, 5979 // CHECK-NEXT: "col": 26, 5980 // CHECK-NEXT: "tokLen": 1 5981 // CHECK-NEXT: } 5982 // CHECK-NEXT: }, 5983 // CHECK-NEXT: "inner": [ 5984 // CHECK-NEXT: { 5985 // CHECK-NEXT: "id": "0x{{.*}}", 5986 // CHECK-NEXT: "kind": "ReturnStmt", 5987 // CHECK-NEXT: "range": { 5988 // CHECK-NEXT: "begin": { 5989 // CHECK-NEXT: "offset": {{[0-9]+}}, 5990 // CHECK-NEXT: "col": 12, 5991 // CHECK-NEXT: "tokLen": 6 5992 // CHECK-NEXT: }, 5993 // CHECK-NEXT: "end": { 5994 // CHECK-NEXT: "offset": {{[0-9]+}}, 5995 // CHECK-NEXT: "col": 23, 5996 // CHECK-NEXT: "tokLen": 1 5997 // CHECK-NEXT: } 5998 // CHECK-NEXT: }, 5999 // CHECK-NEXT: "inner": [ 6000 // CHECK-NEXT: { 6001 // CHECK-NEXT: "id": "0x{{.*}}", 6002 // CHECK-NEXT: "kind": "BinaryOperator", 6003 // CHECK-NEXT: "range": { 6004 // CHECK-NEXT: "begin": { 6005 // CHECK-NEXT: "offset": {{[0-9]+}}, 6006 // CHECK-NEXT: "col": 19, 6007 // CHECK-NEXT: "tokLen": 1 6008 // CHECK-NEXT: }, 6009 // CHECK-NEXT: "end": { 6010 // CHECK-NEXT: "offset": {{[0-9]+}}, 6011 // CHECK-NEXT: "col": 23, 6012 // CHECK-NEXT: "tokLen": 1 6013 // CHECK-NEXT: } 6014 // CHECK-NEXT: }, 6015 // CHECK-NEXT: "type": { 6016 // CHECK-NEXT: "qualType": "int" 6017 // CHECK-NEXT: }, 6018 // CHECK-NEXT: "valueCategory": "prvalue", 6019 // CHECK-NEXT: "opcode": "+", 6020 // CHECK-NEXT: "inner": [ 6021 // CHECK-NEXT: { 6022 // CHECK-NEXT: "id": "0x{{.*}}", 6023 // CHECK-NEXT: "kind": "ImplicitCastExpr", 6024 // CHECK-NEXT: "range": { 6025 // CHECK-NEXT: "begin": { 6026 // CHECK-NEXT: "offset": {{[0-9]+}}, 6027 // CHECK-NEXT: "col": 19, 6028 // CHECK-NEXT: "tokLen": 1 6029 // CHECK-NEXT: }, 6030 // CHECK-NEXT: "end": { 6031 // CHECK-NEXT: "offset": {{[0-9]+}}, 6032 // CHECK-NEXT: "col": 19, 6033 // CHECK-NEXT: "tokLen": 1 6034 // CHECK-NEXT: } 6035 // CHECK-NEXT: }, 6036 // CHECK-NEXT: "type": { 6037 // CHECK-NEXT: "qualType": "int" 6038 // CHECK-NEXT: }, 6039 // CHECK-NEXT: "valueCategory": "prvalue", 6040 // CHECK-NEXT: "castKind": "LValueToRValue", 6041 // CHECK-NEXT: "inner": [ 6042 // CHECK-NEXT: { 6043 // CHECK-NEXT: "id": "0x{{.*}}", 6044 // CHECK-NEXT: "kind": "DeclRefExpr", 6045 // CHECK-NEXT: "range": { 6046 // CHECK-NEXT: "begin": { 6047 // CHECK-NEXT: "offset": {{[0-9]+}}, 6048 // CHECK-NEXT: "col": 19, 6049 // CHECK-NEXT: "tokLen": 1 6050 // CHECK-NEXT: }, 6051 // CHECK-NEXT: "end": { 6052 // CHECK-NEXT: "offset": {{[0-9]+}}, 6053 // CHECK-NEXT: "col": 19, 6054 // CHECK-NEXT: "tokLen": 1 6055 // CHECK-NEXT: } 6056 // CHECK-NEXT: }, 6057 // CHECK-NEXT: "type": { 6058 // CHECK-NEXT: "qualType": "const int" 6059 // CHECK-NEXT: }, 6060 // CHECK-NEXT: "valueCategory": "lvalue", 6061 // CHECK-NEXT: "referencedDecl": { 6062 // CHECK-NEXT: "id": "0x{{.*}}", 6063 // CHECK-NEXT: "kind": "VarDecl", 6064 // CHECK-NEXT: "name": "b", 6065 // CHECK-NEXT: "type": { 6066 // CHECK-NEXT: "qualType": "int" 6067 // CHECK-NEXT: } 6068 // CHECK-NEXT: } 6069 // CHECK-NEXT: } 6070 // CHECK-NEXT: ] 6071 // CHECK-NEXT: }, 6072 // CHECK-NEXT: { 6073 // CHECK-NEXT: "id": "0x{{.*}}", 6074 // CHECK-NEXT: "kind": "ImplicitCastExpr", 6075 // CHECK-NEXT: "range": { 6076 // CHECK-NEXT: "begin": { 6077 // CHECK-NEXT: "offset": {{[0-9]+}}, 6078 // CHECK-NEXT: "col": 23, 6079 // CHECK-NEXT: "tokLen": 1 6080 // CHECK-NEXT: }, 6081 // CHECK-NEXT: "end": { 6082 // CHECK-NEXT: "offset": {{[0-9]+}}, 6083 // CHECK-NEXT: "col": 23, 6084 // CHECK-NEXT: "tokLen": 1 6085 // CHECK-NEXT: } 6086 // CHECK-NEXT: }, 6087 // CHECK-NEXT: "type": { 6088 // CHECK-NEXT: "qualType": "int" 6089 // CHECK-NEXT: }, 6090 // CHECK-NEXT: "valueCategory": "prvalue", 6091 // CHECK-NEXT: "castKind": "LValueToRValue", 6092 // CHECK-NEXT: "inner": [ 6093 // CHECK-NEXT: { 6094 // CHECK-NEXT: "id": "0x{{.*}}", 6095 // CHECK-NEXT: "kind": "DeclRefExpr", 6096 // CHECK-NEXT: "range": { 6097 // CHECK-NEXT: "begin": { 6098 // CHECK-NEXT: "offset": {{[0-9]+}}, 6099 // CHECK-NEXT: "col": 23, 6100 // CHECK-NEXT: "tokLen": 1 6101 // CHECK-NEXT: }, 6102 // CHECK-NEXT: "end": { 6103 // CHECK-NEXT: "offset": {{[0-9]+}}, 6104 // CHECK-NEXT: "col": 23, 6105 // CHECK-NEXT: "tokLen": 1 6106 // CHECK-NEXT: } 6107 // CHECK-NEXT: }, 6108 // CHECK-NEXT: "type": { 6109 // CHECK-NEXT: "qualType": "int" 6110 // CHECK-NEXT: }, 6111 // CHECK-NEXT: "valueCategory": "lvalue", 6112 // CHECK-NEXT: "referencedDecl": { 6113 // CHECK-NEXT: "id": "0x{{.*}}", 6114 // CHECK-NEXT: "kind": "VarDecl", 6115 // CHECK-NEXT: "name": "c", 6116 // CHECK-NEXT: "type": { 6117 // CHECK-NEXT: "qualType": "int" 6118 // CHECK-NEXT: } 6119 // CHECK-NEXT: } 6120 // CHECK-NEXT: } 6121 // CHECK-NEXT: ] 6122 // CHECK-NEXT: } 6123 // CHECK-NEXT: ] 6124 // CHECK-NEXT: } 6125 // CHECK-NEXT: ] 6126 // CHECK-NEXT: } 6127 // CHECK-NEXT: ] 6128 // CHECK-NEXT: } 6129 // CHECK-NEXT: ] 6130 // CHECK-NEXT: }, 6131 // CHECK-NEXT: { 6132 // CHECK-NEXT: "id": "0x{{.*}}", 6133 // CHECK-NEXT: "kind": "FieldDecl", 6134 // CHECK-NEXT: "loc": { 6135 // CHECK-NEXT: "offset": {{[0-9]+}}, 6136 // CHECK-NEXT: "col": 4, 6137 // CHECK-NEXT: "tokLen": 1 6138 // CHECK-NEXT: }, 6139 // CHECK-NEXT: "range": { 6140 // CHECK-NEXT: "begin": { 6141 // CHECK-NEXT: "offset": {{[0-9]+}}, 6142 // CHECK-NEXT: "col": 4, 6143 // CHECK-NEXT: "tokLen": 1 6144 // CHECK-NEXT: }, 6145 // CHECK-NEXT: "end": { 6146 // CHECK-NEXT: "offset": {{[0-9]+}}, 6147 // CHECK-NEXT: "col": 4, 6148 // CHECK-NEXT: "tokLen": 1 6149 // CHECK-NEXT: } 6150 // CHECK-NEXT: }, 6151 // CHECK-NEXT: "isImplicit": true, 6152 // CHECK-NEXT: "type": { 6153 // CHECK-NEXT: "qualType": "int" 6154 // CHECK-NEXT: } 6155 // CHECK-NEXT: }, 6156 // CHECK-NEXT: { 6157 // CHECK-NEXT: "id": "0x{{.*}}", 6158 // CHECK-NEXT: "kind": "FieldDecl", 6159 // CHECK-NEXT: "loc": { 6160 // CHECK-NEXT: "offset": {{[0-9]+}}, 6161 // CHECK-NEXT: "col": 8, 6162 // CHECK-NEXT: "tokLen": 1 6163 // CHECK-NEXT: }, 6164 // CHECK-NEXT: "range": { 6165 // CHECK-NEXT: "begin": { 6166 // CHECK-NEXT: "offset": {{[0-9]+}}, 6167 // CHECK-NEXT: "col": 8, 6168 // CHECK-NEXT: "tokLen": 1 6169 // CHECK-NEXT: }, 6170 // CHECK-NEXT: "end": { 6171 // CHECK-NEXT: "offset": {{[0-9]+}}, 6172 // CHECK-NEXT: "col": 8, 6173 // CHECK-NEXT: "tokLen": 1 6174 // CHECK-NEXT: } 6175 // CHECK-NEXT: }, 6176 // CHECK-NEXT: "isImplicit": true, 6177 // CHECK-NEXT: "type": { 6178 // CHECK-NEXT: "qualType": "int &" 6179 // CHECK-NEXT: } 6180 // CHECK-NEXT: } 6181 // CHECK-NEXT: ] 6182 // CHECK-NEXT: }, 6183 // CHECK-NEXT: { 6184 // CHECK-NEXT: "id": "0x{{.*}}", 6185 // CHECK-NEXT: "kind": "ImplicitCastExpr", 6186 // CHECK-NEXT: "range": { 6187 // CHECK-NEXT: "begin": { 6188 // CHECK-NEXT: "offset": {{[0-9]+}}, 6189 // CHECK-NEXT: "col": 4, 6190 // CHECK-NEXT: "tokLen": 1 6191 // CHECK-NEXT: }, 6192 // CHECK-NEXT: "end": { 6193 // CHECK-NEXT: "offset": {{[0-9]+}}, 6194 // CHECK-NEXT: "col": 4, 6195 // CHECK-NEXT: "tokLen": 1 6196 // CHECK-NEXT: } 6197 // CHECK-NEXT: }, 6198 // CHECK-NEXT: "type": { 6199 // CHECK-NEXT: "qualType": "int" 6200 // CHECK-NEXT: }, 6201 // CHECK-NEXT: "valueCategory": "prvalue", 6202 // CHECK-NEXT: "castKind": "LValueToRValue", 6203 // CHECK-NEXT: "inner": [ 6204 // CHECK-NEXT: { 6205 // CHECK-NEXT: "id": "0x{{.*}}", 6206 // CHECK-NEXT: "kind": "DeclRefExpr", 6207 // CHECK-NEXT: "range": { 6208 // CHECK-NEXT: "begin": { 6209 // CHECK-NEXT: "offset": {{[0-9]+}}, 6210 // CHECK-NEXT: "col": 4, 6211 // CHECK-NEXT: "tokLen": 1 6212 // CHECK-NEXT: }, 6213 // CHECK-NEXT: "end": { 6214 // CHECK-NEXT: "offset": {{[0-9]+}}, 6215 // CHECK-NEXT: "col": 4, 6216 // CHECK-NEXT: "tokLen": 1 6217 // CHECK-NEXT: } 6218 // CHECK-NEXT: }, 6219 // CHECK-NEXT: "type": { 6220 // CHECK-NEXT: "qualType": "int" 6221 // CHECK-NEXT: }, 6222 // CHECK-NEXT: "valueCategory": "lvalue", 6223 // CHECK-NEXT: "referencedDecl": { 6224 // CHECK-NEXT: "id": "0x{{.*}}", 6225 // CHECK-NEXT: "kind": "VarDecl", 6226 // CHECK-NEXT: "name": "b", 6227 // CHECK-NEXT: "type": { 6228 // CHECK-NEXT: "qualType": "int" 6229 // CHECK-NEXT: } 6230 // CHECK-NEXT: } 6231 // CHECK-NEXT: } 6232 // CHECK-NEXT: ] 6233 // CHECK-NEXT: }, 6234 // CHECK-NEXT: { 6235 // CHECK-NEXT: "id": "0x{{.*}}", 6236 // CHECK-NEXT: "kind": "DeclRefExpr", 6237 // CHECK-NEXT: "range": { 6238 // CHECK-NEXT: "begin": { 6239 // CHECK-NEXT: "offset": {{[0-9]+}}, 6240 // CHECK-NEXT: "col": 8, 6241 // CHECK-NEXT: "tokLen": 1 6242 // CHECK-NEXT: }, 6243 // CHECK-NEXT: "end": { 6244 // CHECK-NEXT: "offset": {{[0-9]+}}, 6245 // CHECK-NEXT: "col": 8, 6246 // CHECK-NEXT: "tokLen": 1 6247 // CHECK-NEXT: } 6248 // CHECK-NEXT: }, 6249 // CHECK-NEXT: "type": { 6250 // CHECK-NEXT: "qualType": "int" 6251 // CHECK-NEXT: }, 6252 // CHECK-NEXT: "valueCategory": "lvalue", 6253 // CHECK-NEXT: "referencedDecl": { 6254 // CHECK-NEXT: "id": "0x{{.*}}", 6255 // CHECK-NEXT: "kind": "VarDecl", 6256 // CHECK-NEXT: "name": "c", 6257 // CHECK-NEXT: "type": { 6258 // CHECK-NEXT: "qualType": "int" 6259 // CHECK-NEXT: } 6260 // CHECK-NEXT: } 6261 // CHECK-NEXT: }, 6262 // CHECK-NEXT: { 6263 // CHECK-NEXT: "id": "0x{{.*}}", 6264 // CHECK-NEXT: "kind": "CompoundStmt", 6265 // CHECK-NEXT: "range": { 6266 // CHECK-NEXT: "begin": { 6267 // CHECK-NEXT: "offset": {{[0-9]+}}, 6268 // CHECK-NEXT: "col": 10, 6269 // CHECK-NEXT: "tokLen": 1 6270 // CHECK-NEXT: }, 6271 // CHECK-NEXT: "end": { 6272 // CHECK-NEXT: "offset": {{[0-9]+}}, 6273 // CHECK-NEXT: "col": 26, 6274 // CHECK-NEXT: "tokLen": 1 6275 // CHECK-NEXT: } 6276 // CHECK-NEXT: }, 6277 // CHECK-NEXT: "inner": [ 6278 // CHECK-NEXT: { 6279 // CHECK-NEXT: "id": "0x{{.*}}", 6280 // CHECK-NEXT: "kind": "ReturnStmt", 6281 // CHECK-NEXT: "range": { 6282 // CHECK-NEXT: "begin": { 6283 // CHECK-NEXT: "offset": {{[0-9]+}}, 6284 // CHECK-NEXT: "col": 12, 6285 // CHECK-NEXT: "tokLen": 6 6286 // CHECK-NEXT: }, 6287 // CHECK-NEXT: "end": { 6288 // CHECK-NEXT: "offset": {{[0-9]+}}, 6289 // CHECK-NEXT: "col": 23, 6290 // CHECK-NEXT: "tokLen": 1 6291 // CHECK-NEXT: } 6292 // CHECK-NEXT: }, 6293 // CHECK-NEXT: "inner": [ 6294 // CHECK-NEXT: { 6295 // CHECK-NEXT: "id": "0x{{.*}}", 6296 // CHECK-NEXT: "kind": "BinaryOperator", 6297 // CHECK-NEXT: "range": { 6298 // CHECK-NEXT: "begin": { 6299 // CHECK-NEXT: "offset": {{[0-9]+}}, 6300 // CHECK-NEXT: "col": 19, 6301 // CHECK-NEXT: "tokLen": 1 6302 // CHECK-NEXT: }, 6303 // CHECK-NEXT: "end": { 6304 // CHECK-NEXT: "offset": {{[0-9]+}}, 6305 // CHECK-NEXT: "col": 23, 6306 // CHECK-NEXT: "tokLen": 1 6307 // CHECK-NEXT: } 6308 // CHECK-NEXT: }, 6309 // CHECK-NEXT: "type": { 6310 // CHECK-NEXT: "qualType": "int" 6311 // CHECK-NEXT: }, 6312 // CHECK-NEXT: "valueCategory": "prvalue", 6313 // CHECK-NEXT: "opcode": "+", 6314 // CHECK-NEXT: "inner": [ 6315 // CHECK-NEXT: { 6316 // CHECK-NEXT: "id": "0x{{.*}}", 6317 // CHECK-NEXT: "kind": "ImplicitCastExpr", 6318 // CHECK-NEXT: "range": { 6319 // CHECK-NEXT: "begin": { 6320 // CHECK-NEXT: "offset": {{[0-9]+}}, 6321 // CHECK-NEXT: "col": 19, 6322 // CHECK-NEXT: "tokLen": 1 6323 // CHECK-NEXT: }, 6324 // CHECK-NEXT: "end": { 6325 // CHECK-NEXT: "offset": {{[0-9]+}}, 6326 // CHECK-NEXT: "col": 19, 6327 // CHECK-NEXT: "tokLen": 1 6328 // CHECK-NEXT: } 6329 // CHECK-NEXT: }, 6330 // CHECK-NEXT: "type": { 6331 // CHECK-NEXT: "qualType": "int" 6332 // CHECK-NEXT: }, 6333 // CHECK-NEXT: "valueCategory": "prvalue", 6334 // CHECK-NEXT: "castKind": "LValueToRValue", 6335 // CHECK-NEXT: "inner": [ 6336 // CHECK-NEXT: { 6337 // CHECK-NEXT: "id": "0x{{.*}}", 6338 // CHECK-NEXT: "kind": "DeclRefExpr", 6339 // CHECK-NEXT: "range": { 6340 // CHECK-NEXT: "begin": { 6341 // CHECK-NEXT: "offset": {{[0-9]+}}, 6342 // CHECK-NEXT: "col": 19, 6343 // CHECK-NEXT: "tokLen": 1 6344 // CHECK-NEXT: }, 6345 // CHECK-NEXT: "end": { 6346 // CHECK-NEXT: "offset": {{[0-9]+}}, 6347 // CHECK-NEXT: "col": 19, 6348 // CHECK-NEXT: "tokLen": 1 6349 // CHECK-NEXT: } 6350 // CHECK-NEXT: }, 6351 // CHECK-NEXT: "type": { 6352 // CHECK-NEXT: "qualType": "const int" 6353 // CHECK-NEXT: }, 6354 // CHECK-NEXT: "valueCategory": "lvalue", 6355 // CHECK-NEXT: "referencedDecl": { 6356 // CHECK-NEXT: "id": "0x{{.*}}", 6357 // CHECK-NEXT: "kind": "VarDecl", 6358 // CHECK-NEXT: "name": "b", 6359 // CHECK-NEXT: "type": { 6360 // CHECK-NEXT: "qualType": "int" 6361 // CHECK-NEXT: } 6362 // CHECK-NEXT: } 6363 // CHECK-NEXT: } 6364 // CHECK-NEXT: ] 6365 // CHECK-NEXT: }, 6366 // CHECK-NEXT: { 6367 // CHECK-NEXT: "id": "0x{{.*}}", 6368 // CHECK-NEXT: "kind": "ImplicitCastExpr", 6369 // CHECK-NEXT: "range": { 6370 // CHECK-NEXT: "begin": { 6371 // CHECK-NEXT: "offset": {{[0-9]+}}, 6372 // CHECK-NEXT: "col": 23, 6373 // CHECK-NEXT: "tokLen": 1 6374 // CHECK-NEXT: }, 6375 // CHECK-NEXT: "end": { 6376 // CHECK-NEXT: "offset": {{[0-9]+}}, 6377 // CHECK-NEXT: "col": 23, 6378 // CHECK-NEXT: "tokLen": 1 6379 // CHECK-NEXT: } 6380 // CHECK-NEXT: }, 6381 // CHECK-NEXT: "type": { 6382 // CHECK-NEXT: "qualType": "int" 6383 // CHECK-NEXT: }, 6384 // CHECK-NEXT: "valueCategory": "prvalue", 6385 // CHECK-NEXT: "castKind": "LValueToRValue", 6386 // CHECK-NEXT: "inner": [ 6387 // CHECK-NEXT: { 6388 // CHECK-NEXT: "id": "0x{{.*}}", 6389 // CHECK-NEXT: "kind": "DeclRefExpr", 6390 // CHECK-NEXT: "range": { 6391 // CHECK-NEXT: "begin": { 6392 // CHECK-NEXT: "offset": {{[0-9]+}}, 6393 // CHECK-NEXT: "col": 23, 6394 // CHECK-NEXT: "tokLen": 1 6395 // CHECK-NEXT: }, 6396 // CHECK-NEXT: "end": { 6397 // CHECK-NEXT: "offset": {{[0-9]+}}, 6398 // CHECK-NEXT: "col": 23, 6399 // CHECK-NEXT: "tokLen": 1 6400 // CHECK-NEXT: } 6401 // CHECK-NEXT: }, 6402 // CHECK-NEXT: "type": { 6403 // CHECK-NEXT: "qualType": "int" 6404 // CHECK-NEXT: }, 6405 // CHECK-NEXT: "valueCategory": "lvalue", 6406 // CHECK-NEXT: "referencedDecl": { 6407 // CHECK-NEXT: "id": "0x{{.*}}", 6408 // CHECK-NEXT: "kind": "VarDecl", 6409 // CHECK-NEXT: "name": "c", 6410 // CHECK-NEXT: "type": { 6411 // CHECK-NEXT: "qualType": "int" 6412 // CHECK-NEXT: } 6413 // CHECK-NEXT: } 6414 // CHECK-NEXT: } 6415 // CHECK-NEXT: ] 6416 // CHECK-NEXT: } 6417 // CHECK-NEXT: ] 6418 // CHECK-NEXT: } 6419 // CHECK-NEXT: ] 6420 // CHECK-NEXT: } 6421 // CHECK-NEXT: ] 6422 // CHECK-NEXT: } 6423 // CHECK-NEXT: ] 6424 // CHECK-NEXT: }, 6425 // CHECK-NEXT: { 6426 // CHECK-NEXT: "id": "0x{{.*}}", 6427 // CHECK-NEXT: "kind": "LambdaExpr", 6428 // CHECK-NEXT: "range": { 6429 // CHECK-NEXT: "begin": { 6430 // CHECK-NEXT: "offset": {{[0-9]+}}, 6431 // CHECK-NEXT: "line": 113, 6432 // CHECK-NEXT: "col": 3, 6433 // CHECK-NEXT: "tokLen": 1 6434 // CHECK-NEXT: }, 6435 // CHECK-NEXT: "end": { 6436 // CHECK-NEXT: "offset": {{[0-9]+}}, 6437 // CHECK-NEXT: "col": 18, 6438 // CHECK-NEXT: "tokLen": 1 6439 // CHECK-NEXT: } 6440 // CHECK-NEXT: }, 6441 // CHECK-NEXT: "type": { 6442 // CHECK-NEXT: "qualType": "(lambda at {{.*}}:113:3)" 6443 // CHECK-NEXT: }, 6444 // CHECK-NEXT: "valueCategory": "prvalue", 6445 // CHECK-NEXT: "inner": [ 6446 // CHECK-NEXT: { 6447 // CHECK-NEXT: "id": "0x{{.*}}", 6448 // CHECK-NEXT: "kind": "CXXRecordDecl", 6449 // CHECK-NEXT: "loc": { 6450 // CHECK-NEXT: "offset": {{[0-9]+}}, 6451 // CHECK-NEXT: "col": 3, 6452 // CHECK-NEXT: "tokLen": 1 6453 // CHECK-NEXT: }, 6454 // CHECK-NEXT: "range": { 6455 // CHECK-NEXT: "begin": { 6456 // CHECK-NEXT: "offset": {{[0-9]+}}, 6457 // CHECK-NEXT: "col": 3, 6458 // CHECK-NEXT: "tokLen": 1 6459 // CHECK-NEXT: }, 6460 // CHECK-NEXT: "end": { 6461 // CHECK-NEXT: "offset": {{[0-9]+}}, 6462 // CHECK-NEXT: "col": 3, 6463 // CHECK-NEXT: "tokLen": 1 6464 // CHECK-NEXT: } 6465 // CHECK-NEXT: }, 6466 // CHECK-NEXT: "isImplicit": true, 6467 // CHECK-NEXT: "tagUsed": "class", 6468 // CHECK-NEXT: "completeDefinition": true, 6469 // CHECK-NEXT: "definitionData": { 6470 // CHECK-NEXT: "canConstDefaultInit": true, 6471 // CHECK-NEXT: "copyAssign": { 6472 // CHECK-NEXT: "hasConstParam": true, 6473 // CHECK-NEXT: "implicitHasConstParam": true, 6474 // CHECK-NEXT: "needsImplicit": true, 6475 // CHECK-NEXT: "trivial": true 6476 // CHECK-NEXT: }, 6477 // CHECK-NEXT: "copyCtor": { 6478 // CHECK-NEXT: "hasConstParam": true, 6479 // CHECK-NEXT: "implicitHasConstParam": true, 6480 // CHECK-NEXT: "needsImplicit": true, 6481 // CHECK-NEXT: "simple": true, 6482 // CHECK-NEXT: "trivial": true 6483 // CHECK-NEXT: }, 6484 // CHECK-NEXT: "defaultCtor": {}, 6485 // CHECK-NEXT: "dtor": { 6486 // CHECK-NEXT: "irrelevant": true, 6487 // CHECK-NEXT: "needsImplicit": true, 6488 // CHECK-NEXT: "simple": true, 6489 // CHECK-NEXT: "trivial": true 6490 // CHECK-NEXT: }, 6491 // CHECK-NEXT: "isLambda": true, 6492 // CHECK-NEXT: "isStandardLayout": true, 6493 // CHECK-NEXT: "isTriviallyCopyable": true, 6494 // CHECK-NEXT: "moveAssign": {}, 6495 // CHECK-NEXT: "moveCtor": { 6496 // CHECK-NEXT: "exists": true, 6497 // CHECK-NEXT: "needsImplicit": true, 6498 // CHECK-NEXT: "simple": true, 6499 // CHECK-NEXT: "trivial": true 6500 // CHECK-NEXT: } 6501 // CHECK-NEXT: }, 6502 // CHECK-NEXT: "inner": [ 6503 // CHECK-NEXT: { 6504 // CHECK-NEXT: "id": "0x{{.*}}", 6505 // CHECK-NEXT: "kind": "CXXMethodDecl", 6506 // CHECK-NEXT: "loc": { 6507 // CHECK-NEXT: "offset": {{[0-9]+}}, 6508 // CHECK-NEXT: "col": 3, 6509 // CHECK-NEXT: "tokLen": 1 6510 // CHECK-NEXT: }, 6511 // CHECK-NEXT: "range": { 6512 // CHECK-NEXT: "begin": { 6513 // CHECK-NEXT: "offset": {{[0-9]+}}, 6514 // CHECK-NEXT: "col": 16, 6515 // CHECK-NEXT: "tokLen": 1 6516 // CHECK-NEXT: }, 6517 // CHECK-NEXT: "end": { 6518 // CHECK-NEXT: "offset": {{[0-9]+}}, 6519 // CHECK-NEXT: "col": 18, 6520 // CHECK-NEXT: "tokLen": 1 6521 // CHECK-NEXT: } 6522 // CHECK-NEXT: }, 6523 // CHECK-NEXT: "name": "operator()", 6524 // CHECK-NEXT: "type": { 6525 // CHECK-NEXT: "qualType": "auto () const -> auto" 6526 // CHECK-NEXT: }, 6527 // CHECK-NEXT: "inline": true, 6528 // CHECK-NEXT: "inner": [ 6529 // CHECK-NEXT: { 6530 // CHECK-NEXT: "id": "0x{{.*}}", 6531 // CHECK-NEXT: "kind": "CompoundStmt", 6532 // CHECK-NEXT: "range": { 6533 // CHECK-NEXT: "begin": { 6534 // CHECK-NEXT: "offset": {{[0-9]+}}, 6535 // CHECK-NEXT: "col": 17, 6536 // CHECK-NEXT: "tokLen": 1 6537 // CHECK-NEXT: }, 6538 // CHECK-NEXT: "end": { 6539 // CHECK-NEXT: "offset": {{[0-9]+}}, 6540 // CHECK-NEXT: "col": 18, 6541 // CHECK-NEXT: "tokLen": 1 6542 // CHECK-NEXT: } 6543 // CHECK-NEXT: } 6544 // CHECK-NEXT: } 6545 // CHECK-NEXT: ] 6546 // CHECK-NEXT: }, 6547 // CHECK-NEXT: { 6548 // CHECK-NEXT: "id": "0x{{.*}}", 6549 // CHECK-NEXT: "kind": "FieldDecl", 6550 // CHECK-NEXT: "loc": { 6551 // CHECK-NEXT: "offset": {{[0-9]+}}, 6552 // CHECK-NEXT: "col": 4, 6553 // CHECK-NEXT: "tokLen": 1 6554 // CHECK-NEXT: }, 6555 // CHECK-NEXT: "range": { 6556 // CHECK-NEXT: "begin": { 6557 // CHECK-NEXT: "offset": {{[0-9]+}}, 6558 // CHECK-NEXT: "col": 4, 6559 // CHECK-NEXT: "tokLen": 1 6560 // CHECK-NEXT: }, 6561 // CHECK-NEXT: "end": { 6562 // CHECK-NEXT: "offset": {{[0-9]+}}, 6563 // CHECK-NEXT: "col": 4, 6564 // CHECK-NEXT: "tokLen": 1 6565 // CHECK-NEXT: } 6566 // CHECK-NEXT: }, 6567 // CHECK-NEXT: "isImplicit": true, 6568 // CHECK-NEXT: "type": { 6569 // CHECK-NEXT: "qualType": "Ts..." 6570 // CHECK-NEXT: } 6571 // CHECK-NEXT: }, 6572 // CHECK-NEXT: { 6573 // CHECK-NEXT: "id": "0x{{.*}}", 6574 // CHECK-NEXT: "kind": "FieldDecl", 6575 // CHECK-NEXT: "loc": { 6576 // CHECK-NEXT: "offset": {{[0-9]+}}, 6577 // CHECK-NEXT: "col": 10, 6578 // CHECK-NEXT: "tokLen": 1 6579 // CHECK-NEXT: }, 6580 // CHECK-NEXT: "range": { 6581 // CHECK-NEXT: "begin": { 6582 // CHECK-NEXT: "offset": {{[0-9]+}}, 6583 // CHECK-NEXT: "col": 10, 6584 // CHECK-NEXT: "tokLen": 1 6585 // CHECK-NEXT: }, 6586 // CHECK-NEXT: "end": { 6587 // CHECK-NEXT: "offset": {{[0-9]+}}, 6588 // CHECK-NEXT: "col": 10, 6589 // CHECK-NEXT: "tokLen": 1 6590 // CHECK-NEXT: } 6591 // CHECK-NEXT: }, 6592 // CHECK-NEXT: "isImplicit": true, 6593 // CHECK-NEXT: "type": { 6594 // CHECK-NEXT: "desugaredQualType": "int", 6595 // CHECK-NEXT: "qualType": "int" 6596 // CHECK-NEXT: } 6597 // CHECK-NEXT: } 6598 // CHECK-NEXT: ] 6599 // CHECK-NEXT: }, 6600 // CHECK-NEXT: { 6601 // CHECK-NEXT: "id": "0x{{.*}}", 6602 // CHECK-NEXT: "kind": "ParenListExpr", 6603 // CHECK-NEXT: "range": { 6604 // CHECK-NEXT: "begin": { 6605 // CHECK-NEXT: "offset": {{[0-9]+}}, 6606 // CHECK-NEXT: "col": 4, 6607 // CHECK-NEXT: "tokLen": 1 6608 // CHECK-NEXT: }, 6609 // CHECK-NEXT: "end": { 6610 // CHECK-NEXT: "offset": {{[0-9]+}}, 6611 // CHECK-NEXT: "col": 4, 6612 // CHECK-NEXT: "tokLen": 1 6613 // CHECK-NEXT: } 6614 // CHECK-NEXT: }, 6615 // CHECK-NEXT: "type": { 6616 // CHECK-NEXT: "qualType": "NULL TYPE" 6617 // CHECK-NEXT: }, 6618 // CHECK-NEXT: "valueCategory": "prvalue", 6619 // CHECK-NEXT: "inner": [ 6620 // CHECK-NEXT: { 6621 // CHECK-NEXT: "id": "0x{{.*}}", 6622 // CHECK-NEXT: "kind": "DeclRefExpr", 6623 // CHECK-NEXT: "range": { 6624 // CHECK-NEXT: "begin": { 6625 // CHECK-NEXT: "offset": {{[0-9]+}}, 6626 // CHECK-NEXT: "col": 4, 6627 // CHECK-NEXT: "tokLen": 1 6628 // CHECK-NEXT: }, 6629 // CHECK-NEXT: "end": { 6630 // CHECK-NEXT: "offset": {{[0-9]+}}, 6631 // CHECK-NEXT: "col": 4, 6632 // CHECK-NEXT: "tokLen": 1 6633 // CHECK-NEXT: } 6634 // CHECK-NEXT: }, 6635 // CHECK-NEXT: "type": { 6636 // CHECK-NEXT: "qualType": "Ts" 6637 // CHECK-NEXT: }, 6638 // CHECK-NEXT: "valueCategory": "lvalue", 6639 // CHECK-NEXT: "referencedDecl": { 6640 // CHECK-NEXT: "id": "0x{{.*}}", 6641 // CHECK-NEXT: "kind": "ParmVarDecl", 6642 // CHECK-NEXT: "name": "a", 6643 // CHECK-NEXT: "type": { 6644 // CHECK-NEXT: "qualType": "Ts..." 6645 // CHECK-NEXT: } 6646 // CHECK-NEXT: } 6647 // CHECK-NEXT: } 6648 // CHECK-NEXT: ] 6649 // CHECK-NEXT: }, 6650 // CHECK-NEXT: { 6651 // CHECK-NEXT: "id": "0x{{.*}}", 6652 // CHECK-NEXT: "kind": "IntegerLiteral", 6653 // CHECK-NEXT: "range": { 6654 // CHECK-NEXT: "begin": { 6655 // CHECK-NEXT: "offset": {{[0-9]+}}, 6656 // CHECK-NEXT: "col": 14, 6657 // CHECK-NEXT: "tokLen": 2 6658 // CHECK-NEXT: }, 6659 // CHECK-NEXT: "end": { 6660 // CHECK-NEXT: "offset": {{[0-9]+}}, 6661 // CHECK-NEXT: "col": 14, 6662 // CHECK-NEXT: "tokLen": 2 6663 // CHECK-NEXT: } 6664 // CHECK-NEXT: }, 6665 // CHECK-NEXT: "type": { 6666 // CHECK-NEXT: "qualType": "int" 6667 // CHECK-NEXT: }, 6668 // CHECK-NEXT: "valueCategory": "prvalue", 6669 // CHECK-NEXT: "value": "12" 6670 // CHECK-NEXT: }, 6671 // CHECK-NEXT: { 6672 // CHECK-NEXT: "id": "0x{{.*}}", 6673 // CHECK-NEXT: "kind": "CompoundStmt", 6674 // CHECK-NEXT: "range": { 6675 // CHECK-NEXT: "begin": { 6676 // CHECK-NEXT: "offset": {{[0-9]+}}, 6677 // CHECK-NEXT: "col": 17, 6678 // CHECK-NEXT: "tokLen": 1 6679 // CHECK-NEXT: }, 6680 // CHECK-NEXT: "end": { 6681 // CHECK-NEXT: "offset": {{[0-9]+}}, 6682 // CHECK-NEXT: "col": 18, 6683 // CHECK-NEXT: "tokLen": 1 6684 // CHECK-NEXT: } 6685 // CHECK-NEXT: } 6686 // CHECK-NEXT: } 6687 // CHECK-NEXT: ] 6688 // CHECK-NEXT: }, 6689 // CHECK-NEXT: { 6690 // CHECK-NEXT: "id": "0x{{.*}}", 6691 // CHECK-NEXT: "kind": "LambdaExpr", 6692 // CHECK-NEXT: "range": { 6693 // CHECK-NEXT: "begin": { 6694 // CHECK-NEXT: "offset": {{[0-9]+}}, 6695 // CHECK-NEXT: "line": 114, 6696 // CHECK-NEXT: "col": 3, 6697 // CHECK-NEXT: "tokLen": 1 6698 // CHECK-NEXT: }, 6699 // CHECK-NEXT: "end": { 6700 // CHECK-NEXT: "offset": {{[0-9]+}}, 6701 // CHECK-NEXT: "col": 19, 6702 // CHECK-NEXT: "tokLen": 1 6703 // CHECK-NEXT: } 6704 // CHECK-NEXT: }, 6705 // CHECK-NEXT: "type": { 6706 // CHECK-NEXT: "qualType": "(lambda at {{.*}}:114:3)" 6707 // CHECK-NEXT: }, 6708 // CHECK-NEXT: "valueCategory": "prvalue", 6709 // CHECK-NEXT: "inner": [ 6710 // CHECK-NEXT: { 6711 // CHECK-NEXT: "id": "0x{{.*}}", 6712 // CHECK-NEXT: "kind": "CXXRecordDecl", 6713 // CHECK-NEXT: "loc": { 6714 // CHECK-NEXT: "offset": {{[0-9]+}}, 6715 // CHECK-NEXT: "col": 3, 6716 // CHECK-NEXT: "tokLen": 1 6717 // CHECK-NEXT: }, 6718 // CHECK-NEXT: "range": { 6719 // CHECK-NEXT: "begin": { 6720 // CHECK-NEXT: "offset": {{[0-9]+}}, 6721 // CHECK-NEXT: "col": 3, 6722 // CHECK-NEXT: "tokLen": 1 6723 // CHECK-NEXT: }, 6724 // CHECK-NEXT: "end": { 6725 // CHECK-NEXT: "offset": {{[0-9]+}}, 6726 // CHECK-NEXT: "col": 3, 6727 // CHECK-NEXT: "tokLen": 1 6728 // CHECK-NEXT: } 6729 // CHECK-NEXT: }, 6730 // CHECK-NEXT: "isImplicit": true, 6731 // CHECK-NEXT: "tagUsed": "class", 6732 // CHECK-NEXT: "completeDefinition": true, 6733 // CHECK-NEXT: "definitionData": { 6734 // CHECK-NEXT: "canConstDefaultInit": true, 6735 // CHECK-NEXT: "copyAssign": { 6736 // CHECK-NEXT: "hasConstParam": true, 6737 // CHECK-NEXT: "implicitHasConstParam": true, 6738 // CHECK-NEXT: "needsImplicit": true, 6739 // CHECK-NEXT: "trivial": true 6740 // CHECK-NEXT: }, 6741 // CHECK-NEXT: "copyCtor": { 6742 // CHECK-NEXT: "hasConstParam": true, 6743 // CHECK-NEXT: "implicitHasConstParam": true, 6744 // CHECK-NEXT: "needsImplicit": true, 6745 // CHECK-NEXT: "simple": true, 6746 // CHECK-NEXT: "trivial": true 6747 // CHECK-NEXT: }, 6748 // CHECK-NEXT: "defaultCtor": { 6749 // CHECK-NEXT: "defaultedIsConstexpr": true 6750 // CHECK-NEXT: }, 6751 // CHECK-NEXT: "dtor": { 6752 // CHECK-NEXT: "irrelevant": true, 6753 // CHECK-NEXT: "needsImplicit": true, 6754 // CHECK-NEXT: "simple": true, 6755 // CHECK-NEXT: "trivial": true 6756 // CHECK-NEXT: }, 6757 // CHECK-NEXT: "isEmpty": true, 6758 // CHECK-NEXT: "isLambda": true, 6759 // CHECK-NEXT: "isLiteral": true, 6760 // CHECK-NEXT: "isStandardLayout": true, 6761 // CHECK-NEXT: "isTriviallyCopyable": true, 6762 // CHECK-NEXT: "moveAssign": {}, 6763 // CHECK-NEXT: "moveCtor": { 6764 // CHECK-NEXT: "exists": true, 6765 // CHECK-NEXT: "needsImplicit": true, 6766 // CHECK-NEXT: "simple": true, 6767 // CHECK-NEXT: "trivial": true 6768 // CHECK-NEXT: } 6769 // CHECK-NEXT: }, 6770 // CHECK-NEXT: "inner": [ 6771 // CHECK-NEXT: { 6772 // CHECK-NEXT: "id": "0x{{.*}}", 6773 // CHECK-NEXT: "kind": "CXXMethodDecl", 6774 // CHECK-NEXT: "loc": { 6775 // CHECK-NEXT: "offset": {{[0-9]+}}, 6776 // CHECK-NEXT: "col": 3, 6777 // CHECK-NEXT: "tokLen": 1 6778 // CHECK-NEXT: }, 6779 // CHECK-NEXT: "range": { 6780 // CHECK-NEXT: "begin": { 6781 // CHECK-NEXT: "offset": {{[0-9]+}}, 6782 // CHECK-NEXT: "col": 8, 6783 // CHECK-NEXT: "tokLen": 9 6784 // CHECK-NEXT: }, 6785 // CHECK-NEXT: "end": { 6786 // CHECK-NEXT: "offset": {{[0-9]+}}, 6787 // CHECK-NEXT: "col": 19, 6788 // CHECK-NEXT: "tokLen": 1 6789 // CHECK-NEXT: } 6790 // CHECK-NEXT: }, 6791 // CHECK-NEXT: "name": "operator()", 6792 // CHECK-NEXT: "type": { 6793 // CHECK-NEXT: "qualType": "auto () const" 6794 // CHECK-NEXT: }, 6795 // CHECK-NEXT: "inline": true, 6796 // CHECK-NEXT: "constexpr": true, 6797 // CHECK-NEXT: "inner": [ 6798 // CHECK-NEXT: { 6799 // CHECK-NEXT: "id": "0x{{.*}}", 6800 // CHECK-NEXT: "kind": "CompoundStmt", 6801 // CHECK-NEXT: "range": { 6802 // CHECK-NEXT: "begin": { 6803 // CHECK-NEXT: "offset": {{[0-9]+}}, 6804 // CHECK-NEXT: "col": 18, 6805 // CHECK-NEXT: "tokLen": 1 6806 // CHECK-NEXT: }, 6807 // CHECK-NEXT: "end": { 6808 // CHECK-NEXT: "offset": {{[0-9]+}}, 6809 // CHECK-NEXT: "col": 19, 6810 // CHECK-NEXT: "tokLen": 1 6811 // CHECK-NEXT: } 6812 // CHECK-NEXT: } 6813 // CHECK-NEXT: } 6814 // CHECK-NEXT: ] 6815 // CHECK-NEXT: }, 6816 // CHECK-NEXT: { 6817 // CHECK-NEXT: "id": "0x{{.*}}", 6818 // CHECK-NEXT: "kind": "CXXConversionDecl", 6819 // CHECK-NEXT: "loc": { 6820 // CHECK-NEXT: "offset": {{[0-9]+}}, 6821 // CHECK-NEXT: "col": 3, 6822 // CHECK-NEXT: "tokLen": 1 6823 // CHECK-NEXT: }, 6824 // CHECK-NEXT: "range": { 6825 // CHECK-NEXT: "begin": { 6826 // CHECK-NEXT: "offset": {{[0-9]+}}, 6827 // CHECK-NEXT: "col": 3, 6828 // CHECK-NEXT: "tokLen": 1 6829 // CHECK-NEXT: }, 6830 // CHECK-NEXT: "end": { 6831 // CHECK-NEXT: "offset": {{[0-9]+}}, 6832 // CHECK-NEXT: "col": 19, 6833 // CHECK-NEXT: "tokLen": 1 6834 // CHECK-NEXT: } 6835 // CHECK-NEXT: }, 6836 // CHECK-NEXT: "isImplicit": true, 6837 // CHECK-NEXT: "name": "operator auto (*)()", 6838 // CHECK-NEXT: "type": { 6839 // CHECK-NEXT: "qualType": "auto (*() const noexcept)()" 6840 // CHECK-NEXT: }, 6841 // CHECK-NEXT: "inline": true, 6842 // CHECK-NEXT: "constexpr": true 6843 // CHECK-NEXT: }, 6844 // CHECK-NEXT: { 6845 // CHECK-NEXT: "id": "0x{{.*}}", 6846 // CHECK-NEXT: "kind": "CXXMethodDecl", 6847 // CHECK-NEXT: "loc": { 6848 // CHECK-NEXT: "offset": {{[0-9]+}}, 6849 // CHECK-NEXT: "col": 3, 6850 // CHECK-NEXT: "tokLen": 1 6851 // CHECK-NEXT: }, 6852 // CHECK-NEXT: "range": { 6853 // CHECK-NEXT: "begin": { 6854 // CHECK-NEXT: "offset": {{[0-9]+}}, 6855 // CHECK-NEXT: "col": 3, 6856 // CHECK-NEXT: "tokLen": 1 6857 // CHECK-NEXT: }, 6858 // CHECK-NEXT: "end": { 6859 // CHECK-NEXT: "offset": {{[0-9]+}}, 6860 // CHECK-NEXT: "col": 19, 6861 // CHECK-NEXT: "tokLen": 1 6862 // CHECK-NEXT: } 6863 // CHECK-NEXT: }, 6864 // CHECK-NEXT: "isImplicit": true, 6865 // CHECK-NEXT: "name": "__invoke", 6866 // CHECK-NEXT: "type": { 6867 // CHECK-NEXT: "qualType": "auto ()" 6868 // CHECK-NEXT: }, 6869 // CHECK-NEXT: "storageClass": "static", 6870 // CHECK-NEXT: "inline": true 6871 // CHECK-NEXT: } 6872 // CHECK-NEXT: ] 6873 // CHECK-NEXT: }, 6874 // CHECK-NEXT: { 6875 // CHECK-NEXT: "id": "0x{{.*}}", 6876 // CHECK-NEXT: "kind": "CompoundStmt", 6877 // CHECK-NEXT: "range": { 6878 // CHECK-NEXT: "begin": { 6879 // CHECK-NEXT: "offset": {{[0-9]+}}, 6880 // CHECK-NEXT: "col": 18, 6881 // CHECK-NEXT: "tokLen": 1 6882 // CHECK-NEXT: }, 6883 // CHECK-NEXT: "end": { 6884 // CHECK-NEXT: "offset": {{[0-9]+}}, 6885 // CHECK-NEXT: "col": 19, 6886 // CHECK-NEXT: "tokLen": 1 6887 // CHECK-NEXT: } 6888 // CHECK-NEXT: } 6889 // CHECK-NEXT: } 6890 // CHECK-NEXT: ] 6891 // CHECK-NEXT: }, 6892 // CHECK-NEXT: { 6893 // CHECK-NEXT: "id": "0x{{.*}}", 6894 // CHECK-NEXT: "kind": "LambdaExpr", 6895 // CHECK-NEXT: "range": { 6896 // CHECK-NEXT: "begin": { 6897 // CHECK-NEXT: "offset": {{[0-9]+}}, 6898 // CHECK-NEXT: "line": 115, 6899 // CHECK-NEXT: "col": 3, 6900 // CHECK-NEXT: "tokLen": 1 6901 // CHECK-NEXT: }, 6902 // CHECK-NEXT: "end": { 6903 // CHECK-NEXT: "offset": {{[0-9]+}}, 6904 // CHECK-NEXT: "col": 17, 6905 // CHECK-NEXT: "tokLen": 1 6906 // CHECK-NEXT: } 6907 // CHECK-NEXT: }, 6908 // CHECK-NEXT: "type": { 6909 // CHECK-NEXT: "qualType": "(lambda at {{.*}}:115:3)" 6910 // CHECK-NEXT: }, 6911 // CHECK-NEXT: "valueCategory": "prvalue", 6912 // CHECK-NEXT: "inner": [ 6913 // CHECK-NEXT: { 6914 // CHECK-NEXT: "id": "0x{{.*}}", 6915 // CHECK-NEXT: "kind": "CXXRecordDecl", 6916 // CHECK-NEXT: "loc": { 6917 // CHECK-NEXT: "offset": {{[0-9]+}}, 6918 // CHECK-NEXT: "col": 3, 6919 // CHECK-NEXT: "tokLen": 1 6920 // CHECK-NEXT: }, 6921 // CHECK-NEXT: "range": { 6922 // CHECK-NEXT: "begin": { 6923 // CHECK-NEXT: "offset": {{[0-9]+}}, 6924 // CHECK-NEXT: "col": 3, 6925 // CHECK-NEXT: "tokLen": 1 6926 // CHECK-NEXT: }, 6927 // CHECK-NEXT: "end": { 6928 // CHECK-NEXT: "offset": {{[0-9]+}}, 6929 // CHECK-NEXT: "col": 3, 6930 // CHECK-NEXT: "tokLen": 1 6931 // CHECK-NEXT: } 6932 // CHECK-NEXT: }, 6933 // CHECK-NEXT: "isImplicit": true, 6934 // CHECK-NEXT: "tagUsed": "class", 6935 // CHECK-NEXT: "completeDefinition": true, 6936 // CHECK-NEXT: "definitionData": { 6937 // CHECK-NEXT: "canConstDefaultInit": true, 6938 // CHECK-NEXT: "copyAssign": { 6939 // CHECK-NEXT: "hasConstParam": true, 6940 // CHECK-NEXT: "implicitHasConstParam": true, 6941 // CHECK-NEXT: "needsImplicit": true, 6942 // CHECK-NEXT: "trivial": true 6943 // CHECK-NEXT: }, 6944 // CHECK-NEXT: "copyCtor": { 6945 // CHECK-NEXT: "hasConstParam": true, 6946 // CHECK-NEXT: "implicitHasConstParam": true, 6947 // CHECK-NEXT: "needsImplicit": true, 6948 // CHECK-NEXT: "simple": true, 6949 // CHECK-NEXT: "trivial": true 6950 // CHECK-NEXT: }, 6951 // CHECK-NEXT: "defaultCtor": { 6952 // CHECK-NEXT: "defaultedIsConstexpr": true 6953 // CHECK-NEXT: }, 6954 // CHECK-NEXT: "dtor": { 6955 // CHECK-NEXT: "irrelevant": true, 6956 // CHECK-NEXT: "needsImplicit": true, 6957 // CHECK-NEXT: "simple": true, 6958 // CHECK-NEXT: "trivial": true 6959 // CHECK-NEXT: }, 6960 // CHECK-NEXT: "isEmpty": true, 6961 // CHECK-NEXT: "isLambda": true, 6962 // CHECK-NEXT: "isLiteral": true, 6963 // CHECK-NEXT: "isStandardLayout": true, 6964 // CHECK-NEXT: "isTriviallyCopyable": true, 6965 // CHECK-NEXT: "moveAssign": {}, 6966 // CHECK-NEXT: "moveCtor": { 6967 // CHECK-NEXT: "exists": true, 6968 // CHECK-NEXT: "needsImplicit": true, 6969 // CHECK-NEXT: "simple": true, 6970 // CHECK-NEXT: "trivial": true 6971 // CHECK-NEXT: } 6972 // CHECK-NEXT: }, 6973 // CHECK-NEXT: "inner": [ 6974 // CHECK-NEXT: { 6975 // CHECK-NEXT: "id": "0x{{.*}}", 6976 // CHECK-NEXT: "kind": "CXXMethodDecl", 6977 // CHECK-NEXT: "loc": { 6978 // CHECK-NEXT: "offset": {{[0-9]+}}, 6979 // CHECK-NEXT: "col": 3, 6980 // CHECK-NEXT: "tokLen": 1 6981 // CHECK-NEXT: }, 6982 // CHECK-NEXT: "range": { 6983 // CHECK-NEXT: "begin": { 6984 // CHECK-NEXT: "offset": {{[0-9]+}}, 6985 // CHECK-NEXT: "col": 8, 6986 // CHECK-NEXT: "tokLen": 7 6987 // CHECK-NEXT: }, 6988 // CHECK-NEXT: "end": { 6989 // CHECK-NEXT: "offset": {{[0-9]+}}, 6990 // CHECK-NEXT: "col": 17, 6991 // CHECK-NEXT: "tokLen": 1 6992 // CHECK-NEXT: } 6993 // CHECK-NEXT: }, 6994 // CHECK-NEXT: "name": "operator()", 6995 // CHECK-NEXT: "type": { 6996 // CHECK-NEXT: "qualType": "auto ()" 6997 // CHECK-NEXT: }, 6998 // CHECK-NEXT: "inline": true, 6999 // CHECK-NEXT: "inner": [ 7000 // CHECK-NEXT: { 7001 // CHECK-NEXT: "id": "0x{{.*}}", 7002 // CHECK-NEXT: "kind": "CompoundStmt", 7003 // CHECK-NEXT: "range": { 7004 // CHECK-NEXT: "begin": { 7005 // CHECK-NEXT: "offset": {{[0-9]+}}, 7006 // CHECK-NEXT: "col": 16, 7007 // CHECK-NEXT: "tokLen": 1 7008 // CHECK-NEXT: }, 7009 // CHECK-NEXT: "end": { 7010 // CHECK-NEXT: "offset": {{[0-9]+}}, 7011 // CHECK-NEXT: "col": 17, 7012 // CHECK-NEXT: "tokLen": 1 7013 // CHECK-NEXT: } 7014 // CHECK-NEXT: } 7015 // CHECK-NEXT: } 7016 // CHECK-NEXT: ] 7017 // CHECK-NEXT: }, 7018 // CHECK-NEXT: { 7019 // CHECK-NEXT: "id": "0x{{.*}}", 7020 // CHECK-NEXT: "kind": "CXXConversionDecl", 7021 // CHECK-NEXT: "loc": { 7022 // CHECK-NEXT: "offset": {{[0-9]+}}, 7023 // CHECK-NEXT: "col": 3, 7024 // CHECK-NEXT: "tokLen": 1 7025 // CHECK-NEXT: }, 7026 // CHECK-NEXT: "range": { 7027 // CHECK-NEXT: "begin": { 7028 // CHECK-NEXT: "offset": {{[0-9]+}}, 7029 // CHECK-NEXT: "col": 3, 7030 // CHECK-NEXT: "tokLen": 1 7031 // CHECK-NEXT: }, 7032 // CHECK-NEXT: "end": { 7033 // CHECK-NEXT: "offset": {{[0-9]+}}, 7034 // CHECK-NEXT: "col": 17, 7035 // CHECK-NEXT: "tokLen": 1 7036 // CHECK-NEXT: } 7037 // CHECK-NEXT: }, 7038 // CHECK-NEXT: "isImplicit": true, 7039 // CHECK-NEXT: "name": "operator auto (*)()", 7040 // CHECK-NEXT: "type": { 7041 // CHECK-NEXT: "qualType": "auto (*() const noexcept)()" 7042 // CHECK-NEXT: }, 7043 // CHECK-NEXT: "inline": true, 7044 // CHECK-NEXT: "constexpr": true 7045 // CHECK-NEXT: }, 7046 // CHECK-NEXT: { 7047 // CHECK-NEXT: "id": "0x{{.*}}", 7048 // CHECK-NEXT: "kind": "CXXMethodDecl", 7049 // CHECK-NEXT: "loc": { 7050 // CHECK-NEXT: "offset": {{[0-9]+}}, 7051 // CHECK-NEXT: "col": 3, 7052 // CHECK-NEXT: "tokLen": 1 7053 // CHECK-NEXT: }, 7054 // CHECK-NEXT: "range": { 7055 // CHECK-NEXT: "begin": { 7056 // CHECK-NEXT: "offset": {{[0-9]+}}, 7057 // CHECK-NEXT: "col": 3, 7058 // CHECK-NEXT: "tokLen": 1 7059 // CHECK-NEXT: }, 7060 // CHECK-NEXT: "end": { 7061 // CHECK-NEXT: "offset": {{[0-9]+}}, 7062 // CHECK-NEXT: "col": 17, 7063 // CHECK-NEXT: "tokLen": 1 7064 // CHECK-NEXT: } 7065 // CHECK-NEXT: }, 7066 // CHECK-NEXT: "isImplicit": true, 7067 // CHECK-NEXT: "name": "__invoke", 7068 // CHECK-NEXT: "type": { 7069 // CHECK-NEXT: "qualType": "auto ()" 7070 // CHECK-NEXT: }, 7071 // CHECK-NEXT: "storageClass": "static", 7072 // CHECK-NEXT: "inline": true 7073 // CHECK-NEXT: } 7074 // CHECK-NEXT: ] 7075 // CHECK-NEXT: }, 7076 // CHECK-NEXT: { 7077 // CHECK-NEXT: "id": "0x{{.*}}", 7078 // CHECK-NEXT: "kind": "CompoundStmt", 7079 // CHECK-NEXT: "range": { 7080 // CHECK-NEXT: "begin": { 7081 // CHECK-NEXT: "offset": {{[0-9]+}}, 7082 // CHECK-NEXT: "col": 16, 7083 // CHECK-NEXT: "tokLen": 1 7084 // CHECK-NEXT: }, 7085 // CHECK-NEXT: "end": { 7086 // CHECK-NEXT: "offset": {{[0-9]+}}, 7087 // CHECK-NEXT: "col": 17, 7088 // CHECK-NEXT: "tokLen": 1 7089 // CHECK-NEXT: } 7090 // CHECK-NEXT: } 7091 // CHECK-NEXT: } 7092 // CHECK-NEXT: ] 7093 // CHECK-NEXT: }, 7094 // CHECK-NEXT: { 7095 // CHECK-NEXT: "id": "0x{{.*}}", 7096 // CHECK-NEXT: "kind": "LambdaExpr", 7097 // CHECK-NEXT: "range": { 7098 // CHECK-NEXT: "begin": { 7099 // CHECK-NEXT: "offset": {{[0-9]+}}, 7100 // CHECK-NEXT: "line": 116, 7101 // CHECK-NEXT: "col": 3, 7102 // CHECK-NEXT: "tokLen": 1 7103 // CHECK-NEXT: }, 7104 // CHECK-NEXT: "end": { 7105 // CHECK-NEXT: "offset": {{[0-9]+}}, 7106 // CHECK-NEXT: "col": 18, 7107 // CHECK-NEXT: "tokLen": 1 7108 // CHECK-NEXT: } 7109 // CHECK-NEXT: }, 7110 // CHECK-NEXT: "type": { 7111 // CHECK-NEXT: "qualType": "(lambda at {{.*}}:116:3)" 7112 // CHECK-NEXT: }, 7113 // CHECK-NEXT: "valueCategory": "prvalue", 7114 // CHECK-NEXT: "inner": [ 7115 // CHECK-NEXT: { 7116 // CHECK-NEXT: "id": "0x{{.*}}", 7117 // CHECK-NEXT: "kind": "CXXRecordDecl", 7118 // CHECK-NEXT: "loc": { 7119 // CHECK-NEXT: "offset": {{[0-9]+}}, 7120 // CHECK-NEXT: "col": 3, 7121 // CHECK-NEXT: "tokLen": 1 7122 // CHECK-NEXT: }, 7123 // CHECK-NEXT: "range": { 7124 // CHECK-NEXT: "begin": { 7125 // CHECK-NEXT: "offset": {{[0-9]+}}, 7126 // CHECK-NEXT: "col": 3, 7127 // CHECK-NEXT: "tokLen": 1 7128 // CHECK-NEXT: }, 7129 // CHECK-NEXT: "end": { 7130 // CHECK-NEXT: "offset": {{[0-9]+}}, 7131 // CHECK-NEXT: "col": 3, 7132 // CHECK-NEXT: "tokLen": 1 7133 // CHECK-NEXT: } 7134 // CHECK-NEXT: }, 7135 // CHECK-NEXT: "isImplicit": true, 7136 // CHECK-NEXT: "tagUsed": "class", 7137 // CHECK-NEXT: "completeDefinition": true, 7138 // CHECK-NEXT: "definitionData": { 7139 // CHECK-NEXT: "canConstDefaultInit": true, 7140 // CHECK-NEXT: "copyAssign": { 7141 // CHECK-NEXT: "hasConstParam": true, 7142 // CHECK-NEXT: "implicitHasConstParam": true, 7143 // CHECK-NEXT: "needsImplicit": true, 7144 // CHECK-NEXT: "trivial": true 7145 // CHECK-NEXT: }, 7146 // CHECK-NEXT: "copyCtor": { 7147 // CHECK-NEXT: "hasConstParam": true, 7148 // CHECK-NEXT: "implicitHasConstParam": true, 7149 // CHECK-NEXT: "needsImplicit": true, 7150 // CHECK-NEXT: "simple": true, 7151 // CHECK-NEXT: "trivial": true 7152 // CHECK-NEXT: }, 7153 // CHECK-NEXT: "defaultCtor": { 7154 // CHECK-NEXT: "defaultedIsConstexpr": true 7155 // CHECK-NEXT: }, 7156 // CHECK-NEXT: "dtor": { 7157 // CHECK-NEXT: "irrelevant": true, 7158 // CHECK-NEXT: "needsImplicit": true, 7159 // CHECK-NEXT: "simple": true, 7160 // CHECK-NEXT: "trivial": true 7161 // CHECK-NEXT: }, 7162 // CHECK-NEXT: "isEmpty": true, 7163 // CHECK-NEXT: "isLambda": true, 7164 // CHECK-NEXT: "isLiteral": true, 7165 // CHECK-NEXT: "isStandardLayout": true, 7166 // CHECK-NEXT: "isTriviallyCopyable": true, 7167 // CHECK-NEXT: "moveAssign": {}, 7168 // CHECK-NEXT: "moveCtor": { 7169 // CHECK-NEXT: "exists": true, 7170 // CHECK-NEXT: "needsImplicit": true, 7171 // CHECK-NEXT: "simple": true, 7172 // CHECK-NEXT: "trivial": true 7173 // CHECK-NEXT: } 7174 // CHECK-NEXT: }, 7175 // CHECK-NEXT: "inner": [ 7176 // CHECK-NEXT: { 7177 // CHECK-NEXT: "id": "0x{{.*}}", 7178 // CHECK-NEXT: "kind": "CXXMethodDecl", 7179 // CHECK-NEXT: "loc": { 7180 // CHECK-NEXT: "offset": {{[0-9]+}}, 7181 // CHECK-NEXT: "col": 3, 7182 // CHECK-NEXT: "tokLen": 1 7183 // CHECK-NEXT: }, 7184 // CHECK-NEXT: "range": { 7185 // CHECK-NEXT: "begin": { 7186 // CHECK-NEXT: "offset": {{[0-9]+}}, 7187 // CHECK-NEXT: "col": 8, 7188 // CHECK-NEXT: "tokLen": 8 7189 // CHECK-NEXT: }, 7190 // CHECK-NEXT: "end": { 7191 // CHECK-NEXT: "offset": {{[0-9]+}}, 7192 // CHECK-NEXT: "col": 18, 7193 // CHECK-NEXT: "tokLen": 1 7194 // CHECK-NEXT: } 7195 // CHECK-NEXT: }, 7196 // CHECK-NEXT: "name": "operator()", 7197 // CHECK-NEXT: "type": { 7198 // CHECK-NEXT: "qualType": "auto () const noexcept" 7199 // CHECK-NEXT: }, 7200 // CHECK-NEXT: "inline": true, 7201 // CHECK-NEXT: "inner": [ 7202 // CHECK-NEXT: { 7203 // CHECK-NEXT: "id": "0x{{.*}}", 7204 // CHECK-NEXT: "kind": "CompoundStmt", 7205 // CHECK-NEXT: "range": { 7206 // CHECK-NEXT: "begin": { 7207 // CHECK-NEXT: "offset": {{[0-9]+}}, 7208 // CHECK-NEXT: "col": 17, 7209 // CHECK-NEXT: "tokLen": 1 7210 // CHECK-NEXT: }, 7211 // CHECK-NEXT: "end": { 7212 // CHECK-NEXT: "offset": {{[0-9]+}}, 7213 // CHECK-NEXT: "col": 18, 7214 // CHECK-NEXT: "tokLen": 1 7215 // CHECK-NEXT: } 7216 // CHECK-NEXT: } 7217 // CHECK-NEXT: } 7218 // CHECK-NEXT: ] 7219 // CHECK-NEXT: }, 7220 // CHECK-NEXT: { 7221 // CHECK-NEXT: "id": "0x{{.*}}", 7222 // CHECK-NEXT: "kind": "CXXConversionDecl", 7223 // CHECK-NEXT: "loc": { 7224 // CHECK-NEXT: "offset": {{[0-9]+}}, 7225 // CHECK-NEXT: "col": 3, 7226 // CHECK-NEXT: "tokLen": 1 7227 // CHECK-NEXT: }, 7228 // CHECK-NEXT: "range": { 7229 // CHECK-NEXT: "begin": { 7230 // CHECK-NEXT: "offset": {{[0-9]+}}, 7231 // CHECK-NEXT: "col": 3, 7232 // CHECK-NEXT: "tokLen": 1 7233 // CHECK-NEXT: }, 7234 // CHECK-NEXT: "end": { 7235 // CHECK-NEXT: "offset": {{[0-9]+}}, 7236 // CHECK-NEXT: "col": 18, 7237 // CHECK-NEXT: "tokLen": 1 7238 // CHECK-NEXT: } 7239 // CHECK-NEXT: }, 7240 // CHECK-NEXT: "isImplicit": true, 7241 // CHECK-NEXT: "name": "operator auto (*)() noexcept", 7242 // CHECK-NEXT: "type": { 7243 // CHECK-NEXT: "qualType": "auto (*() const noexcept)() noexcept" 7244 // CHECK-NEXT: }, 7245 // CHECK-NEXT: "inline": true, 7246 // CHECK-NEXT: "constexpr": true 7247 // CHECK-NEXT: }, 7248 // CHECK-NEXT: { 7249 // CHECK-NEXT: "id": "0x{{.*}}", 7250 // CHECK-NEXT: "kind": "CXXMethodDecl", 7251 // CHECK-NEXT: "loc": { 7252 // CHECK-NEXT: "offset": {{[0-9]+}}, 7253 // CHECK-NEXT: "col": 3, 7254 // CHECK-NEXT: "tokLen": 1 7255 // CHECK-NEXT: }, 7256 // CHECK-NEXT: "range": { 7257 // CHECK-NEXT: "begin": { 7258 // CHECK-NEXT: "offset": {{[0-9]+}}, 7259 // CHECK-NEXT: "col": 3, 7260 // CHECK-NEXT: "tokLen": 1 7261 // CHECK-NEXT: }, 7262 // CHECK-NEXT: "end": { 7263 // CHECK-NEXT: "offset": {{[0-9]+}}, 7264 // CHECK-NEXT: "col": 18, 7265 // CHECK-NEXT: "tokLen": 1 7266 // CHECK-NEXT: } 7267 // CHECK-NEXT: }, 7268 // CHECK-NEXT: "isImplicit": true, 7269 // CHECK-NEXT: "name": "__invoke", 7270 // CHECK-NEXT: "type": { 7271 // CHECK-NEXT: "qualType": "auto () noexcept" 7272 // CHECK-NEXT: }, 7273 // CHECK-NEXT: "storageClass": "static", 7274 // CHECK-NEXT: "inline": true 7275 // CHECK-NEXT: } 7276 // CHECK-NEXT: ] 7277 // CHECK-NEXT: }, 7278 // CHECK-NEXT: { 7279 // CHECK-NEXT: "id": "0x{{.*}}", 7280 // CHECK-NEXT: "kind": "CompoundStmt", 7281 // CHECK-NEXT: "range": { 7282 // CHECK-NEXT: "begin": { 7283 // CHECK-NEXT: "offset": {{[0-9]+}}, 7284 // CHECK-NEXT: "col": 17, 7285 // CHECK-NEXT: "tokLen": 1 7286 // CHECK-NEXT: }, 7287 // CHECK-NEXT: "end": { 7288 // CHECK-NEXT: "offset": {{[0-9]+}}, 7289 // CHECK-NEXT: "col": 18, 7290 // CHECK-NEXT: "tokLen": 1 7291 // CHECK-NEXT: } 7292 // CHECK-NEXT: } 7293 // CHECK-NEXT: } 7294 // CHECK-NEXT: ] 7295 // CHECK-NEXT: }, 7296 // CHECK-NEXT: { 7297 // CHECK-NEXT: "id": "0x{{.*}}", 7298 // CHECK-NEXT: "kind": "LambdaExpr", 7299 // CHECK-NEXT: "range": { 7300 // CHECK-NEXT: "begin": { 7301 // CHECK-NEXT: "offset": {{[0-9]+}}, 7302 // CHECK-NEXT: "line": 117, 7303 // CHECK-NEXT: "col": 3, 7304 // CHECK-NEXT: "tokLen": 1 7305 // CHECK-NEXT: }, 7306 // CHECK-NEXT: "end": { 7307 // CHECK-NEXT: "offset": {{[0-9]+}}, 7308 // CHECK-NEXT: "col": 27, 7309 // CHECK-NEXT: "tokLen": 1 7310 // CHECK-NEXT: } 7311 // CHECK-NEXT: }, 7312 // CHECK-NEXT: "type": { 7313 // CHECK-NEXT: "qualType": "(lambda at {{.*}}:117:3)" 7314 // CHECK-NEXT: }, 7315 // CHECK-NEXT: "valueCategory": "prvalue", 7316 // CHECK-NEXT: "inner": [ 7317 // CHECK-NEXT: { 7318 // CHECK-NEXT: "id": "0x{{.*}}", 7319 // CHECK-NEXT: "kind": "CXXRecordDecl", 7320 // CHECK-NEXT: "loc": { 7321 // CHECK-NEXT: "offset": {{[0-9]+}}, 7322 // CHECK-NEXT: "col": 3, 7323 // CHECK-NEXT: "tokLen": 1 7324 // CHECK-NEXT: }, 7325 // CHECK-NEXT: "range": { 7326 // CHECK-NEXT: "begin": { 7327 // CHECK-NEXT: "offset": {{[0-9]+}}, 7328 // CHECK-NEXT: "col": 3, 7329 // CHECK-NEXT: "tokLen": 1 7330 // CHECK-NEXT: }, 7331 // CHECK-NEXT: "end": { 7332 // CHECK-NEXT: "offset": {{[0-9]+}}, 7333 // CHECK-NEXT: "col": 3, 7334 // CHECK-NEXT: "tokLen": 1 7335 // CHECK-NEXT: } 7336 // CHECK-NEXT: }, 7337 // CHECK-NEXT: "isImplicit": true, 7338 // CHECK-NEXT: "tagUsed": "class", 7339 // CHECK-NEXT: "completeDefinition": true, 7340 // CHECK-NEXT: "definitionData": { 7341 // CHECK-NEXT: "canConstDefaultInit": true, 7342 // CHECK-NEXT: "copyAssign": { 7343 // CHECK-NEXT: "hasConstParam": true, 7344 // CHECK-NEXT: "implicitHasConstParam": true, 7345 // CHECK-NEXT: "needsImplicit": true, 7346 // CHECK-NEXT: "trivial": true 7347 // CHECK-NEXT: }, 7348 // CHECK-NEXT: "copyCtor": { 7349 // CHECK-NEXT: "hasConstParam": true, 7350 // CHECK-NEXT: "implicitHasConstParam": true, 7351 // CHECK-NEXT: "needsImplicit": true, 7352 // CHECK-NEXT: "simple": true, 7353 // CHECK-NEXT: "trivial": true 7354 // CHECK-NEXT: }, 7355 // CHECK-NEXT: "defaultCtor": { 7356 // CHECK-NEXT: "defaultedIsConstexpr": true 7357 // CHECK-NEXT: }, 7358 // CHECK-NEXT: "dtor": { 7359 // CHECK-NEXT: "irrelevant": true, 7360 // CHECK-NEXT: "needsImplicit": true, 7361 // CHECK-NEXT: "simple": true, 7362 // CHECK-NEXT: "trivial": true 7363 // CHECK-NEXT: }, 7364 // CHECK-NEXT: "isEmpty": true, 7365 // CHECK-NEXT: "isLambda": true, 7366 // CHECK-NEXT: "isLiteral": true, 7367 // CHECK-NEXT: "isStandardLayout": true, 7368 // CHECK-NEXT: "isTriviallyCopyable": true, 7369 // CHECK-NEXT: "moveAssign": {}, 7370 // CHECK-NEXT: "moveCtor": { 7371 // CHECK-NEXT: "exists": true, 7372 // CHECK-NEXT: "needsImplicit": true, 7373 // CHECK-NEXT: "simple": true, 7374 // CHECK-NEXT: "trivial": true 7375 // CHECK-NEXT: } 7376 // CHECK-NEXT: }, 7377 // CHECK-NEXT: "inner": [ 7378 // CHECK-NEXT: { 7379 // CHECK-NEXT: "id": "0x{{.*}}", 7380 // CHECK-NEXT: "kind": "CXXMethodDecl", 7381 // CHECK-NEXT: "loc": { 7382 // CHECK-NEXT: "offset": {{[0-9]+}}, 7383 // CHECK-NEXT: "col": 3, 7384 // CHECK-NEXT: "tokLen": 1 7385 // CHECK-NEXT: }, 7386 // CHECK-NEXT: "range": { 7387 // CHECK-NEXT: "begin": { 7388 // CHECK-NEXT: "offset": {{[0-9]+}}, 7389 // CHECK-NEXT: "col": 11, 7390 // CHECK-NEXT: "tokLen": 3 7391 // CHECK-NEXT: }, 7392 // CHECK-NEXT: "end": { 7393 // CHECK-NEXT: "offset": {{[0-9]+}}, 7394 // CHECK-NEXT: "col": 27, 7395 // CHECK-NEXT: "tokLen": 1 7396 // CHECK-NEXT: } 7397 // CHECK-NEXT: }, 7398 // CHECK-NEXT: "name": "operator()", 7399 // CHECK-NEXT: "type": { 7400 // CHECK-NEXT: "qualType": "auto () const -> int" 7401 // CHECK-NEXT: }, 7402 // CHECK-NEXT: "inline": true, 7403 // CHECK-NEXT: "inner": [ 7404 // CHECK-NEXT: { 7405 // CHECK-NEXT: "id": "0x{{.*}}", 7406 // CHECK-NEXT: "kind": "CompoundStmt", 7407 // CHECK-NEXT: "range": { 7408 // CHECK-NEXT: "begin": { 7409 // CHECK-NEXT: "offset": {{[0-9]+}}, 7410 // CHECK-NEXT: "col": 15, 7411 // CHECK-NEXT: "tokLen": 1 7412 // CHECK-NEXT: }, 7413 // CHECK-NEXT: "end": { 7414 // CHECK-NEXT: "offset": {{[0-9]+}}, 7415 // CHECK-NEXT: "col": 27, 7416 // CHECK-NEXT: "tokLen": 1 7417 // CHECK-NEXT: } 7418 // CHECK-NEXT: }, 7419 // CHECK-NEXT: "inner": [ 7420 // CHECK-NEXT: { 7421 // CHECK-NEXT: "id": "0x{{.*}}", 7422 // CHECK-NEXT: "kind": "ReturnStmt", 7423 // CHECK-NEXT: "range": { 7424 // CHECK-NEXT: "begin": { 7425 // CHECK-NEXT: "offset": {{[0-9]+}}, 7426 // CHECK-NEXT: "col": 17, 7427 // CHECK-NEXT: "tokLen": 6 7428 // CHECK-NEXT: }, 7429 // CHECK-NEXT: "end": { 7430 // CHECK-NEXT: "offset": {{[0-9]+}}, 7431 // CHECK-NEXT: "col": 24, 7432 // CHECK-NEXT: "tokLen": 1 7433 // CHECK-NEXT: } 7434 // CHECK-NEXT: }, 7435 // CHECK-NEXT: "inner": [ 7436 // CHECK-NEXT: { 7437 // CHECK-NEXT: "id": "0x{{.*}}", 7438 // CHECK-NEXT: "kind": "IntegerLiteral", 7439 // CHECK-NEXT: "range": { 7440 // CHECK-NEXT: "begin": { 7441 // CHECK-NEXT: "offset": {{[0-9]+}}, 7442 // CHECK-NEXT: "col": 24, 7443 // CHECK-NEXT: "tokLen": 1 7444 // CHECK-NEXT: }, 7445 // CHECK-NEXT: "end": { 7446 // CHECK-NEXT: "offset": {{[0-9]+}}, 7447 // CHECK-NEXT: "col": 24, 7448 // CHECK-NEXT: "tokLen": 1 7449 // CHECK-NEXT: } 7450 // CHECK-NEXT: }, 7451 // CHECK-NEXT: "type": { 7452 // CHECK-NEXT: "qualType": "int" 7453 // CHECK-NEXT: }, 7454 // CHECK-NEXT: "valueCategory": "prvalue", 7455 // CHECK-NEXT: "value": "0" 7456 // CHECK-NEXT: } 7457 // CHECK-NEXT: ] 7458 // CHECK-NEXT: } 7459 // CHECK-NEXT: ] 7460 // CHECK-NEXT: } 7461 // CHECK-NEXT: ] 7462 // CHECK-NEXT: }, 7463 // CHECK-NEXT: { 7464 // CHECK-NEXT: "id": "0x{{.*}}", 7465 // CHECK-NEXT: "kind": "CXXConversionDecl", 7466 // CHECK-NEXT: "loc": { 7467 // CHECK-NEXT: "offset": {{[0-9]+}}, 7468 // CHECK-NEXT: "col": 3, 7469 // CHECK-NEXT: "tokLen": 1 7470 // CHECK-NEXT: }, 7471 // CHECK-NEXT: "range": { 7472 // CHECK-NEXT: "begin": { 7473 // CHECK-NEXT: "offset": {{[0-9]+}}, 7474 // CHECK-NEXT: "col": 3, 7475 // CHECK-NEXT: "tokLen": 1 7476 // CHECK-NEXT: }, 7477 // CHECK-NEXT: "end": { 7478 // CHECK-NEXT: "offset": {{[0-9]+}}, 7479 // CHECK-NEXT: "col": 27, 7480 // CHECK-NEXT: "tokLen": 1 7481 // CHECK-NEXT: } 7482 // CHECK-NEXT: }, 7483 // CHECK-NEXT: "isImplicit": true, 7484 // CHECK-NEXT: "name": "operator int (*)()", 7485 // CHECK-NEXT: "type": { 7486 // CHECK-NEXT: "qualType": "auto (*() const noexcept)() -> int" 7487 // CHECK-NEXT: }, 7488 // CHECK-NEXT: "inline": true, 7489 // CHECK-NEXT: "constexpr": true 7490 // CHECK-NEXT: }, 7491 // CHECK-NEXT: { 7492 // CHECK-NEXT: "id": "0x{{.*}}", 7493 // CHECK-NEXT: "kind": "CXXMethodDecl", 7494 // CHECK-NEXT: "loc": { 7495 // CHECK-NEXT: "offset": {{[0-9]+}}, 7496 // CHECK-NEXT: "col": 3, 7497 // CHECK-NEXT: "tokLen": 1 7498 // CHECK-NEXT: }, 7499 // CHECK-NEXT: "range": { 7500 // CHECK-NEXT: "begin": { 7501 // CHECK-NEXT: "offset": {{[0-9]+}}, 7502 // CHECK-NEXT: "col": 3, 7503 // CHECK-NEXT: "tokLen": 1 7504 // CHECK-NEXT: }, 7505 // CHECK-NEXT: "end": { 7506 // CHECK-NEXT: "offset": {{[0-9]+}}, 7507 // CHECK-NEXT: "col": 27, 7508 // CHECK-NEXT: "tokLen": 1 7509 // CHECK-NEXT: } 7510 // CHECK-NEXT: }, 7511 // CHECK-NEXT: "isImplicit": true, 7512 // CHECK-NEXT: "name": "__invoke", 7513 // CHECK-NEXT: "type": { 7514 // CHECK-NEXT: "qualType": "auto () -> int" 7515 // CHECK-NEXT: }, 7516 // CHECK-NEXT: "storageClass": "static", 7517 // CHECK-NEXT: "inline": true 7518 // CHECK-NEXT: } 7519 // CHECK-NEXT: ] 7520 // CHECK-NEXT: }, 7521 // CHECK-NEXT: { 7522 // CHECK-NEXT: "id": "0x{{.*}}", 7523 // CHECK-NEXT: "kind": "CompoundStmt", 7524 // CHECK-NEXT: "range": { 7525 // CHECK-NEXT: "begin": { 7526 // CHECK-NEXT: "offset": {{[0-9]+}}, 7527 // CHECK-NEXT: "col": 15, 7528 // CHECK-NEXT: "tokLen": 1 7529 // CHECK-NEXT: }, 7530 // CHECK-NEXT: "end": { 7531 // CHECK-NEXT: "offset": {{[0-9]+}}, 7532 // CHECK-NEXT: "col": 27, 7533 // CHECK-NEXT: "tokLen": 1 7534 // CHECK-NEXT: } 7535 // CHECK-NEXT: }, 7536 // CHECK-NEXT: "inner": [ 7537 // CHECK-NEXT: { 7538 // CHECK-NEXT: "id": "0x{{.*}}", 7539 // CHECK-NEXT: "kind": "ReturnStmt", 7540 // CHECK-NEXT: "range": { 7541 // CHECK-NEXT: "begin": { 7542 // CHECK-NEXT: "offset": {{[0-9]+}}, 7543 // CHECK-NEXT: "col": 17, 7544 // CHECK-NEXT: "tokLen": 6 7545 // CHECK-NEXT: }, 7546 // CHECK-NEXT: "end": { 7547 // CHECK-NEXT: "offset": {{[0-9]+}}, 7548 // CHECK-NEXT: "col": 24, 7549 // CHECK-NEXT: "tokLen": 1 7550 // CHECK-NEXT: } 7551 // CHECK-NEXT: }, 7552 // CHECK-NEXT: "inner": [ 7553 // CHECK-NEXT: { 7554 // CHECK-NEXT: "id": "0x{{.*}}", 7555 // CHECK-NEXT: "kind": "IntegerLiteral", 7556 // CHECK-NEXT: "range": { 7557 // CHECK-NEXT: "begin": { 7558 // CHECK-NEXT: "offset": {{[0-9]+}}, 7559 // CHECK-NEXT: "col": 24, 7560 // CHECK-NEXT: "tokLen": 1 7561 // CHECK-NEXT: }, 7562 // CHECK-NEXT: "end": { 7563 // CHECK-NEXT: "offset": {{[0-9]+}}, 7564 // CHECK-NEXT: "col": 24, 7565 // CHECK-NEXT: "tokLen": 1 7566 // CHECK-NEXT: } 7567 // CHECK-NEXT: }, 7568 // CHECK-NEXT: "type": { 7569 // CHECK-NEXT: "qualType": "int" 7570 // CHECK-NEXT: }, 7571 // CHECK-NEXT: "valueCategory": "prvalue", 7572 // CHECK-NEXT: "value": "0" 7573 // CHECK-NEXT: } 7574 // CHECK-NEXT: ] 7575 // CHECK-NEXT: } 7576 // CHECK-NEXT: ] 7577 // CHECK-NEXT: } 7578 // CHECK-NEXT: ] 7579 // CHECK-NEXT: }, 7580 // CHECK-NEXT: { 7581 // CHECK-NEXT: "id": "0x{{.*}}", 7582 // CHECK-NEXT: "kind": "CXXFoldExpr", 7583 // CHECK-NEXT: "range": { 7584 // CHECK-NEXT: "begin": { 7585 // CHECK-NEXT: "offset": {{[0-9]+}}, 7586 // CHECK-NEXT: "line": 119, 7587 // CHECK-NEXT: "col": 3, 7588 // CHECK-NEXT: "tokLen": 1 7589 // CHECK-NEXT: }, 7590 // CHECK-NEXT: "end": { 7591 // CHECK-NEXT: "offset": {{[0-9]+}}, 7592 // CHECK-NEXT: "col": 11, 7593 // CHECK-NEXT: "tokLen": 1 7594 // CHECK-NEXT: } 7595 // CHECK-NEXT: }, 7596 // CHECK-NEXT: "type": { 7597 // CHECK-NEXT: "qualType": "<dependent type>" 7598 // CHECK-NEXT: }, 7599 // CHECK-NEXT: "valueCategory": "prvalue", 7600 // CHECK-NEXT: "inner": [ 7601 // CHECK-NEXT: {}, 7602 // CHECK-NEXT: { 7603 // CHECK-NEXT: "id": "0x{{.*}}", 7604 // CHECK-NEXT: "kind": "DeclRefExpr", 7605 // CHECK-NEXT: "range": { 7606 // CHECK-NEXT: "begin": { 7607 // CHECK-NEXT: "offset": {{[0-9]+}}, 7608 // CHECK-NEXT: "col": 4, 7609 // CHECK-NEXT: "tokLen": 1 7610 // CHECK-NEXT: }, 7611 // CHECK-NEXT: "end": { 7612 // CHECK-NEXT: "offset": {{[0-9]+}}, 7613 // CHECK-NEXT: "col": 4, 7614 // CHECK-NEXT: "tokLen": 1 7615 // CHECK-NEXT: } 7616 // CHECK-NEXT: }, 7617 // CHECK-NEXT: "type": { 7618 // CHECK-NEXT: "qualType": "Ts" 7619 // CHECK-NEXT: }, 7620 // CHECK-NEXT: "valueCategory": "lvalue", 7621 // CHECK-NEXT: "referencedDecl": { 7622 // CHECK-NEXT: "id": "0x{{.*}}", 7623 // CHECK-NEXT: "kind": "ParmVarDecl", 7624 // CHECK-NEXT: "name": "a", 7625 // CHECK-NEXT: "type": { 7626 // CHECK-NEXT: "qualType": "Ts..." 7627 // CHECK-NEXT: } 7628 // CHECK-NEXT: } 7629 // CHECK-NEXT: }, 7630 // CHECK-NEXT: {} 7631 // CHECK-NEXT: ] 7632 // CHECK-NEXT: }, 7633 // CHECK-NEXT: { 7634 // CHECK-NEXT: "id": "0x{{.*}}", 7635 // CHECK-NEXT: "kind": "CXXFoldExpr", 7636 // CHECK-NEXT: "range": { 7637 // CHECK-NEXT: "begin": { 7638 // CHECK-NEXT: "offset": {{[0-9]+}}, 7639 // CHECK-NEXT: "line": 120, 7640 // CHECK-NEXT: "col": 3, 7641 // CHECK-NEXT: "tokLen": 1 7642 // CHECK-NEXT: }, 7643 // CHECK-NEXT: "end": { 7644 // CHECK-NEXT: "offset": {{[0-9]+}}, 7645 // CHECK-NEXT: "col": 11, 7646 // CHECK-NEXT: "tokLen": 1 7647 // CHECK-NEXT: } 7648 // CHECK-NEXT: }, 7649 // CHECK-NEXT: "type": { 7650 // CHECK-NEXT: "qualType": "<dependent type>" 7651 // CHECK-NEXT: }, 7652 // CHECK-NEXT: "valueCategory": "prvalue", 7653 // CHECK-NEXT: "inner": [ 7654 // CHECK-NEXT: {}, 7655 // CHECK-NEXT: {}, 7656 // CHECK-NEXT: { 7657 // CHECK-NEXT: "id": "0x{{.*}}", 7658 // CHECK-NEXT: "kind": "DeclRefExpr", 7659 // CHECK-NEXT: "range": { 7660 // CHECK-NEXT: "begin": { 7661 // CHECK-NEXT: "offset": {{[0-9]+}}, 7662 // CHECK-NEXT: "col": 10, 7663 // CHECK-NEXT: "tokLen": 1 7664 // CHECK-NEXT: }, 7665 // CHECK-NEXT: "end": { 7666 // CHECK-NEXT: "offset": {{[0-9]+}}, 7667 // CHECK-NEXT: "col": 10, 7668 // CHECK-NEXT: "tokLen": 1 7669 // CHECK-NEXT: } 7670 // CHECK-NEXT: }, 7671 // CHECK-NEXT: "type": { 7672 // CHECK-NEXT: "qualType": "Ts" 7673 // CHECK-NEXT: }, 7674 // CHECK-NEXT: "valueCategory": "lvalue", 7675 // CHECK-NEXT: "referencedDecl": { 7676 // CHECK-NEXT: "id": "0x{{.*}}", 7677 // CHECK-NEXT: "kind": "ParmVarDecl", 7678 // CHECK-NEXT: "name": "a", 7679 // CHECK-NEXT: "type": { 7680 // CHECK-NEXT: "qualType": "Ts..." 7681 // CHECK-NEXT: } 7682 // CHECK-NEXT: } 7683 // CHECK-NEXT: } 7684 // CHECK-NEXT: ] 7685 // CHECK-NEXT: }, 7686 // CHECK-NEXT: { 7687 // CHECK-NEXT: "id": "0x{{.*}}", 7688 // CHECK-NEXT: "kind": "CXXFoldExpr", 7689 // CHECK-NEXT: "range": { 7690 // CHECK-NEXT: "begin": { 7691 // CHECK-NEXT: "offset": {{[0-9]+}}, 7692 // CHECK-NEXT: "line": 121, 7693 // CHECK-NEXT: "col": 3, 7694 // CHECK-NEXT: "tokLen": 1 7695 // CHECK-NEXT: }, 7696 // CHECK-NEXT: "end": { 7697 // CHECK-NEXT: "offset": {{[0-9]+}}, 7698 // CHECK-NEXT: "col": 15, 7699 // CHECK-NEXT: "tokLen": 1 7700 // CHECK-NEXT: } 7701 // CHECK-NEXT: }, 7702 // CHECK-NEXT: "type": { 7703 // CHECK-NEXT: "qualType": "<dependent type>" 7704 // CHECK-NEXT: }, 7705 // CHECK-NEXT: "valueCategory": "prvalue", 7706 // CHECK-NEXT: "inner": [ 7707 // CHECK-NEXT: {}, 7708 // CHECK-NEXT: { 7709 // CHECK-NEXT: "id": "0x{{.*}}", 7710 // CHECK-NEXT: "kind": "DeclRefExpr", 7711 // CHECK-NEXT: "range": { 7712 // CHECK-NEXT: "begin": { 7713 // CHECK-NEXT: "offset": {{[0-9]+}}, 7714 // CHECK-NEXT: "col": 4, 7715 // CHECK-NEXT: "tokLen": 1 7716 // CHECK-NEXT: }, 7717 // CHECK-NEXT: "end": { 7718 // CHECK-NEXT: "offset": {{[0-9]+}}, 7719 // CHECK-NEXT: "col": 4, 7720 // CHECK-NEXT: "tokLen": 1 7721 // CHECK-NEXT: } 7722 // CHECK-NEXT: }, 7723 // CHECK-NEXT: "type": { 7724 // CHECK-NEXT: "qualType": "Ts" 7725 // CHECK-NEXT: }, 7726 // CHECK-NEXT: "valueCategory": "lvalue", 7727 // CHECK-NEXT: "referencedDecl": { 7728 // CHECK-NEXT: "id": "0x{{.*}}", 7729 // CHECK-NEXT: "kind": "ParmVarDecl", 7730 // CHECK-NEXT: "name": "a", 7731 // CHECK-NEXT: "type": { 7732 // CHECK-NEXT: "qualType": "Ts..." 7733 // CHECK-NEXT: } 7734 // CHECK-NEXT: } 7735 // CHECK-NEXT: }, 7736 // CHECK-NEXT: { 7737 // CHECK-NEXT: "id": "0x{{.*}}", 7738 // CHECK-NEXT: "kind": "DeclRefExpr", 7739 // CHECK-NEXT: "range": { 7740 // CHECK-NEXT: "begin": { 7741 // CHECK-NEXT: "offset": {{[0-9]+}}, 7742 // CHECK-NEXT: "col": 14, 7743 // CHECK-NEXT: "tokLen": 1 7744 // CHECK-NEXT: }, 7745 // CHECK-NEXT: "end": { 7746 // CHECK-NEXT: "offset": {{[0-9]+}}, 7747 // CHECK-NEXT: "col": 14, 7748 // CHECK-NEXT: "tokLen": 1 7749 // CHECK-NEXT: } 7750 // CHECK-NEXT: }, 7751 // CHECK-NEXT: "type": { 7752 // CHECK-NEXT: "qualType": "int" 7753 // CHECK-NEXT: }, 7754 // CHECK-NEXT: "valueCategory": "lvalue", 7755 // CHECK-NEXT: "referencedDecl": { 7756 // CHECK-NEXT: "id": "0x{{.*}}", 7757 // CHECK-NEXT: "kind": "VarDecl", 7758 // CHECK-NEXT: "name": "b", 7759 // CHECK-NEXT: "type": { 7760 // CHECK-NEXT: "qualType": "int" 7761 // CHECK-NEXT: } 7762 // CHECK-NEXT: } 7763 // CHECK-NEXT: } 7764 // CHECK-NEXT: ] 7765 // CHECK-NEXT: } 7766 // CHECK-NEXT: ] 7767 // CHECK-NEXT: } 7768 // CHECK-NEXT: ] 7769 // CHECK-NEXT: } 7770 // CHECK-NEXT: ] 7771 // CHECK-NEXT: } 7772 7773 7774 // CHECK-NOT: {{^}}Dumping 7775 // CHECK: "kind": "FunctionDecl", 7776 // CHECK-NEXT: "loc": { 7777 // CHECK-NEXT: "offset": {{[0-9]+}}, 7778 // CHECK-NEXT: "file": "{{.*}}", 7779 // CHECK-NEXT: "line": 130, 7780 // CHECK-NEXT: "col": 6, 7781 // CHECK-NEXT: "tokLen": 11 7782 // CHECK-NEXT: }, 7783 // CHECK-NEXT: "range": { 7784 // CHECK-NEXT: "begin": { 7785 // CHECK-NEXT: "offset": {{[0-9]+}}, 7786 // CHECK-NEXT: "col": 1, 7787 // CHECK-NEXT: "tokLen": 4 7788 // CHECK-NEXT: }, 7789 // CHECK-NEXT: "end": { 7790 // CHECK-NEXT: "offset": {{[0-9]+}}, 7791 // CHECK-NEXT: "line": 134, 7792 // CHECK-NEXT: "col": 1, 7793 // CHECK-NEXT: "tokLen": 1 7794 // CHECK-NEXT: } 7795 // CHECK-NEXT: }, 7796 // CHECK-NEXT: "name": "TestADLCall", 7797 // CHECK-NEXT: "mangledName": "_Z11TestADLCallv", 7798 // CHECK-NEXT: "type": { 7799 // CHECK-NEXT: "qualType": "void ()" 7800 // CHECK-NEXT: }, 7801 // CHECK-NEXT: "inner": [ 7802 // CHECK-NEXT: { 7803 // CHECK-NEXT: "id": "0x{{.*}}", 7804 // CHECK-NEXT: "kind": "CompoundStmt", 7805 // CHECK-NEXT: "range": { 7806 // CHECK-NEXT: "begin": { 7807 // CHECK-NEXT: "offset": {{[0-9]+}}, 7808 // CHECK-NEXT: "line": 130, 7809 // CHECK-NEXT: "col": 20, 7810 // CHECK-NEXT: "tokLen": 1 7811 // CHECK-NEXT: }, 7812 // CHECK-NEXT: "end": { 7813 // CHECK-NEXT: "offset": {{[0-9]+}}, 7814 // CHECK-NEXT: "line": 134, 7815 // CHECK-NEXT: "col": 1, 7816 // CHECK-NEXT: "tokLen": 1 7817 // CHECK-NEXT: } 7818 // CHECK-NEXT: }, 7819 // CHECK-NEXT: "inner": [ 7820 // CHECK-NEXT: { 7821 // CHECK-NEXT: "id": "0x{{.*}}", 7822 // CHECK-NEXT: "kind": "DeclStmt", 7823 // CHECK-NEXT: "range": { 7824 // CHECK-NEXT: "begin": { 7825 // CHECK-NEXT: "offset": {{[0-9]+}}, 7826 // CHECK-NEXT: "line": 131, 7827 // CHECK-NEXT: "col": 3, 7828 // CHECK-NEXT: "tokLen": 2 7829 // CHECK-NEXT: }, 7830 // CHECK-NEXT: "end": { 7831 // CHECK-NEXT: "offset": {{[0-9]+}}, 7832 // CHECK-NEXT: "col": 10, 7833 // CHECK-NEXT: "tokLen": 1 7834 // CHECK-NEXT: } 7835 // CHECK-NEXT: }, 7836 // CHECK-NEXT: "inner": [ 7837 // CHECK-NEXT: { 7838 // CHECK-NEXT: "id": "0x{{.*}}", 7839 // CHECK-NEXT: "kind": "VarDecl", 7840 // CHECK-NEXT: "loc": { 7841 // CHECK-NEXT: "offset": {{[0-9]+}}, 7842 // CHECK-NEXT: "col": 9, 7843 // CHECK-NEXT: "tokLen": 1 7844 // CHECK-NEXT: }, 7845 // CHECK-NEXT: "range": { 7846 // CHECK-NEXT: "begin": { 7847 // CHECK-NEXT: "offset": {{[0-9]+}}, 7848 // CHECK-NEXT: "col": 3, 7849 // CHECK-NEXT: "tokLen": 2 7850 // CHECK-NEXT: }, 7851 // CHECK-NEXT: "end": { 7852 // CHECK-NEXT: "offset": {{[0-9]+}}, 7853 // CHECK-NEXT: "col": 9, 7854 // CHECK-NEXT: "tokLen": 1 7855 // CHECK-NEXT: } 7856 // CHECK-NEXT: }, 7857 // CHECK-NEXT: "isUsed": true, 7858 // CHECK-NEXT: "name": "x", 7859 // CHECK-NEXT: "type": { 7860 // CHECK-NEXT: "desugaredQualType": "NS::X", 7861 // CHECK-NEXT: "qualType": "NS::X" 7862 // CHECK-NEXT: }, 7863 // CHECK-NEXT: "init": "call", 7864 // CHECK-NEXT: "inner": [ 7865 // CHECK-NEXT: { 7866 // CHECK-NEXT: "id": "0x{{.*}}", 7867 // CHECK-NEXT: "kind": "CXXConstructExpr", 7868 // CHECK-NEXT: "range": { 7869 // CHECK-NEXT: "begin": { 7870 // CHECK-NEXT: "offset": {{[0-9]+}}, 7871 // CHECK-NEXT: "col": 9, 7872 // CHECK-NEXT: "tokLen": 1 7873 // CHECK-NEXT: }, 7874 // CHECK-NEXT: "end": { 7875 // CHECK-NEXT: "offset": {{[0-9]+}}, 7876 // CHECK-NEXT: "col": 9, 7877 // CHECK-NEXT: "tokLen": 1 7878 // CHECK-NEXT: } 7879 // CHECK-NEXT: }, 7880 // CHECK-NEXT: "type": { 7881 // CHECK-NEXT: "desugaredQualType": "NS::X", 7882 // CHECK-NEXT: "qualType": "NS::X" 7883 // CHECK-NEXT: }, 7884 // CHECK-NEXT: "valueCategory": "prvalue", 7885 // CHECK-NEXT: "ctorType": { 7886 // CHECK-NEXT: "qualType": "void () noexcept" 7887 // CHECK-NEXT: }, 7888 // CHECK-NEXT: "hadMultipleCandidates": true, 7889 // CHECK-NEXT: "constructionKind": "complete" 7890 // CHECK-NEXT: } 7891 // CHECK-NEXT: ] 7892 // CHECK-NEXT: } 7893 // CHECK-NEXT: ] 7894 // CHECK-NEXT: }, 7895 // CHECK-NEXT: { 7896 // CHECK-NEXT: "id": "0x{{.*}}", 7897 // CHECK-NEXT: "kind": "CallExpr", 7898 // CHECK-NEXT: "range": { 7899 // CHECK-NEXT: "begin": { 7900 // CHECK-NEXT: "offset": {{[0-9]+}}, 7901 // CHECK-NEXT: "line": 132, 7902 // CHECK-NEXT: "col": 3, 7903 // CHECK-NEXT: "tokLen": 1 7904 // CHECK-NEXT: }, 7905 // CHECK-NEXT: "end": { 7906 // CHECK-NEXT: "offset": {{[0-9]+}}, 7907 // CHECK-NEXT: "col": 6, 7908 // CHECK-NEXT: "tokLen": 1 7909 // CHECK-NEXT: } 7910 // CHECK-NEXT: }, 7911 // CHECK-NEXT: "type": { 7912 // CHECK-NEXT: "qualType": "void" 7913 // CHECK-NEXT: }, 7914 // CHECK-NEXT: "valueCategory": "prvalue", 7915 // CHECK-NEXT: "adl": true, 7916 // CHECK-NEXT: "inner": [ 7917 // CHECK-NEXT: { 7918 // CHECK-NEXT: "id": "0x{{.*}}", 7919 // CHECK-NEXT: "kind": "ImplicitCastExpr", 7920 // CHECK-NEXT: "range": { 7921 // CHECK-NEXT: "begin": { 7922 // CHECK-NEXT: "offset": {{[0-9]+}}, 7923 // CHECK-NEXT: "col": 3, 7924 // CHECK-NEXT: "tokLen": 1 7925 // CHECK-NEXT: }, 7926 // CHECK-NEXT: "end": { 7927 // CHECK-NEXT: "offset": {{[0-9]+}}, 7928 // CHECK-NEXT: "col": 3, 7929 // CHECK-NEXT: "tokLen": 1 7930 // CHECK-NEXT: } 7931 // CHECK-NEXT: }, 7932 // CHECK-NEXT: "type": { 7933 // CHECK-NEXT: "qualType": "void (*)(X)" 7934 // CHECK-NEXT: }, 7935 // CHECK-NEXT: "valueCategory": "prvalue", 7936 // CHECK-NEXT: "castKind": "FunctionToPointerDecay", 7937 // CHECK-NEXT: "inner": [ 7938 // CHECK-NEXT: { 7939 // CHECK-NEXT: "id": "0x{{.*}}", 7940 // CHECK-NEXT: "kind": "DeclRefExpr", 7941 // CHECK-NEXT: "range": { 7942 // CHECK-NEXT: "begin": { 7943 // CHECK-NEXT: "offset": {{[0-9]+}}, 7944 // CHECK-NEXT: "col": 3, 7945 // CHECK-NEXT: "tokLen": 1 7946 // CHECK-NEXT: }, 7947 // CHECK-NEXT: "end": { 7948 // CHECK-NEXT: "offset": {{[0-9]+}}, 7949 // CHECK-NEXT: "col": 3, 7950 // CHECK-NEXT: "tokLen": 1 7951 // CHECK-NEXT: } 7952 // CHECK-NEXT: }, 7953 // CHECK-NEXT: "type": { 7954 // CHECK-NEXT: "qualType": "void (X)" 7955 // CHECK-NEXT: }, 7956 // CHECK-NEXT: "valueCategory": "lvalue", 7957 // CHECK-NEXT: "referencedDecl": { 7958 // CHECK-NEXT: "id": "0x{{.*}}", 7959 // CHECK-NEXT: "kind": "FunctionDecl", 7960 // CHECK-NEXT: "name": "f", 7961 // CHECK-NEXT: "type": { 7962 // CHECK-NEXT: "qualType": "void (X)" 7963 // CHECK-NEXT: } 7964 // CHECK-NEXT: } 7965 // CHECK-NEXT: } 7966 // CHECK-NEXT: ] 7967 // CHECK-NEXT: }, 7968 // CHECK-NEXT: { 7969 // CHECK-NEXT: "id": "0x{{.*}}", 7970 // CHECK-NEXT: "kind": "CXXConstructExpr", 7971 // CHECK-NEXT: "range": { 7972 // CHECK-NEXT: "begin": { 7973 // CHECK-NEXT: "offset": {{[0-9]+}}, 7974 // CHECK-NEXT: "col": 5, 7975 // CHECK-NEXT: "tokLen": 1 7976 // CHECK-NEXT: }, 7977 // CHECK-NEXT: "end": { 7978 // CHECK-NEXT: "offset": {{[0-9]+}}, 7979 // CHECK-NEXT: "col": 5, 7980 // CHECK-NEXT: "tokLen": 1 7981 // CHECK-NEXT: } 7982 // CHECK-NEXT: }, 7983 // CHECK-NEXT: "type": { 7984 // CHECK-NEXT: "desugaredQualType": "NS::X", 7985 // CHECK-NEXT: "qualType": "X" 7986 // CHECK-NEXT: }, 7987 // CHECK-NEXT: "valueCategory": "prvalue", 7988 // CHECK-NEXT: "ctorType": { 7989 // CHECK-NEXT: "qualType": "void (const NS::X &) noexcept" 7990 // CHECK-NEXT: }, 7991 // CHECK-NEXT: "hadMultipleCandidates": true, 7992 // CHECK-NEXT: "constructionKind": "complete", 7993 // CHECK-NEXT: "inner": [ 7994 // CHECK-NEXT: { 7995 // CHECK-NEXT: "id": "0x{{.*}}", 7996 // CHECK-NEXT: "kind": "ImplicitCastExpr", 7997 // CHECK-NEXT: "range": { 7998 // CHECK-NEXT: "begin": { 7999 // CHECK-NEXT: "offset": {{[0-9]+}}, 8000 // CHECK-NEXT: "col": 5, 8001 // CHECK-NEXT: "tokLen": 1 8002 // CHECK-NEXT: }, 8003 // CHECK-NEXT: "end": { 8004 // CHECK-NEXT: "offset": {{[0-9]+}}, 8005 // CHECK-NEXT: "col": 5, 8006 // CHECK-NEXT: "tokLen": 1 8007 // CHECK-NEXT: } 8008 // CHECK-NEXT: }, 8009 // CHECK-NEXT: "type": { 8010 // CHECK-NEXT: "qualType": "const NS::X" 8011 // CHECK-NEXT: }, 8012 // CHECK-NEXT: "valueCategory": "lvalue", 8013 // CHECK-NEXT: "castKind": "NoOp", 8014 // CHECK-NEXT: "inner": [ 8015 // CHECK-NEXT: { 8016 // CHECK-NEXT: "id": "0x{{.*}}", 8017 // CHECK-NEXT: "kind": "DeclRefExpr", 8018 // CHECK-NEXT: "range": { 8019 // CHECK-NEXT: "begin": { 8020 // CHECK-NEXT: "offset": {{[0-9]+}}, 8021 // CHECK-NEXT: "col": 5, 8022 // CHECK-NEXT: "tokLen": 1 8023 // CHECK-NEXT: }, 8024 // CHECK-NEXT: "end": { 8025 // CHECK-NEXT: "offset": {{[0-9]+}}, 8026 // CHECK-NEXT: "col": 5, 8027 // CHECK-NEXT: "tokLen": 1 8028 // CHECK-NEXT: } 8029 // CHECK-NEXT: }, 8030 // CHECK-NEXT: "type": { 8031 // CHECK-NEXT: "desugaredQualType": "NS::X", 8032 // CHECK-NEXT: "qualType": "NS::X" 8033 // CHECK-NEXT: }, 8034 // CHECK-NEXT: "valueCategory": "lvalue", 8035 // CHECK-NEXT: "referencedDecl": { 8036 // CHECK-NEXT: "id": "0x{{.*}}", 8037 // CHECK-NEXT: "kind": "VarDecl", 8038 // CHECK-NEXT: "name": "x", 8039 // CHECK-NEXT: "type": { 8040 // CHECK-NEXT: "desugaredQualType": "NS::X", 8041 // CHECK-NEXT: "qualType": "NS::X" 8042 // CHECK-NEXT: } 8043 // CHECK-NEXT: } 8044 // CHECK-NEXT: } 8045 // CHECK-NEXT: ] 8046 // CHECK-NEXT: } 8047 // CHECK-NEXT: ] 8048 // CHECK-NEXT: } 8049 // CHECK-NEXT: ] 8050 // CHECK-NEXT: }, 8051 // CHECK-NEXT: { 8052 // CHECK-NEXT: "id": "0x{{.*}}", 8053 // CHECK-NEXT: "kind": "CallExpr", 8054 // CHECK-NEXT: "range": { 8055 // CHECK-NEXT: "begin": { 8056 // CHECK-NEXT: "offset": {{[0-9]+}}, 8057 // CHECK-NEXT: "line": 133, 8058 // CHECK-NEXT: "col": 3, 8059 // CHECK-NEXT: "tokLen": 1 8060 // CHECK-NEXT: }, 8061 // CHECK-NEXT: "end": { 8062 // CHECK-NEXT: "offset": {{[0-9]+}}, 8063 // CHECK-NEXT: "col": 6, 8064 // CHECK-NEXT: "tokLen": 1 8065 // CHECK-NEXT: } 8066 // CHECK-NEXT: }, 8067 // CHECK-NEXT: "type": { 8068 // CHECK-NEXT: "qualType": "void" 8069 // CHECK-NEXT: }, 8070 // CHECK-NEXT: "valueCategory": "prvalue", 8071 // CHECK-NEXT: "adl": true, 8072 // CHECK-NEXT: "inner": [ 8073 // CHECK-NEXT: { 8074 // CHECK-NEXT: "id": "0x{{.*}}", 8075 // CHECK-NEXT: "kind": "ImplicitCastExpr", 8076 // CHECK-NEXT: "range": { 8077 // CHECK-NEXT: "begin": { 8078 // CHECK-NEXT: "offset": {{[0-9]+}}, 8079 // CHECK-NEXT: "col": 3, 8080 // CHECK-NEXT: "tokLen": 1 8081 // CHECK-NEXT: }, 8082 // CHECK-NEXT: "end": { 8083 // CHECK-NEXT: "offset": {{[0-9]+}}, 8084 // CHECK-NEXT: "col": 3, 8085 // CHECK-NEXT: "tokLen": 1 8086 // CHECK-NEXT: } 8087 // CHECK-NEXT: }, 8088 // CHECK-NEXT: "type": { 8089 // CHECK-NEXT: "qualType": "void (*)(...)" 8090 // CHECK-NEXT: }, 8091 // CHECK-NEXT: "valueCategory": "prvalue", 8092 // CHECK-NEXT: "castKind": "FunctionToPointerDecay", 8093 // CHECK-NEXT: "inner": [ 8094 // CHECK-NEXT: { 8095 // CHECK-NEXT: "id": "0x{{.*}}", 8096 // CHECK-NEXT: "kind": "DeclRefExpr", 8097 // CHECK-NEXT: "range": { 8098 // CHECK-NEXT: "begin": { 8099 // CHECK-NEXT: "offset": {{[0-9]+}}, 8100 // CHECK-NEXT: "col": 3, 8101 // CHECK-NEXT: "tokLen": 1 8102 // CHECK-NEXT: }, 8103 // CHECK-NEXT: "end": { 8104 // CHECK-NEXT: "offset": {{[0-9]+}}, 8105 // CHECK-NEXT: "col": 3, 8106 // CHECK-NEXT: "tokLen": 1 8107 // CHECK-NEXT: } 8108 // CHECK-NEXT: }, 8109 // CHECK-NEXT: "type": { 8110 // CHECK-NEXT: "qualType": "void (...)" 8111 // CHECK-NEXT: }, 8112 // CHECK-NEXT: "valueCategory": "lvalue", 8113 // CHECK-NEXT: "referencedDecl": { 8114 // CHECK-NEXT: "id": "0x{{.*}}", 8115 // CHECK-NEXT: "kind": "FunctionDecl", 8116 // CHECK-NEXT: "name": "y", 8117 // CHECK-NEXT: "type": { 8118 // CHECK-NEXT: "qualType": "void (...)" 8119 // CHECK-NEXT: } 8120 // CHECK-NEXT: } 8121 // CHECK-NEXT: } 8122 // CHECK-NEXT: ] 8123 // CHECK-NEXT: }, 8124 // CHECK-NEXT: { 8125 // CHECK-NEXT: "id": "0x{{.*}}", 8126 // CHECK-NEXT: "kind": "CXXConstructExpr", 8127 // CHECK-NEXT: "range": { 8128 // CHECK-NEXT: "begin": { 8129 // CHECK-NEXT: "offset": {{[0-9]+}}, 8130 // CHECK-NEXT: "col": 5, 8131 // CHECK-NEXT: "tokLen": 1 8132 // CHECK-NEXT: }, 8133 // CHECK-NEXT: "end": { 8134 // CHECK-NEXT: "offset": {{[0-9]+}}, 8135 // CHECK-NEXT: "col": 5, 8136 // CHECK-NEXT: "tokLen": 1 8137 // CHECK-NEXT: } 8138 // CHECK-NEXT: }, 8139 // CHECK-NEXT: "type": { 8140 // CHECK-NEXT: "desugaredQualType": "NS::X", 8141 // CHECK-NEXT: "qualType": "NS::X" 8142 // CHECK-NEXT: }, 8143 // CHECK-NEXT: "valueCategory": "prvalue", 8144 // CHECK-NEXT: "ctorType": { 8145 // CHECK-NEXT: "qualType": "void (const NS::X &) noexcept" 8146 // CHECK-NEXT: }, 8147 // CHECK-NEXT: "hadMultipleCandidates": true, 8148 // CHECK-NEXT: "constructionKind": "complete", 8149 // CHECK-NEXT: "inner": [ 8150 // CHECK-NEXT: { 8151 // CHECK-NEXT: "id": "0x{{.*}}", 8152 // CHECK-NEXT: "kind": "ImplicitCastExpr", 8153 // CHECK-NEXT: "range": { 8154 // CHECK-NEXT: "begin": { 8155 // CHECK-NEXT: "offset": {{[0-9]+}}, 8156 // CHECK-NEXT: "col": 5, 8157 // CHECK-NEXT: "tokLen": 1 8158 // CHECK-NEXT: }, 8159 // CHECK-NEXT: "end": { 8160 // CHECK-NEXT: "offset": {{[0-9]+}}, 8161 // CHECK-NEXT: "col": 5, 8162 // CHECK-NEXT: "tokLen": 1 8163 // CHECK-NEXT: } 8164 // CHECK-NEXT: }, 8165 // CHECK-NEXT: "type": { 8166 // CHECK-NEXT: "qualType": "const NS::X" 8167 // CHECK-NEXT: }, 8168 // CHECK-NEXT: "valueCategory": "lvalue", 8169 // CHECK-NEXT: "castKind": "NoOp", 8170 // CHECK-NEXT: "inner": [ 8171 // CHECK-NEXT: { 8172 // CHECK-NEXT: "id": "0x{{.*}}", 8173 // CHECK-NEXT: "kind": "DeclRefExpr", 8174 // CHECK-NEXT: "range": { 8175 // CHECK-NEXT: "begin": { 8176 // CHECK-NEXT: "offset": {{[0-9]+}}, 8177 // CHECK-NEXT: "col": 5, 8178 // CHECK-NEXT: "tokLen": 1 8179 // CHECK-NEXT: }, 8180 // CHECK-NEXT: "end": { 8181 // CHECK-NEXT: "offset": {{[0-9]+}}, 8182 // CHECK-NEXT: "col": 5, 8183 // CHECK-NEXT: "tokLen": 1 8184 // CHECK-NEXT: } 8185 // CHECK-NEXT: }, 8186 // CHECK-NEXT: "type": { 8187 // CHECK-NEXT: "desugaredQualType": "NS::X", 8188 // CHECK-NEXT: "qualType": "NS::X" 8189 // CHECK-NEXT: }, 8190 // CHECK-NEXT: "valueCategory": "lvalue", 8191 // CHECK-NEXT: "referencedDecl": { 8192 // CHECK-NEXT: "id": "0x{{.*}}", 8193 // CHECK-NEXT: "kind": "VarDecl", 8194 // CHECK-NEXT: "name": "x", 8195 // CHECK-NEXT: "type": { 8196 // CHECK-NEXT: "desugaredQualType": "NS::X", 8197 // CHECK-NEXT: "qualType": "NS::X" 8198 // CHECK-NEXT: } 8199 // CHECK-NEXT: } 8200 // CHECK-NEXT: } 8201 // CHECK-NEXT: ] 8202 // CHECK-NEXT: } 8203 // CHECK-NEXT: ] 8204 // CHECK-NEXT: } 8205 // CHECK-NEXT: ] 8206 // CHECK-NEXT: } 8207 // CHECK-NEXT: ] 8208 // CHECK-NEXT: } 8209 // CHECK-NEXT: ] 8210 // CHECK-NEXT: } 8211 8212 8213 // CHECK-NOT: {{^}}Dumping 8214 // CHECK: "kind": "FunctionDecl", 8215 // CHECK-NEXT: "loc": { 8216 // CHECK-NEXT: "offset": {{[0-9]+}}, 8217 // CHECK-NEXT: "file": "{{.*}}", 8218 // CHECK-NEXT: "line": 136, 8219 // CHECK-NEXT: "col": 6, 8220 // CHECK-NEXT: "tokLen": 14 8221 // CHECK-NEXT: }, 8222 // CHECK-NEXT: "range": { 8223 // CHECK-NEXT: "begin": { 8224 // CHECK-NEXT: "offset": {{[0-9]+}}, 8225 // CHECK-NEXT: "col": 1, 8226 // CHECK-NEXT: "tokLen": 4 8227 // CHECK-NEXT: }, 8228 // CHECK-NEXT: "end": { 8229 // CHECK-NEXT: "offset": {{[0-9]+}}, 8230 // CHECK-NEXT: "line": 139, 8231 // CHECK-NEXT: "col": 1, 8232 // CHECK-NEXT: "tokLen": 1 8233 // CHECK-NEXT: } 8234 // CHECK-NEXT: }, 8235 // CHECK-NEXT: "name": "TestNonADLCall", 8236 // CHECK-NEXT: "mangledName": "_Z14TestNonADLCallv", 8237 // CHECK-NEXT: "type": { 8238 // CHECK-NEXT: "qualType": "void ()" 8239 // CHECK-NEXT: }, 8240 // CHECK-NEXT: "inner": [ 8241 // CHECK-NEXT: { 8242 // CHECK-NEXT: "id": "0x{{.*}}", 8243 // CHECK-NEXT: "kind": "CompoundStmt", 8244 // CHECK-NEXT: "range": { 8245 // CHECK-NEXT: "begin": { 8246 // CHECK-NEXT: "offset": {{[0-9]+}}, 8247 // CHECK-NEXT: "line": 136, 8248 // CHECK-NEXT: "col": 23, 8249 // CHECK-NEXT: "tokLen": 1 8250 // CHECK-NEXT: }, 8251 // CHECK-NEXT: "end": { 8252 // CHECK-NEXT: "offset": {{[0-9]+}}, 8253 // CHECK-NEXT: "line": 139, 8254 // CHECK-NEXT: "col": 1, 8255 // CHECK-NEXT: "tokLen": 1 8256 // CHECK-NEXT: } 8257 // CHECK-NEXT: }, 8258 // CHECK-NEXT: "inner": [ 8259 // CHECK-NEXT: { 8260 // CHECK-NEXT: "id": "0x{{.*}}", 8261 // CHECK-NEXT: "kind": "DeclStmt", 8262 // CHECK-NEXT: "range": { 8263 // CHECK-NEXT: "begin": { 8264 // CHECK-NEXT: "offset": {{[0-9]+}}, 8265 // CHECK-NEXT: "line": 137, 8266 // CHECK-NEXT: "col": 3, 8267 // CHECK-NEXT: "tokLen": 2 8268 // CHECK-NEXT: }, 8269 // CHECK-NEXT: "end": { 8270 // CHECK-NEXT: "offset": {{[0-9]+}}, 8271 // CHECK-NEXT: "col": 10, 8272 // CHECK-NEXT: "tokLen": 1 8273 // CHECK-NEXT: } 8274 // CHECK-NEXT: }, 8275 // CHECK-NEXT: "inner": [ 8276 // CHECK-NEXT: { 8277 // CHECK-NEXT: "id": "0x{{.*}}", 8278 // CHECK-NEXT: "kind": "VarDecl", 8279 // CHECK-NEXT: "loc": { 8280 // CHECK-NEXT: "offset": {{[0-9]+}}, 8281 // CHECK-NEXT: "col": 9, 8282 // CHECK-NEXT: "tokLen": 1 8283 // CHECK-NEXT: }, 8284 // CHECK-NEXT: "range": { 8285 // CHECK-NEXT: "begin": { 8286 // CHECK-NEXT: "offset": {{[0-9]+}}, 8287 // CHECK-NEXT: "col": 3, 8288 // CHECK-NEXT: "tokLen": 2 8289 // CHECK-NEXT: }, 8290 // CHECK-NEXT: "end": { 8291 // CHECK-NEXT: "offset": {{[0-9]+}}, 8292 // CHECK-NEXT: "col": 9, 8293 // CHECK-NEXT: "tokLen": 1 8294 // CHECK-NEXT: } 8295 // CHECK-NEXT: }, 8296 // CHECK-NEXT: "isUsed": true, 8297 // CHECK-NEXT: "name": "x", 8298 // CHECK-NEXT: "type": { 8299 // CHECK-NEXT: "desugaredQualType": "NS::X", 8300 // CHECK-NEXT: "qualType": "NS::X" 8301 // CHECK-NEXT: }, 8302 // CHECK-NEXT: "init": "call", 8303 // CHECK-NEXT: "inner": [ 8304 // CHECK-NEXT: { 8305 // CHECK-NEXT: "id": "0x{{.*}}", 8306 // CHECK-NEXT: "kind": "CXXConstructExpr", 8307 // CHECK-NEXT: "range": { 8308 // CHECK-NEXT: "begin": { 8309 // CHECK-NEXT: "offset": {{[0-9]+}}, 8310 // CHECK-NEXT: "col": 9, 8311 // CHECK-NEXT: "tokLen": 1 8312 // CHECK-NEXT: }, 8313 // CHECK-NEXT: "end": { 8314 // CHECK-NEXT: "offset": {{[0-9]+}}, 8315 // CHECK-NEXT: "col": 9, 8316 // CHECK-NEXT: "tokLen": 1 8317 // CHECK-NEXT: } 8318 // CHECK-NEXT: }, 8319 // CHECK-NEXT: "type": { 8320 // CHECK-NEXT: "desugaredQualType": "NS::X", 8321 // CHECK-NEXT: "qualType": "NS::X" 8322 // CHECK-NEXT: }, 8323 // CHECK-NEXT: "valueCategory": "prvalue", 8324 // CHECK-NEXT: "ctorType": { 8325 // CHECK-NEXT: "qualType": "void () noexcept" 8326 // CHECK-NEXT: }, 8327 // CHECK-NEXT: "hadMultipleCandidates": true, 8328 // CHECK-NEXT: "constructionKind": "complete" 8329 // CHECK-NEXT: } 8330 // CHECK-NEXT: ] 8331 // CHECK-NEXT: } 8332 // CHECK-NEXT: ] 8333 // CHECK-NEXT: }, 8334 // CHECK-NEXT: { 8335 // CHECK-NEXT: "id": "0x{{.*}}", 8336 // CHECK-NEXT: "kind": "CallExpr", 8337 // CHECK-NEXT: "range": { 8338 // CHECK-NEXT: "begin": { 8339 // CHECK-NEXT: "offset": {{[0-9]+}}, 8340 // CHECK-NEXT: "line": 138, 8341 // CHECK-NEXT: "col": 3, 8342 // CHECK-NEXT: "tokLen": 2 8343 // CHECK-NEXT: }, 8344 // CHECK-NEXT: "end": { 8345 // CHECK-NEXT: "offset": {{[0-9]+}}, 8346 // CHECK-NEXT: "col": 10, 8347 // CHECK-NEXT: "tokLen": 1 8348 // CHECK-NEXT: } 8349 // CHECK-NEXT: }, 8350 // CHECK-NEXT: "type": { 8351 // CHECK-NEXT: "qualType": "void" 8352 // CHECK-NEXT: }, 8353 // CHECK-NEXT: "valueCategory": "prvalue", 8354 // CHECK-NEXT: "inner": [ 8355 // CHECK-NEXT: { 8356 // CHECK-NEXT: "id": "0x{{.*}}", 8357 // CHECK-NEXT: "kind": "ImplicitCastExpr", 8358 // CHECK-NEXT: "range": { 8359 // CHECK-NEXT: "begin": { 8360 // CHECK-NEXT: "offset": {{[0-9]+}}, 8361 // CHECK-NEXT: "col": 3, 8362 // CHECK-NEXT: "tokLen": 2 8363 // CHECK-NEXT: }, 8364 // CHECK-NEXT: "end": { 8365 // CHECK-NEXT: "offset": {{[0-9]+}}, 8366 // CHECK-NEXT: "col": 7, 8367 // CHECK-NEXT: "tokLen": 1 8368 // CHECK-NEXT: } 8369 // CHECK-NEXT: }, 8370 // CHECK-NEXT: "type": { 8371 // CHECK-NEXT: "qualType": "void (*)(X)" 8372 // CHECK-NEXT: }, 8373 // CHECK-NEXT: "valueCategory": "prvalue", 8374 // CHECK-NEXT: "castKind": "FunctionToPointerDecay", 8375 // CHECK-NEXT: "inner": [ 8376 // CHECK-NEXT: { 8377 // CHECK-NEXT: "id": "0x{{.*}}", 8378 // CHECK-NEXT: "kind": "DeclRefExpr", 8379 // CHECK-NEXT: "range": { 8380 // CHECK-NEXT: "begin": { 8381 // CHECK-NEXT: "offset": {{[0-9]+}}, 8382 // CHECK-NEXT: "col": 3, 8383 // CHECK-NEXT: "tokLen": 2 8384 // CHECK-NEXT: }, 8385 // CHECK-NEXT: "end": { 8386 // CHECK-NEXT: "offset": {{[0-9]+}}, 8387 // CHECK-NEXT: "col": 7, 8388 // CHECK-NEXT: "tokLen": 1 8389 // CHECK-NEXT: } 8390 // CHECK-NEXT: }, 8391 // CHECK-NEXT: "type": { 8392 // CHECK-NEXT: "qualType": "void (X)" 8393 // CHECK-NEXT: }, 8394 // CHECK-NEXT: "valueCategory": "lvalue", 8395 // CHECK-NEXT: "referencedDecl": { 8396 // CHECK-NEXT: "id": "0x{{.*}}", 8397 // CHECK-NEXT: "kind": "FunctionDecl", 8398 // CHECK-NEXT: "name": "f", 8399 // CHECK-NEXT: "type": { 8400 // CHECK-NEXT: "qualType": "void (X)" 8401 // CHECK-NEXT: } 8402 // CHECK-NEXT: } 8403 // CHECK-NEXT: } 8404 // CHECK-NEXT: ] 8405 // CHECK-NEXT: }, 8406 // CHECK-NEXT: { 8407 // CHECK-NEXT: "id": "0x{{.*}}", 8408 // CHECK-NEXT: "kind": "CXXConstructExpr", 8409 // CHECK-NEXT: "range": { 8410 // CHECK-NEXT: "begin": { 8411 // CHECK-NEXT: "offset": {{[0-9]+}}, 8412 // CHECK-NEXT: "col": 9, 8413 // CHECK-NEXT: "tokLen": 1 8414 // CHECK-NEXT: }, 8415 // CHECK-NEXT: "end": { 8416 // CHECK-NEXT: "offset": {{[0-9]+}}, 8417 // CHECK-NEXT: "col": 9, 8418 // CHECK-NEXT: "tokLen": 1 8419 // CHECK-NEXT: } 8420 // CHECK-NEXT: }, 8421 // CHECK-NEXT: "type": { 8422 // CHECK-NEXT: "desugaredQualType": "NS::X", 8423 // CHECK-NEXT: "qualType": "X" 8424 // CHECK-NEXT: }, 8425 // CHECK-NEXT: "valueCategory": "prvalue", 8426 // CHECK-NEXT: "ctorType": { 8427 // CHECK-NEXT: "qualType": "void (const NS::X &) noexcept" 8428 // CHECK-NEXT: }, 8429 // CHECK-NEXT: "hadMultipleCandidates": true, 8430 // CHECK-NEXT: "constructionKind": "complete", 8431 // CHECK-NEXT: "inner": [ 8432 // CHECK-NEXT: { 8433 // CHECK-NEXT: "id": "0x{{.*}}", 8434 // CHECK-NEXT: "kind": "ImplicitCastExpr", 8435 // CHECK-NEXT: "range": { 8436 // CHECK-NEXT: "begin": { 8437 // CHECK-NEXT: "offset": {{[0-9]+}}, 8438 // CHECK-NEXT: "col": 9, 8439 // CHECK-NEXT: "tokLen": 1 8440 // CHECK-NEXT: }, 8441 // CHECK-NEXT: "end": { 8442 // CHECK-NEXT: "offset": {{[0-9]+}}, 8443 // CHECK-NEXT: "col": 9, 8444 // CHECK-NEXT: "tokLen": 1 8445 // CHECK-NEXT: } 8446 // CHECK-NEXT: }, 8447 // CHECK-NEXT: "type": { 8448 // CHECK-NEXT: "qualType": "const NS::X" 8449 // CHECK-NEXT: }, 8450 // CHECK-NEXT: "valueCategory": "lvalue", 8451 // CHECK-NEXT: "castKind": "NoOp", 8452 // CHECK-NEXT: "inner": [ 8453 // CHECK-NEXT: { 8454 // CHECK-NEXT: "id": "0x{{.*}}", 8455 // CHECK-NEXT: "kind": "DeclRefExpr", 8456 // CHECK-NEXT: "range": { 8457 // CHECK-NEXT: "begin": { 8458 // CHECK-NEXT: "offset": {{[0-9]+}}, 8459 // CHECK-NEXT: "col": 9, 8460 // CHECK-NEXT: "tokLen": 1 8461 // CHECK-NEXT: }, 8462 // CHECK-NEXT: "end": { 8463 // CHECK-NEXT: "offset": {{[0-9]+}}, 8464 // CHECK-NEXT: "col": 9, 8465 // CHECK-NEXT: "tokLen": 1 8466 // CHECK-NEXT: } 8467 // CHECK-NEXT: }, 8468 // CHECK-NEXT: "type": { 8469 // CHECK-NEXT: "desugaredQualType": "NS::X", 8470 // CHECK-NEXT: "qualType": "NS::X" 8471 // CHECK-NEXT: }, 8472 // CHECK-NEXT: "valueCategory": "lvalue", 8473 // CHECK-NEXT: "referencedDecl": { 8474 // CHECK-NEXT: "id": "0x{{.*}}", 8475 // CHECK-NEXT: "kind": "VarDecl", 8476 // CHECK-NEXT: "name": "x", 8477 // CHECK-NEXT: "type": { 8478 // CHECK-NEXT: "desugaredQualType": "NS::X", 8479 // CHECK-NEXT: "qualType": "NS::X" 8480 // CHECK-NEXT: } 8481 // CHECK-NEXT: } 8482 // CHECK-NEXT: } 8483 // CHECK-NEXT: ] 8484 // CHECK-NEXT: } 8485 // CHECK-NEXT: ] 8486 // CHECK-NEXT: } 8487 // CHECK-NEXT: ] 8488 // CHECK-NEXT: } 8489 // CHECK-NEXT: ] 8490 // CHECK-NEXT: } 8491 // CHECK-NEXT: ] 8492 // CHECK-NEXT: } 8493 8494 8495 // CHECK-NOT: {{^}}Dumping 8496 // CHECK: "kind": "FunctionDecl", 8497 // CHECK-NEXT: "loc": { 8498 // CHECK-NEXT: "offset": {{[0-9]+}}, 8499 // CHECK-NEXT: "file": "{{.*}}", 8500 // CHECK-NEXT: "line": 141, 8501 // CHECK-NEXT: "col": 6, 8502 // CHECK-NEXT: "tokLen": 15 8503 // CHECK-NEXT: }, 8504 // CHECK-NEXT: "range": { 8505 // CHECK-NEXT: "begin": { 8506 // CHECK-NEXT: "offset": {{[0-9]+}}, 8507 // CHECK-NEXT: "col": 1, 8508 // CHECK-NEXT: "tokLen": 4 8509 // CHECK-NEXT: }, 8510 // CHECK-NEXT: "end": { 8511 // CHECK-NEXT: "offset": {{[0-9]+}}, 8512 // CHECK-NEXT: "line": 146, 8513 // CHECK-NEXT: "col": 1, 8514 // CHECK-NEXT: "tokLen": 1 8515 // CHECK-NEXT: } 8516 // CHECK-NEXT: }, 8517 // CHECK-NEXT: "name": "TestNonADLCall2", 8518 // CHECK-NEXT: "mangledName": "_Z15TestNonADLCall2v", 8519 // CHECK-NEXT: "type": { 8520 // CHECK-NEXT: "qualType": "void ()" 8521 // CHECK-NEXT: }, 8522 // CHECK-NEXT: "inner": [ 8523 // CHECK-NEXT: { 8524 // CHECK-NEXT: "id": "0x{{.*}}", 8525 // CHECK-NEXT: "kind": "CompoundStmt", 8526 // CHECK-NEXT: "range": { 8527 // CHECK-NEXT: "begin": { 8528 // CHECK-NEXT: "offset": {{[0-9]+}}, 8529 // CHECK-NEXT: "line": 141, 8530 // CHECK-NEXT: "col": 24, 8531 // CHECK-NEXT: "tokLen": 1 8532 // CHECK-NEXT: }, 8533 // CHECK-NEXT: "end": { 8534 // CHECK-NEXT: "offset": {{[0-9]+}}, 8535 // CHECK-NEXT: "line": 146, 8536 // CHECK-NEXT: "col": 1, 8537 // CHECK-NEXT: "tokLen": 1 8538 // CHECK-NEXT: } 8539 // CHECK-NEXT: }, 8540 // CHECK-NEXT: "inner": [ 8541 // CHECK-NEXT: { 8542 // CHECK-NEXT: "id": "0x{{.*}}", 8543 // CHECK-NEXT: "kind": "DeclStmt", 8544 // CHECK-NEXT: "range": { 8545 // CHECK-NEXT: "begin": { 8546 // CHECK-NEXT: "offset": {{[0-9]+}}, 8547 // CHECK-NEXT: "line": 142, 8548 // CHECK-NEXT: "col": 3, 8549 // CHECK-NEXT: "tokLen": 2 8550 // CHECK-NEXT: }, 8551 // CHECK-NEXT: "end": { 8552 // CHECK-NEXT: "offset": {{[0-9]+}}, 8553 // CHECK-NEXT: "col": 10, 8554 // CHECK-NEXT: "tokLen": 1 8555 // CHECK-NEXT: } 8556 // CHECK-NEXT: }, 8557 // CHECK-NEXT: "inner": [ 8558 // CHECK-NEXT: { 8559 // CHECK-NEXT: "id": "0x{{.*}}", 8560 // CHECK-NEXT: "kind": "VarDecl", 8561 // CHECK-NEXT: "loc": { 8562 // CHECK-NEXT: "offset": {{[0-9]+}}, 8563 // CHECK-NEXT: "col": 9, 8564 // CHECK-NEXT: "tokLen": 1 8565 // CHECK-NEXT: }, 8566 // CHECK-NEXT: "range": { 8567 // CHECK-NEXT: "begin": { 8568 // CHECK-NEXT: "offset": {{[0-9]+}}, 8569 // CHECK-NEXT: "col": 3, 8570 // CHECK-NEXT: "tokLen": 2 8571 // CHECK-NEXT: }, 8572 // CHECK-NEXT: "end": { 8573 // CHECK-NEXT: "offset": {{[0-9]+}}, 8574 // CHECK-NEXT: "col": 9, 8575 // CHECK-NEXT: "tokLen": 1 8576 // CHECK-NEXT: } 8577 // CHECK-NEXT: }, 8578 // CHECK-NEXT: "isUsed": true, 8579 // CHECK-NEXT: "name": "x", 8580 // CHECK-NEXT: "type": { 8581 // CHECK-NEXT: "desugaredQualType": "NS::X", 8582 // CHECK-NEXT: "qualType": "NS::X" 8583 // CHECK-NEXT: }, 8584 // CHECK-NEXT: "init": "call", 8585 // CHECK-NEXT: "inner": [ 8586 // CHECK-NEXT: { 8587 // CHECK-NEXT: "id": "0x{{.*}}", 8588 // CHECK-NEXT: "kind": "CXXConstructExpr", 8589 // CHECK-NEXT: "range": { 8590 // CHECK-NEXT: "begin": { 8591 // CHECK-NEXT: "offset": {{[0-9]+}}, 8592 // CHECK-NEXT: "col": 9, 8593 // CHECK-NEXT: "tokLen": 1 8594 // CHECK-NEXT: }, 8595 // CHECK-NEXT: "end": { 8596 // CHECK-NEXT: "offset": {{[0-9]+}}, 8597 // CHECK-NEXT: "col": 9, 8598 // CHECK-NEXT: "tokLen": 1 8599 // CHECK-NEXT: } 8600 // CHECK-NEXT: }, 8601 // CHECK-NEXT: "type": { 8602 // CHECK-NEXT: "desugaredQualType": "NS::X", 8603 // CHECK-NEXT: "qualType": "NS::X" 8604 // CHECK-NEXT: }, 8605 // CHECK-NEXT: "valueCategory": "prvalue", 8606 // CHECK-NEXT: "ctorType": { 8607 // CHECK-NEXT: "qualType": "void () noexcept" 8608 // CHECK-NEXT: }, 8609 // CHECK-NEXT: "hadMultipleCandidates": true, 8610 // CHECK-NEXT: "constructionKind": "complete" 8611 // CHECK-NEXT: } 8612 // CHECK-NEXT: ] 8613 // CHECK-NEXT: } 8614 // CHECK-NEXT: ] 8615 // CHECK-NEXT: }, 8616 // CHECK-NEXT: { 8617 // CHECK-NEXT: "id": "0x{{.*}}", 8618 // CHECK-NEXT: "kind": "DeclStmt", 8619 // CHECK-NEXT: "range": { 8620 // CHECK-NEXT: "begin": { 8621 // CHECK-NEXT: "offset": {{[0-9]+}}, 8622 // CHECK-NEXT: "line": 143, 8623 // CHECK-NEXT: "col": 3, 8624 // CHECK-NEXT: "tokLen": 5 8625 // CHECK-NEXT: }, 8626 // CHECK-NEXT: "end": { 8627 // CHECK-NEXT: "offset": {{[0-9]+}}, 8628 // CHECK-NEXT: "col": 14, 8629 // CHECK-NEXT: "tokLen": 1 8630 // CHECK-NEXT: } 8631 // CHECK-NEXT: }, 8632 // CHECK-NEXT: "inner": [ 8633 // CHECK-NEXT: { 8634 // CHECK-NEXT: "id": "0x{{.*}}", 8635 // CHECK-NEXT: "kind": "UsingDecl", 8636 // CHECK-NEXT: "loc": { 8637 // CHECK-NEXT: "offset": {{[0-9]+}}, 8638 // CHECK-NEXT: "col": 13, 8639 // CHECK-NEXT: "tokLen": 1 8640 // CHECK-NEXT: }, 8641 // CHECK-NEXT: "range": { 8642 // CHECK-NEXT: "begin": { 8643 // CHECK-NEXT: "offset": {{[0-9]+}}, 8644 // CHECK-NEXT: "col": 3, 8645 // CHECK-NEXT: "tokLen": 5 8646 // CHECK-NEXT: }, 8647 // CHECK-NEXT: "end": { 8648 // CHECK-NEXT: "offset": {{[0-9]+}}, 8649 // CHECK-NEXT: "col": 13, 8650 // CHECK-NEXT: "tokLen": 1 8651 // CHECK-NEXT: } 8652 // CHECK-NEXT: }, 8653 // CHECK-NEXT: "name": "NS::f" 8654 // CHECK-NEXT: } 8655 // CHECK-NEXT: ] 8656 // CHECK-NEXT: }, 8657 // CHECK-NEXT: { 8658 // CHECK-NEXT: "id": "0x{{.*}}", 8659 // CHECK-NEXT: "kind": "CallExpr", 8660 // CHECK-NEXT: "range": { 8661 // CHECK-NEXT: "begin": { 8662 // CHECK-NEXT: "offset": {{[0-9]+}}, 8663 // CHECK-NEXT: "line": 144, 8664 // CHECK-NEXT: "col": 3, 8665 // CHECK-NEXT: "tokLen": 1 8666 // CHECK-NEXT: }, 8667 // CHECK-NEXT: "end": { 8668 // CHECK-NEXT: "offset": {{[0-9]+}}, 8669 // CHECK-NEXT: "col": 6, 8670 // CHECK-NEXT: "tokLen": 1 8671 // CHECK-NEXT: } 8672 // CHECK-NEXT: }, 8673 // CHECK-NEXT: "type": { 8674 // CHECK-NEXT: "qualType": "void" 8675 // CHECK-NEXT: }, 8676 // CHECK-NEXT: "valueCategory": "prvalue", 8677 // CHECK-NEXT: "inner": [ 8678 // CHECK-NEXT: { 8679 // CHECK-NEXT: "id": "0x{{.*}}", 8680 // CHECK-NEXT: "kind": "ImplicitCastExpr", 8681 // CHECK-NEXT: "range": { 8682 // CHECK-NEXT: "begin": { 8683 // CHECK-NEXT: "offset": {{[0-9]+}}, 8684 // CHECK-NEXT: "col": 3, 8685 // CHECK-NEXT: "tokLen": 1 8686 // CHECK-NEXT: }, 8687 // CHECK-NEXT: "end": { 8688 // CHECK-NEXT: "offset": {{[0-9]+}}, 8689 // CHECK-NEXT: "col": 3, 8690 // CHECK-NEXT: "tokLen": 1 8691 // CHECK-NEXT: } 8692 // CHECK-NEXT: }, 8693 // CHECK-NEXT: "type": { 8694 // CHECK-NEXT: "qualType": "void (*)(X)" 8695 // CHECK-NEXT: }, 8696 // CHECK-NEXT: "valueCategory": "prvalue", 8697 // CHECK-NEXT: "castKind": "FunctionToPointerDecay", 8698 // CHECK-NEXT: "inner": [ 8699 // CHECK-NEXT: { 8700 // CHECK-NEXT: "id": "0x{{.*}}", 8701 // CHECK-NEXT: "kind": "DeclRefExpr", 8702 // CHECK-NEXT: "range": { 8703 // CHECK-NEXT: "begin": { 8704 // CHECK-NEXT: "offset": {{[0-9]+}}, 8705 // CHECK-NEXT: "col": 3, 8706 // CHECK-NEXT: "tokLen": 1 8707 // CHECK-NEXT: }, 8708 // CHECK-NEXT: "end": { 8709 // CHECK-NEXT: "offset": {{[0-9]+}}, 8710 // CHECK-NEXT: "col": 3, 8711 // CHECK-NEXT: "tokLen": 1 8712 // CHECK-NEXT: } 8713 // CHECK-NEXT: }, 8714 // CHECK-NEXT: "type": { 8715 // CHECK-NEXT: "qualType": "void (X)" 8716 // CHECK-NEXT: }, 8717 // CHECK-NEXT: "valueCategory": "lvalue", 8718 // CHECK-NEXT: "referencedDecl": { 8719 // CHECK-NEXT: "id": "0x{{.*}}", 8720 // CHECK-NEXT: "kind": "FunctionDecl", 8721 // CHECK-NEXT: "name": "f", 8722 // CHECK-NEXT: "type": { 8723 // CHECK-NEXT: "qualType": "void (X)" 8724 // CHECK-NEXT: } 8725 // CHECK-NEXT: }, 8726 // CHECK-NEXT: "foundReferencedDecl": { 8727 // CHECK-NEXT: "id": "0x{{.*}}", 8728 // CHECK-NEXT: "kind": "UsingShadowDecl", 8729 // CHECK-NEXT: "name": "f" 8730 // CHECK-NEXT: } 8731 // CHECK-NEXT: } 8732 // CHECK-NEXT: ] 8733 // CHECK-NEXT: }, 8734 // CHECK-NEXT: { 8735 // CHECK-NEXT: "id": "0x{{.*}}", 8736 // CHECK-NEXT: "kind": "CXXConstructExpr", 8737 // CHECK-NEXT: "range": { 8738 // CHECK-NEXT: "begin": { 8739 // CHECK-NEXT: "offset": {{[0-9]+}}, 8740 // CHECK-NEXT: "col": 5, 8741 // CHECK-NEXT: "tokLen": 1 8742 // CHECK-NEXT: }, 8743 // CHECK-NEXT: "end": { 8744 // CHECK-NEXT: "offset": {{[0-9]+}}, 8745 // CHECK-NEXT: "col": 5, 8746 // CHECK-NEXT: "tokLen": 1 8747 // CHECK-NEXT: } 8748 // CHECK-NEXT: }, 8749 // CHECK-NEXT: "type": { 8750 // CHECK-NEXT: "desugaredQualType": "NS::X", 8751 // CHECK-NEXT: "qualType": "X" 8752 // CHECK-NEXT: }, 8753 // CHECK-NEXT: "valueCategory": "prvalue", 8754 // CHECK-NEXT: "ctorType": { 8755 // CHECK-NEXT: "qualType": "void (const NS::X &) noexcept" 8756 // CHECK-NEXT: }, 8757 // CHECK-NEXT: "hadMultipleCandidates": true, 8758 // CHECK-NEXT: "constructionKind": "complete", 8759 // CHECK-NEXT: "inner": [ 8760 // CHECK-NEXT: { 8761 // CHECK-NEXT: "id": "0x{{.*}}", 8762 // CHECK-NEXT: "kind": "ImplicitCastExpr", 8763 // CHECK-NEXT: "range": { 8764 // CHECK-NEXT: "begin": { 8765 // CHECK-NEXT: "offset": {{[0-9]+}}, 8766 // CHECK-NEXT: "col": 5, 8767 // CHECK-NEXT: "tokLen": 1 8768 // CHECK-NEXT: }, 8769 // CHECK-NEXT: "end": { 8770 // CHECK-NEXT: "offset": {{[0-9]+}}, 8771 // CHECK-NEXT: "col": 5, 8772 // CHECK-NEXT: "tokLen": 1 8773 // CHECK-NEXT: } 8774 // CHECK-NEXT: }, 8775 // CHECK-NEXT: "type": { 8776 // CHECK-NEXT: "qualType": "const NS::X" 8777 // CHECK-NEXT: }, 8778 // CHECK-NEXT: "valueCategory": "lvalue", 8779 // CHECK-NEXT: "castKind": "NoOp", 8780 // CHECK-NEXT: "inner": [ 8781 // CHECK-NEXT: { 8782 // CHECK-NEXT: "id": "0x{{.*}}", 8783 // CHECK-NEXT: "kind": "DeclRefExpr", 8784 // CHECK-NEXT: "range": { 8785 // CHECK-NEXT: "begin": { 8786 // CHECK-NEXT: "offset": {{[0-9]+}}, 8787 // CHECK-NEXT: "col": 5, 8788 // CHECK-NEXT: "tokLen": 1 8789 // CHECK-NEXT: }, 8790 // CHECK-NEXT: "end": { 8791 // CHECK-NEXT: "offset": {{[0-9]+}}, 8792 // CHECK-NEXT: "col": 5, 8793 // CHECK-NEXT: "tokLen": 1 8794 // CHECK-NEXT: } 8795 // CHECK-NEXT: }, 8796 // CHECK-NEXT: "type": { 8797 // CHECK-NEXT: "desugaredQualType": "NS::X", 8798 // CHECK-NEXT: "qualType": "NS::X" 8799 // CHECK-NEXT: }, 8800 // CHECK-NEXT: "valueCategory": "lvalue", 8801 // CHECK-NEXT: "referencedDecl": { 8802 // CHECK-NEXT: "id": "0x{{.*}}", 8803 // CHECK-NEXT: "kind": "VarDecl", 8804 // CHECK-NEXT: "name": "x", 8805 // CHECK-NEXT: "type": { 8806 // CHECK-NEXT: "desugaredQualType": "NS::X", 8807 // CHECK-NEXT: "qualType": "NS::X" 8808 // CHECK-NEXT: } 8809 // CHECK-NEXT: } 8810 // CHECK-NEXT: } 8811 // CHECK-NEXT: ] 8812 // CHECK-NEXT: } 8813 // CHECK-NEXT: ] 8814 // CHECK-NEXT: } 8815 // CHECK-NEXT: ] 8816 // CHECK-NEXT: }, 8817 // CHECK-NEXT: { 8818 // CHECK-NEXT: "id": "0x{{.*}}", 8819 // CHECK-NEXT: "kind": "CallExpr", 8820 // CHECK-NEXT: "range": { 8821 // CHECK-NEXT: "begin": { 8822 // CHECK-NEXT: "offset": {{[0-9]+}}, 8823 // CHECK-NEXT: "line": 145, 8824 // CHECK-NEXT: "col": 3, 8825 // CHECK-NEXT: "tokLen": 1 8826 // CHECK-NEXT: }, 8827 // CHECK-NEXT: "end": { 8828 // CHECK-NEXT: "offset": {{[0-9]+}}, 8829 // CHECK-NEXT: "col": 6, 8830 // CHECK-NEXT: "tokLen": 1 8831 // CHECK-NEXT: } 8832 // CHECK-NEXT: }, 8833 // CHECK-NEXT: "type": { 8834 // CHECK-NEXT: "qualType": "void" 8835 // CHECK-NEXT: }, 8836 // CHECK-NEXT: "valueCategory": "prvalue", 8837 // CHECK-NEXT: "adl": true, 8838 // CHECK-NEXT: "inner": [ 8839 // CHECK-NEXT: { 8840 // CHECK-NEXT: "id": "0x{{.*}}", 8841 // CHECK-NEXT: "kind": "ImplicitCastExpr", 8842 // CHECK-NEXT: "range": { 8843 // CHECK-NEXT: "begin": { 8844 // CHECK-NEXT: "offset": {{[0-9]+}}, 8845 // CHECK-NEXT: "col": 3, 8846 // CHECK-NEXT: "tokLen": 1 8847 // CHECK-NEXT: }, 8848 // CHECK-NEXT: "end": { 8849 // CHECK-NEXT: "offset": {{[0-9]+}}, 8850 // CHECK-NEXT: "col": 3, 8851 // CHECK-NEXT: "tokLen": 1 8852 // CHECK-NEXT: } 8853 // CHECK-NEXT: }, 8854 // CHECK-NEXT: "type": { 8855 // CHECK-NEXT: "qualType": "void (*)(...)" 8856 // CHECK-NEXT: }, 8857 // CHECK-NEXT: "valueCategory": "prvalue", 8858 // CHECK-NEXT: "castKind": "FunctionToPointerDecay", 8859 // CHECK-NEXT: "inner": [ 8860 // CHECK-NEXT: { 8861 // CHECK-NEXT: "id": "0x{{.*}}", 8862 // CHECK-NEXT: "kind": "DeclRefExpr", 8863 // CHECK-NEXT: "range": { 8864 // CHECK-NEXT: "begin": { 8865 // CHECK-NEXT: "offset": {{[0-9]+}}, 8866 // CHECK-NEXT: "col": 3, 8867 // CHECK-NEXT: "tokLen": 1 8868 // CHECK-NEXT: }, 8869 // CHECK-NEXT: "end": { 8870 // CHECK-NEXT: "offset": {{[0-9]+}}, 8871 // CHECK-NEXT: "col": 3, 8872 // CHECK-NEXT: "tokLen": 1 8873 // CHECK-NEXT: } 8874 // CHECK-NEXT: }, 8875 // CHECK-NEXT: "type": { 8876 // CHECK-NEXT: "qualType": "void (...)" 8877 // CHECK-NEXT: }, 8878 // CHECK-NEXT: "valueCategory": "lvalue", 8879 // CHECK-NEXT: "referencedDecl": { 8880 // CHECK-NEXT: "id": "0x{{.*}}", 8881 // CHECK-NEXT: "kind": "FunctionDecl", 8882 // CHECK-NEXT: "name": "y", 8883 // CHECK-NEXT: "type": { 8884 // CHECK-NEXT: "qualType": "void (...)" 8885 // CHECK-NEXT: } 8886 // CHECK-NEXT: } 8887 // CHECK-NEXT: } 8888 // CHECK-NEXT: ] 8889 // CHECK-NEXT: }, 8890 // CHECK-NEXT: { 8891 // CHECK-NEXT: "id": "0x{{.*}}", 8892 // CHECK-NEXT: "kind": "CXXConstructExpr", 8893 // CHECK-NEXT: "range": { 8894 // CHECK-NEXT: "begin": { 8895 // CHECK-NEXT: "offset": {{[0-9]+}}, 8896 // CHECK-NEXT: "col": 5, 8897 // CHECK-NEXT: "tokLen": 1 8898 // CHECK-NEXT: }, 8899 // CHECK-NEXT: "end": { 8900 // CHECK-NEXT: "offset": {{[0-9]+}}, 8901 // CHECK-NEXT: "col": 5, 8902 // CHECK-NEXT: "tokLen": 1 8903 // CHECK-NEXT: } 8904 // CHECK-NEXT: }, 8905 // CHECK-NEXT: "type": { 8906 // CHECK-NEXT: "desugaredQualType": "NS::X", 8907 // CHECK-NEXT: "qualType": "NS::X" 8908 // CHECK-NEXT: }, 8909 // CHECK-NEXT: "valueCategory": "prvalue", 8910 // CHECK-NEXT: "ctorType": { 8911 // CHECK-NEXT: "qualType": "void (const NS::X &) noexcept" 8912 // CHECK-NEXT: }, 8913 // CHECK-NEXT: "hadMultipleCandidates": true, 8914 // CHECK-NEXT: "constructionKind": "complete", 8915 // CHECK-NEXT: "inner": [ 8916 // CHECK-NEXT: { 8917 // CHECK-NEXT: "id": "0x{{.*}}", 8918 // CHECK-NEXT: "kind": "ImplicitCastExpr", 8919 // CHECK-NEXT: "range": { 8920 // CHECK-NEXT: "begin": { 8921 // CHECK-NEXT: "offset": {{[0-9]+}}, 8922 // CHECK-NEXT: "col": 5, 8923 // CHECK-NEXT: "tokLen": 1 8924 // CHECK-NEXT: }, 8925 // CHECK-NEXT: "end": { 8926 // CHECK-NEXT: "offset": {{[0-9]+}}, 8927 // CHECK-NEXT: "col": 5, 8928 // CHECK-NEXT: "tokLen": 1 8929 // CHECK-NEXT: } 8930 // CHECK-NEXT: }, 8931 // CHECK-NEXT: "type": { 8932 // CHECK-NEXT: "qualType": "const NS::X" 8933 // CHECK-NEXT: }, 8934 // CHECK-NEXT: "valueCategory": "lvalue", 8935 // CHECK-NEXT: "castKind": "NoOp", 8936 // CHECK-NEXT: "inner": [ 8937 // CHECK-NEXT: { 8938 // CHECK-NEXT: "id": "0x{{.*}}", 8939 // CHECK-NEXT: "kind": "DeclRefExpr", 8940 // CHECK-NEXT: "range": { 8941 // CHECK-NEXT: "begin": { 8942 // CHECK-NEXT: "offset": {{[0-9]+}}, 8943 // CHECK-NEXT: "col": 5, 8944 // CHECK-NEXT: "tokLen": 1 8945 // CHECK-NEXT: }, 8946 // CHECK-NEXT: "end": { 8947 // CHECK-NEXT: "offset": {{[0-9]+}}, 8948 // CHECK-NEXT: "col": 5, 8949 // CHECK-NEXT: "tokLen": 1 8950 // CHECK-NEXT: } 8951 // CHECK-NEXT: }, 8952 // CHECK-NEXT: "type": { 8953 // CHECK-NEXT: "desugaredQualType": "NS::X", 8954 // CHECK-NEXT: "qualType": "NS::X" 8955 // CHECK-NEXT: }, 8956 // CHECK-NEXT: "valueCategory": "lvalue", 8957 // CHECK-NEXT: "referencedDecl": { 8958 // CHECK-NEXT: "id": "0x{{.*}}", 8959 // CHECK-NEXT: "kind": "VarDecl", 8960 // CHECK-NEXT: "name": "x", 8961 // CHECK-NEXT: "type": { 8962 // CHECK-NEXT: "desugaredQualType": "NS::X", 8963 // CHECK-NEXT: "qualType": "NS::X" 8964 // CHECK-NEXT: } 8965 // CHECK-NEXT: } 8966 // CHECK-NEXT: } 8967 // CHECK-NEXT: ] 8968 // CHECK-NEXT: } 8969 // CHECK-NEXT: ] 8970 // CHECK-NEXT: } 8971 // CHECK-NEXT: ] 8972 // CHECK-NEXT: } 8973 // CHECK-NEXT: ] 8974 // CHECK-NEXT: } 8975 // CHECK-NEXT: ] 8976 // CHECK-NEXT: } 8977 8978 8979 // CHECK-NOT: {{^}}Dumping 8980 // CHECK: "kind": "FunctionDecl", 8981 // CHECK-NEXT: "loc": { 8982 // CHECK-NEXT: "offset": {{[0-9]+}}, 8983 // CHECK-NEXT: "file": "{{.*}}", 8984 // CHECK-NEXT: "line": 150, 8985 // CHECK-NEXT: "col": 6, 8986 // CHECK-NEXT: "tokLen": 15 8987 // CHECK-NEXT: }, 8988 // CHECK-NEXT: "range": { 8989 // CHECK-NEXT: "begin": { 8990 // CHECK-NEXT: "offset": {{[0-9]+}}, 8991 // CHECK-NEXT: "col": 1, 8992 // CHECK-NEXT: "tokLen": 4 8993 // CHECK-NEXT: }, 8994 // CHECK-NEXT: "end": { 8995 // CHECK-NEXT: "offset": {{[0-9]+}}, 8996 // CHECK-NEXT: "line": 153, 8997 // CHECK-NEXT: "col": 1, 8998 // CHECK-NEXT: "tokLen": 1 8999 // CHECK-NEXT: } 9000 // CHECK-NEXT: }, 9001 // CHECK-NEXT: "name": "TestNonADLCall3", 9002 // CHECK-NEXT: "mangledName": "_ZN19test_adl_call_three15TestNonADLCall3Ev", 9003 // CHECK-NEXT: "type": { 9004 // CHECK-NEXT: "qualType": "void ()" 9005 // CHECK-NEXT: }, 9006 // CHECK-NEXT: "inner": [ 9007 // CHECK-NEXT: { 9008 // CHECK-NEXT: "id": "0x{{.*}}", 9009 // CHECK-NEXT: "kind": "CompoundStmt", 9010 // CHECK-NEXT: "range": { 9011 // CHECK-NEXT: "begin": { 9012 // CHECK-NEXT: "offset": {{[0-9]+}}, 9013 // CHECK-NEXT: "line": 150, 9014 // CHECK-NEXT: "col": 24, 9015 // CHECK-NEXT: "tokLen": 1 9016 // CHECK-NEXT: }, 9017 // CHECK-NEXT: "end": { 9018 // CHECK-NEXT: "offset": {{[0-9]+}}, 9019 // CHECK-NEXT: "line": 153, 9020 // CHECK-NEXT: "col": 1, 9021 // CHECK-NEXT: "tokLen": 1 9022 // CHECK-NEXT: } 9023 // CHECK-NEXT: }, 9024 // CHECK-NEXT: "inner": [ 9025 // CHECK-NEXT: { 9026 // CHECK-NEXT: "id": "0x{{.*}}", 9027 // CHECK-NEXT: "kind": "DeclStmt", 9028 // CHECK-NEXT: "range": { 9029 // CHECK-NEXT: "begin": { 9030 // CHECK-NEXT: "offset": {{[0-9]+}}, 9031 // CHECK-NEXT: "line": 151, 9032 // CHECK-NEXT: "col": 3, 9033 // CHECK-NEXT: "tokLen": 1 9034 // CHECK-NEXT: }, 9035 // CHECK-NEXT: "end": { 9036 // CHECK-NEXT: "offset": {{[0-9]+}}, 9037 // CHECK-NEXT: "col": 6, 9038 // CHECK-NEXT: "tokLen": 1 9039 // CHECK-NEXT: } 9040 // CHECK-NEXT: }, 9041 // CHECK-NEXT: "inner": [ 9042 // CHECK-NEXT: { 9043 // CHECK-NEXT: "id": "0x{{.*}}", 9044 // CHECK-NEXT: "kind": "VarDecl", 9045 // CHECK-NEXT: "loc": { 9046 // CHECK-NEXT: "offset": {{[0-9]+}}, 9047 // CHECK-NEXT: "col": 5, 9048 // CHECK-NEXT: "tokLen": 1 9049 // CHECK-NEXT: }, 9050 // CHECK-NEXT: "range": { 9051 // CHECK-NEXT: "begin": { 9052 // CHECK-NEXT: "offset": {{[0-9]+}}, 9053 // CHECK-NEXT: "col": 3, 9054 // CHECK-NEXT: "tokLen": 1 9055 // CHECK-NEXT: }, 9056 // CHECK-NEXT: "end": { 9057 // CHECK-NEXT: "offset": {{[0-9]+}}, 9058 // CHECK-NEXT: "col": 5, 9059 // CHECK-NEXT: "tokLen": 1 9060 // CHECK-NEXT: } 9061 // CHECK-NEXT: }, 9062 // CHECK-NEXT: "isUsed": true, 9063 // CHECK-NEXT: "name": "x", 9064 // CHECK-NEXT: "type": { 9065 // CHECK-NEXT: "desugaredQualType": "NS::X", 9066 // CHECK-NEXT: "qualType": "X" 9067 // CHECK-NEXT: }, 9068 // CHECK-NEXT: "init": "call", 9069 // CHECK-NEXT: "inner": [ 9070 // CHECK-NEXT: { 9071 // CHECK-NEXT: "id": "0x{{.*}}", 9072 // CHECK-NEXT: "kind": "CXXConstructExpr", 9073 // CHECK-NEXT: "range": { 9074 // CHECK-NEXT: "begin": { 9075 // CHECK-NEXT: "offset": {{[0-9]+}}, 9076 // CHECK-NEXT: "col": 5, 9077 // CHECK-NEXT: "tokLen": 1 9078 // CHECK-NEXT: }, 9079 // CHECK-NEXT: "end": { 9080 // CHECK-NEXT: "offset": {{[0-9]+}}, 9081 // CHECK-NEXT: "col": 5, 9082 // CHECK-NEXT: "tokLen": 1 9083 // CHECK-NEXT: } 9084 // CHECK-NEXT: }, 9085 // CHECK-NEXT: "type": { 9086 // CHECK-NEXT: "desugaredQualType": "NS::X", 9087 // CHECK-NEXT: "qualType": "X" 9088 // CHECK-NEXT: }, 9089 // CHECK-NEXT: "valueCategory": "prvalue", 9090 // CHECK-NEXT: "ctorType": { 9091 // CHECK-NEXT: "qualType": "void () noexcept" 9092 // CHECK-NEXT: }, 9093 // CHECK-NEXT: "hadMultipleCandidates": true, 9094 // CHECK-NEXT: "constructionKind": "complete" 9095 // CHECK-NEXT: } 9096 // CHECK-NEXT: ] 9097 // CHECK-NEXT: } 9098 // CHECK-NEXT: ] 9099 // CHECK-NEXT: }, 9100 // CHECK-NEXT: { 9101 // CHECK-NEXT: "id": "0x{{.*}}", 9102 // CHECK-NEXT: "kind": "CallExpr", 9103 // CHECK-NEXT: "range": { 9104 // CHECK-NEXT: "begin": { 9105 // CHECK-NEXT: "offset": {{[0-9]+}}, 9106 // CHECK-NEXT: "line": 152, 9107 // CHECK-NEXT: "col": 3, 9108 // CHECK-NEXT: "tokLen": 1 9109 // CHECK-NEXT: }, 9110 // CHECK-NEXT: "end": { 9111 // CHECK-NEXT: "offset": {{[0-9]+}}, 9112 // CHECK-NEXT: "col": 6, 9113 // CHECK-NEXT: "tokLen": 1 9114 // CHECK-NEXT: } 9115 // CHECK-NEXT: }, 9116 // CHECK-NEXT: "type": { 9117 // CHECK-NEXT: "qualType": "void" 9118 // CHECK-NEXT: }, 9119 // CHECK-NEXT: "valueCategory": "prvalue", 9120 // CHECK-NEXT: "inner": [ 9121 // CHECK-NEXT: { 9122 // CHECK-NEXT: "id": "0x{{.*}}", 9123 // CHECK-NEXT: "kind": "ImplicitCastExpr", 9124 // CHECK-NEXT: "range": { 9125 // CHECK-NEXT: "begin": { 9126 // CHECK-NEXT: "offset": {{[0-9]+}}, 9127 // CHECK-NEXT: "col": 3, 9128 // CHECK-NEXT: "tokLen": 1 9129 // CHECK-NEXT: }, 9130 // CHECK-NEXT: "end": { 9131 // CHECK-NEXT: "offset": {{[0-9]+}}, 9132 // CHECK-NEXT: "col": 3, 9133 // CHECK-NEXT: "tokLen": 1 9134 // CHECK-NEXT: } 9135 // CHECK-NEXT: }, 9136 // CHECK-NEXT: "type": { 9137 // CHECK-NEXT: "qualType": "void (*)(X)" 9138 // CHECK-NEXT: }, 9139 // CHECK-NEXT: "valueCategory": "prvalue", 9140 // CHECK-NEXT: "castKind": "FunctionToPointerDecay", 9141 // CHECK-NEXT: "inner": [ 9142 // CHECK-NEXT: { 9143 // CHECK-NEXT: "id": "0x{{.*}}", 9144 // CHECK-NEXT: "kind": "DeclRefExpr", 9145 // CHECK-NEXT: "range": { 9146 // CHECK-NEXT: "begin": { 9147 // CHECK-NEXT: "offset": {{[0-9]+}}, 9148 // CHECK-NEXT: "col": 3, 9149 // CHECK-NEXT: "tokLen": 1 9150 // CHECK-NEXT: }, 9151 // CHECK-NEXT: "end": { 9152 // CHECK-NEXT: "offset": {{[0-9]+}}, 9153 // CHECK-NEXT: "col": 3, 9154 // CHECK-NEXT: "tokLen": 1 9155 // CHECK-NEXT: } 9156 // CHECK-NEXT: }, 9157 // CHECK-NEXT: "type": { 9158 // CHECK-NEXT: "qualType": "void (X)" 9159 // CHECK-NEXT: }, 9160 // CHECK-NEXT: "valueCategory": "lvalue", 9161 // CHECK-NEXT: "referencedDecl": { 9162 // CHECK-NEXT: "id": "0x{{.*}}", 9163 // CHECK-NEXT: "kind": "FunctionDecl", 9164 // CHECK-NEXT: "name": "f", 9165 // CHECK-NEXT: "type": { 9166 // CHECK-NEXT: "qualType": "void (X)" 9167 // CHECK-NEXT: } 9168 // CHECK-NEXT: } 9169 // CHECK-NEXT: } 9170 // CHECK-NEXT: ] 9171 // CHECK-NEXT: }, 9172 // CHECK-NEXT: { 9173 // CHECK-NEXT: "id": "0x{{.*}}", 9174 // CHECK-NEXT: "kind": "CXXConstructExpr", 9175 // CHECK-NEXT: "range": { 9176 // CHECK-NEXT: "begin": { 9177 // CHECK-NEXT: "offset": {{[0-9]+}}, 9178 // CHECK-NEXT: "col": 5, 9179 // CHECK-NEXT: "tokLen": 1 9180 // CHECK-NEXT: }, 9181 // CHECK-NEXT: "end": { 9182 // CHECK-NEXT: "offset": {{[0-9]+}}, 9183 // CHECK-NEXT: "col": 5, 9184 // CHECK-NEXT: "tokLen": 1 9185 // CHECK-NEXT: } 9186 // CHECK-NEXT: }, 9187 // CHECK-NEXT: "type": { 9188 // CHECK-NEXT: "desugaredQualType": "NS::X", 9189 // CHECK-NEXT: "qualType": "X" 9190 // CHECK-NEXT: }, 9191 // CHECK-NEXT: "valueCategory": "prvalue", 9192 // CHECK-NEXT: "ctorType": { 9193 // CHECK-NEXT: "qualType": "void (const NS::X &) noexcept" 9194 // CHECK-NEXT: }, 9195 // CHECK-NEXT: "hadMultipleCandidates": true, 9196 // CHECK-NEXT: "constructionKind": "complete", 9197 // CHECK-NEXT: "inner": [ 9198 // CHECK-NEXT: { 9199 // CHECK-NEXT: "id": "0x{{.*}}", 9200 // CHECK-NEXT: "kind": "ImplicitCastExpr", 9201 // CHECK-NEXT: "range": { 9202 // CHECK-NEXT: "begin": { 9203 // CHECK-NEXT: "offset": {{[0-9]+}}, 9204 // CHECK-NEXT: "col": 5, 9205 // CHECK-NEXT: "tokLen": 1 9206 // CHECK-NEXT: }, 9207 // CHECK-NEXT: "end": { 9208 // CHECK-NEXT: "offset": {{[0-9]+}}, 9209 // CHECK-NEXT: "col": 5, 9210 // CHECK-NEXT: "tokLen": 1 9211 // CHECK-NEXT: } 9212 // CHECK-NEXT: }, 9213 // CHECK-NEXT: "type": { 9214 // CHECK-NEXT: "qualType": "const NS::X" 9215 // CHECK-NEXT: }, 9216 // CHECK-NEXT: "valueCategory": "lvalue", 9217 // CHECK-NEXT: "castKind": "NoOp", 9218 // CHECK-NEXT: "inner": [ 9219 // CHECK-NEXT: { 9220 // CHECK-NEXT: "id": "0x{{.*}}", 9221 // CHECK-NEXT: "kind": "DeclRefExpr", 9222 // CHECK-NEXT: "range": { 9223 // CHECK-NEXT: "begin": { 9224 // CHECK-NEXT: "offset": {{[0-9]+}}, 9225 // CHECK-NEXT: "col": 5, 9226 // CHECK-NEXT: "tokLen": 1 9227 // CHECK-NEXT: }, 9228 // CHECK-NEXT: "end": { 9229 // CHECK-NEXT: "offset": {{[0-9]+}}, 9230 // CHECK-NEXT: "col": 5, 9231 // CHECK-NEXT: "tokLen": 1 9232 // CHECK-NEXT: } 9233 // CHECK-NEXT: }, 9234 // CHECK-NEXT: "type": { 9235 // CHECK-NEXT: "desugaredQualType": "NS::X", 9236 // CHECK-NEXT: "qualType": "X" 9237 // CHECK-NEXT: }, 9238 // CHECK-NEXT: "valueCategory": "lvalue", 9239 // CHECK-NEXT: "referencedDecl": { 9240 // CHECK-NEXT: "id": "0x{{.*}}", 9241 // CHECK-NEXT: "kind": "VarDecl", 9242 // CHECK-NEXT: "name": "x", 9243 // CHECK-NEXT: "type": { 9244 // CHECK-NEXT: "desugaredQualType": "NS::X", 9245 // CHECK-NEXT: "qualType": "X" 9246 // CHECK-NEXT: } 9247 // CHECK-NEXT: } 9248 // CHECK-NEXT: } 9249 // CHECK-NEXT: ] 9250 // CHECK-NEXT: } 9251 // CHECK-NEXT: ] 9252 // CHECK-NEXT: } 9253 // CHECK-NEXT: ] 9254 // CHECK-NEXT: } 9255 // CHECK-NEXT: ] 9256 // CHECK-NEXT: } 9257 // CHECK-NEXT: ] 9258 // CHECK-NEXT: } 9259