1 // RUN: %clang_cc1 -triple x86_64-unknown-unknown -ast-dump=json -ast-dump-filter Test %s | FileCheck %s 2 3 struct S { 4 void Test1(); 5 void Test2() const; 6 void Test3() volatile; 7 void Test4() &; 8 void Test5() &&; 9 virtual void Test6(float, int = 12); 10 virtual void Test7() = 0; 11 }; 12 13 struct T : S { // T is not referenced, but S is 14 void Test6(float, int = 100) override; 15 }; 16 17 struct U { 18 void Test1(); 19 }; 20 void U::Test1() {} // parent 21 22 void Test1(); 23 void Test2(void); 24 void Test3(int a, int b); 25 void Test4(int a, int b = 12); 26 constexpr void Test5(void); 27 static void Test6(void); 28 extern void Test7(void); 29 inline void Test8(void); 30 void Test9(void) noexcept; 31 void Test10(void) noexcept(false); 32 void Test11(void) noexcept(1); 33 34 template <typename T> 35 T Test12(T&); 36 37 void Test13(int) {} 38 void Test14(int, ...) {} 39 40 int main() { 41 Test1(); // Causes this to be marked 'used' 42 } 43 44 // NOTE: CHECK lines have been autogenerated by gen_ast_dump_json_test.py 45 46 47 // CHECK: "kind": "CXXMethodDecl", 48 // CHECK-NEXT: "loc": { 49 // CHECK-NEXT: "offset": 124, 50 // CHECK-NEXT: "file": "{{.*}}", 51 // CHECK-NEXT: "line": 4, 52 // CHECK-NEXT: "col": 8, 53 // CHECK-NEXT: "tokLen": 5 54 // CHECK-NEXT: }, 55 // CHECK-NEXT: "range": { 56 // CHECK-NEXT: "begin": { 57 // CHECK-NEXT: "offset": 119, 58 // CHECK-NEXT: "col": 3, 59 // CHECK-NEXT: "tokLen": 4 60 // CHECK-NEXT: }, 61 // CHECK-NEXT: "end": { 62 // CHECK-NEXT: "offset": 130, 63 // CHECK-NEXT: "col": 14, 64 // CHECK-NEXT: "tokLen": 1 65 // CHECK-NEXT: } 66 // CHECK-NEXT: }, 67 // CHECK-NEXT: "name": "Test1", 68 // CHECK-NEXT: "mangledName": "_ZN1S5Test1Ev", 69 // CHECK-NEXT: "type": { 70 // CHECK-NEXT: "qualType": "void ()" 71 // CHECK-NEXT: } 72 // CHECK-NEXT: } 73 74 75 // CHECK: "kind": "CXXMethodDecl", 76 // CHECK-NEXT: "loc": { 77 // CHECK-NEXT: "offset": 140, 78 // CHECK-NEXT: "file": "{{.*}}", 79 // CHECK-NEXT: "line": 5, 80 // CHECK-NEXT: "col": 8, 81 // CHECK-NEXT: "tokLen": 5 82 // CHECK-NEXT: }, 83 // CHECK-NEXT: "range": { 84 // CHECK-NEXT: "begin": { 85 // CHECK-NEXT: "offset": 135, 86 // CHECK-NEXT: "col": 3, 87 // CHECK-NEXT: "tokLen": 4 88 // CHECK-NEXT: }, 89 // CHECK-NEXT: "end": { 90 // CHECK-NEXT: "offset": 148, 91 // CHECK-NEXT: "col": 16, 92 // CHECK-NEXT: "tokLen": 5 93 // CHECK-NEXT: } 94 // CHECK-NEXT: }, 95 // CHECK-NEXT: "name": "Test2", 96 // CHECK-NEXT: "mangledName": "_ZNK1S5Test2Ev", 97 // CHECK-NEXT: "type": { 98 // CHECK-NEXT: "qualType": "void () const" 99 // CHECK-NEXT: } 100 // CHECK-NEXT: } 101 102 103 // CHECK: "kind": "CXXMethodDecl", 104 // CHECK-NEXT: "loc": { 105 // CHECK-NEXT: "offset": 162, 106 // CHECK-NEXT: "file": "{{.*}}", 107 // CHECK-NEXT: "line": 6, 108 // CHECK-NEXT: "col": 8, 109 // CHECK-NEXT: "tokLen": 5 110 // CHECK-NEXT: }, 111 // CHECK-NEXT: "range": { 112 // CHECK-NEXT: "begin": { 113 // CHECK-NEXT: "offset": 157, 114 // CHECK-NEXT: "col": 3, 115 // CHECK-NEXT: "tokLen": 4 116 // CHECK-NEXT: }, 117 // CHECK-NEXT: "end": { 118 // CHECK-NEXT: "offset": 170, 119 // CHECK-NEXT: "col": 16, 120 // CHECK-NEXT: "tokLen": 8 121 // CHECK-NEXT: } 122 // CHECK-NEXT: }, 123 // CHECK-NEXT: "name": "Test3", 124 // CHECK-NEXT: "mangledName": "_ZNV1S5Test3Ev", 125 // CHECK-NEXT: "type": { 126 // CHECK-NEXT: "qualType": "void () volatile" 127 // CHECK-NEXT: } 128 // CHECK-NEXT: } 129 130 131 // CHECK: "kind": "CXXMethodDecl", 132 // CHECK-NEXT: "loc": { 133 // CHECK-NEXT: "offset": 187, 134 // CHECK-NEXT: "file": "{{.*}}", 135 // CHECK-NEXT: "line": 7, 136 // CHECK-NEXT: "col": 8, 137 // CHECK-NEXT: "tokLen": 5 138 // CHECK-NEXT: }, 139 // CHECK-NEXT: "range": { 140 // CHECK-NEXT: "begin": { 141 // CHECK-NEXT: "offset": 182, 142 // CHECK-NEXT: "col": 3, 143 // CHECK-NEXT: "tokLen": 4 144 // CHECK-NEXT: }, 145 // CHECK-NEXT: "end": { 146 // CHECK-NEXT: "offset": 195, 147 // CHECK-NEXT: "col": 16, 148 // CHECK-NEXT: "tokLen": 1 149 // CHECK-NEXT: } 150 // CHECK-NEXT: }, 151 // CHECK-NEXT: "name": "Test4", 152 // CHECK-NEXT: "mangledName": "_ZNR1S5Test4Ev", 153 // CHECK-NEXT: "type": { 154 // CHECK-NEXT: "qualType": "void () &" 155 // CHECK-NEXT: } 156 // CHECK-NEXT: } 157 158 159 // CHECK: "kind": "CXXMethodDecl", 160 // CHECK-NEXT: "loc": { 161 // CHECK-NEXT: "offset": 205, 162 // CHECK-NEXT: "file": "{{.*}}", 163 // CHECK-NEXT: "line": 8, 164 // CHECK-NEXT: "col": 8, 165 // CHECK-NEXT: "tokLen": 5 166 // CHECK-NEXT: }, 167 // CHECK-NEXT: "range": { 168 // CHECK-NEXT: "begin": { 169 // CHECK-NEXT: "offset": 200, 170 // CHECK-NEXT: "col": 3, 171 // CHECK-NEXT: "tokLen": 4 172 // CHECK-NEXT: }, 173 // CHECK-NEXT: "end": { 174 // CHECK-NEXT: "offset": 213, 175 // CHECK-NEXT: "col": 16, 176 // CHECK-NEXT: "tokLen": 2 177 // CHECK-NEXT: } 178 // CHECK-NEXT: }, 179 // CHECK-NEXT: "name": "Test5", 180 // CHECK-NEXT: "mangledName": "_ZNO1S5Test5Ev", 181 // CHECK-NEXT: "type": { 182 // CHECK-NEXT: "qualType": "void () &&" 183 // CHECK-NEXT: } 184 // CHECK-NEXT: } 185 186 187 // CHECK: "kind": "CXXMethodDecl", 188 // CHECK-NEXT: "loc": { 189 // CHECK-NEXT: "offset": 232, 190 // CHECK-NEXT: "file": "{{.*}}", 191 // CHECK-NEXT: "line": 9, 192 // CHECK-NEXT: "col": 16, 193 // CHECK-NEXT: "tokLen": 5 194 // CHECK-NEXT: }, 195 // CHECK-NEXT: "range": { 196 // CHECK-NEXT: "begin": { 197 // CHECK-NEXT: "offset": 219, 198 // CHECK-NEXT: "col": 3, 199 // CHECK-NEXT: "tokLen": 7 200 // CHECK-NEXT: }, 201 // CHECK-NEXT: "end": { 202 // CHECK-NEXT: "offset": 253, 203 // CHECK-NEXT: "col": 37, 204 // CHECK-NEXT: "tokLen": 1 205 // CHECK-NEXT: } 206 // CHECK-NEXT: }, 207 // CHECK-NEXT: "name": "Test6", 208 // CHECK-NEXT: "mangledName": "_ZN1S5Test6Efi", 209 // CHECK-NEXT: "type": { 210 // CHECK-NEXT: "qualType": "void (float, int)" 211 // CHECK-NEXT: }, 212 // CHECK-NEXT: "virtual": true, 213 // CHECK-NEXT: "inner": [ 214 // CHECK-NEXT: { 215 // CHECK-NEXT: "id": "0x{{.*}}", 216 // CHECK-NEXT: "kind": "ParmVarDecl", 217 // CHECK-NEXT: "loc": { 218 // CHECK-NEXT: "offset": 243, 219 // CHECK-NEXT: "col": 27, 220 // CHECK-NEXT: "tokLen": 1 221 // CHECK-NEXT: }, 222 // CHECK-NEXT: "range": { 223 // CHECK-NEXT: "begin": { 224 // CHECK-NEXT: "offset": 238, 225 // CHECK-NEXT: "col": 22, 226 // CHECK-NEXT: "tokLen": 5 227 // CHECK-NEXT: }, 228 // CHECK-NEXT: "end": { 229 // CHECK-NEXT: "offset": 238, 230 // CHECK-NEXT: "col": 22, 231 // CHECK-NEXT: "tokLen": 5 232 // CHECK-NEXT: } 233 // CHECK-NEXT: }, 234 // CHECK-NEXT: "type": { 235 // CHECK-NEXT: "qualType": "float" 236 // CHECK-NEXT: } 237 // CHECK-NEXT: }, 238 // CHECK-NEXT: { 239 // CHECK-NEXT: "id": "0x{{.*}}", 240 // CHECK-NEXT: "kind": "ParmVarDecl", 241 // CHECK-NEXT: "loc": { 242 // CHECK-NEXT: "offset": 249, 243 // CHECK-NEXT: "col": 33, 244 // CHECK-NEXT: "tokLen": 1 245 // CHECK-NEXT: }, 246 // CHECK-NEXT: "range": { 247 // CHECK-NEXT: "begin": { 248 // CHECK-NEXT: "offset": 245, 249 // CHECK-NEXT: "col": 29, 250 // CHECK-NEXT: "tokLen": 3 251 // CHECK-NEXT: }, 252 // CHECK-NEXT: "end": { 253 // CHECK-NEXT: "offset": 251, 254 // CHECK-NEXT: "col": 35, 255 // CHECK-NEXT: "tokLen": 2 256 // CHECK-NEXT: } 257 // CHECK-NEXT: }, 258 // CHECK-NEXT: "type": { 259 // CHECK-NEXT: "qualType": "int" 260 // CHECK-NEXT: }, 261 // CHECK-NEXT: "init": "c", 262 // CHECK-NEXT: "inner": [ 263 // CHECK-NEXT: { 264 // CHECK-NEXT: "id": "0x{{.*}}", 265 // CHECK-NEXT: "kind": "IntegerLiteral", 266 // CHECK-NEXT: "range": { 267 // CHECK-NEXT: "begin": { 268 // CHECK-NEXT: "offset": 251, 269 // CHECK-NEXT: "col": 35, 270 // CHECK-NEXT: "tokLen": 2 271 // CHECK-NEXT: }, 272 // CHECK-NEXT: "end": { 273 // CHECK-NEXT: "offset": 251, 274 // CHECK-NEXT: "col": 35, 275 // CHECK-NEXT: "tokLen": 2 276 // CHECK-NEXT: } 277 // CHECK-NEXT: }, 278 // CHECK-NEXT: "type": { 279 // CHECK-NEXT: "qualType": "int" 280 // CHECK-NEXT: }, 281 // CHECK-NEXT: "valueCategory": "rvalue", 282 // CHECK-NEXT: "value": "12" 283 // CHECK-NEXT: } 284 // CHECK-NEXT: ] 285 // CHECK-NEXT: } 286 // CHECK-NEXT: ] 287 // CHECK-NEXT: } 288 289 290 // CHECK: "kind": "CXXMethodDecl", 291 // CHECK-NEXT: "loc": { 292 // CHECK-NEXT: "offset": 271, 293 // CHECK-NEXT: "file": "{{.*}}", 294 // CHECK-NEXT: "line": 10, 295 // CHECK-NEXT: "col": 16, 296 // CHECK-NEXT: "tokLen": 5 297 // CHECK-NEXT: }, 298 // CHECK-NEXT: "range": { 299 // CHECK-NEXT: "begin": { 300 // CHECK-NEXT: "offset": 258, 301 // CHECK-NEXT: "col": 3, 302 // CHECK-NEXT: "tokLen": 7 303 // CHECK-NEXT: }, 304 // CHECK-NEXT: "end": { 305 // CHECK-NEXT: "offset": 281, 306 // CHECK-NEXT: "col": 26, 307 // CHECK-NEXT: "tokLen": 1 308 // CHECK-NEXT: } 309 // CHECK-NEXT: }, 310 // CHECK-NEXT: "name": "Test7", 311 // CHECK-NEXT: "mangledName": "_ZN1S5Test7Ev", 312 // CHECK-NEXT: "type": { 313 // CHECK-NEXT: "qualType": "void ()" 314 // CHECK-NEXT: }, 315 // CHECK-NEXT: "virtual": true, 316 // CHECK-NEXT: "pure": true 317 // CHECK-NEXT: } 318 319 320 // CHECK: "kind": "CXXMethodDecl", 321 // CHECK-NEXT: "loc": { 322 // CHECK-NEXT: "offset": 343, 323 // CHECK-NEXT: "file": "{{.*}}", 324 // CHECK-NEXT: "line": 14, 325 // CHECK-NEXT: "col": 8, 326 // CHECK-NEXT: "tokLen": 5 327 // CHECK-NEXT: }, 328 // CHECK-NEXT: "range": { 329 // CHECK-NEXT: "begin": { 330 // CHECK-NEXT: "offset": 338, 331 // CHECK-NEXT: "col": 3, 332 // CHECK-NEXT: "tokLen": 4 333 // CHECK-NEXT: }, 334 // CHECK-NEXT: "end": { 335 // CHECK-NEXT: "offset": 367, 336 // CHECK-NEXT: "col": 32, 337 // CHECK-NEXT: "tokLen": 8 338 // CHECK-NEXT: } 339 // CHECK-NEXT: }, 340 // CHECK-NEXT: "name": "Test6", 341 // CHECK-NEXT: "mangledName": "_ZN1T5Test6Efi", 342 // CHECK-NEXT: "type": { 343 // CHECK-NEXT: "qualType": "void (float, int)" 344 // CHECK-NEXT: }, 345 // CHECK-NEXT: "inner": [ 346 // CHECK-NEXT: { 347 // CHECK-NEXT: "id": "0x{{.*}}", 348 // CHECK-NEXT: "kind": "ParmVarDecl", 349 // CHECK-NEXT: "loc": { 350 // CHECK-NEXT: "offset": 354, 351 // CHECK-NEXT: "col": 19, 352 // CHECK-NEXT: "tokLen": 1 353 // CHECK-NEXT: }, 354 // CHECK-NEXT: "range": { 355 // CHECK-NEXT: "begin": { 356 // CHECK-NEXT: "offset": 349, 357 // CHECK-NEXT: "col": 14, 358 // CHECK-NEXT: "tokLen": 5 359 // CHECK-NEXT: }, 360 // CHECK-NEXT: "end": { 361 // CHECK-NEXT: "offset": 349, 362 // CHECK-NEXT: "col": 14, 363 // CHECK-NEXT: "tokLen": 5 364 // CHECK-NEXT: } 365 // CHECK-NEXT: }, 366 // CHECK-NEXT: "type": { 367 // CHECK-NEXT: "qualType": "float" 368 // CHECK-NEXT: } 369 // CHECK-NEXT: }, 370 // CHECK-NEXT: { 371 // CHECK-NEXT: "id": "0x{{.*}}", 372 // CHECK-NEXT: "kind": "ParmVarDecl", 373 // CHECK-NEXT: "loc": { 374 // CHECK-NEXT: "offset": 360, 375 // CHECK-NEXT: "col": 25, 376 // CHECK-NEXT: "tokLen": 1 377 // CHECK-NEXT: }, 378 // CHECK-NEXT: "range": { 379 // CHECK-NEXT: "begin": { 380 // CHECK-NEXT: "offset": 356, 381 // CHECK-NEXT: "col": 21, 382 // CHECK-NEXT: "tokLen": 3 383 // CHECK-NEXT: }, 384 // CHECK-NEXT: "end": { 385 // CHECK-NEXT: "offset": 362, 386 // CHECK-NEXT: "col": 27, 387 // CHECK-NEXT: "tokLen": 3 388 // CHECK-NEXT: } 389 // CHECK-NEXT: }, 390 // CHECK-NEXT: "type": { 391 // CHECK-NEXT: "qualType": "int" 392 // CHECK-NEXT: }, 393 // CHECK-NEXT: "init": "c", 394 // CHECK-NEXT: "inner": [ 395 // CHECK-NEXT: { 396 // CHECK-NEXT: "id": "0x{{.*}}", 397 // CHECK-NEXT: "kind": "IntegerLiteral", 398 // CHECK-NEXT: "range": { 399 // CHECK-NEXT: "begin": { 400 // CHECK-NEXT: "offset": 362, 401 // CHECK-NEXT: "col": 27, 402 // CHECK-NEXT: "tokLen": 3 403 // CHECK-NEXT: }, 404 // CHECK-NEXT: "end": { 405 // CHECK-NEXT: "offset": 362, 406 // CHECK-NEXT: "col": 27, 407 // CHECK-NEXT: "tokLen": 3 408 // CHECK-NEXT: } 409 // CHECK-NEXT: }, 410 // CHECK-NEXT: "type": { 411 // CHECK-NEXT: "qualType": "int" 412 // CHECK-NEXT: }, 413 // CHECK-NEXT: "valueCategory": "rvalue", 414 // CHECK-NEXT: "value": "100" 415 // CHECK-NEXT: } 416 // CHECK-NEXT: ] 417 // CHECK-NEXT: }, 418 // CHECK-NEXT: { 419 // CHECK-NEXT: "id": "0x{{.*}}", 420 // CHECK-NEXT: "kind": "OverrideAttr", 421 // CHECK-NEXT: "range": { 422 // CHECK-NEXT: "begin": { 423 // CHECK-NEXT: "offset": 367, 424 // CHECK-NEXT: "col": 32, 425 // CHECK-NEXT: "tokLen": 8 426 // CHECK-NEXT: }, 427 // CHECK-NEXT: "end": { 428 // CHECK-NEXT: "offset": 367, 429 // CHECK-NEXT: "col": 32, 430 // CHECK-NEXT: "tokLen": 8 431 // CHECK-NEXT: } 432 // CHECK-NEXT: } 433 // CHECK-NEXT: } 434 // CHECK-NEXT: ] 435 // CHECK-NEXT: } 436 437 438 // CHECK: "kind": "CXXMethodDecl", 439 // CHECK-NEXT: "loc": { 440 // CHECK-NEXT: "offset": 399, 441 // CHECK-NEXT: "file": "{{.*}}", 442 // CHECK-NEXT: "line": 18, 443 // CHECK-NEXT: "col": 8, 444 // CHECK-NEXT: "tokLen": 5 445 // CHECK-NEXT: }, 446 // CHECK-NEXT: "range": { 447 // CHECK-NEXT: "begin": { 448 // CHECK-NEXT: "offset": 394, 449 // CHECK-NEXT: "col": 3, 450 // CHECK-NEXT: "tokLen": 4 451 // CHECK-NEXT: }, 452 // CHECK-NEXT: "end": { 453 // CHECK-NEXT: "offset": 405, 454 // CHECK-NEXT: "col": 14, 455 // CHECK-NEXT: "tokLen": 1 456 // CHECK-NEXT: } 457 // CHECK-NEXT: }, 458 // CHECK-NEXT: "name": "Test1", 459 // CHECK-NEXT: "mangledName": "_ZN1U5Test1Ev", 460 // CHECK-NEXT: "type": { 461 // CHECK-NEXT: "qualType": "void ()" 462 // CHECK-NEXT: } 463 // CHECK-NEXT: } 464 465 466 // CHECK: "kind": "CXXMethodDecl", 467 // CHECK-NEXT: "loc": { 468 // CHECK-NEXT: "offset": 419, 469 // CHECK-NEXT: "file": "{{.*}}", 470 // CHECK-NEXT: "line": 20, 471 // CHECK-NEXT: "col": 9, 472 // CHECK-NEXT: "tokLen": 5 473 // CHECK-NEXT: }, 474 // CHECK-NEXT: "range": { 475 // CHECK-NEXT: "begin": { 476 // CHECK-NEXT: "offset": 411, 477 // CHECK-NEXT: "col": 1, 478 // CHECK-NEXT: "tokLen": 4 479 // CHECK-NEXT: }, 480 // CHECK-NEXT: "end": { 481 // CHECK-NEXT: "offset": 428, 482 // CHECK-NEXT: "col": 18, 483 // CHECK-NEXT: "tokLen": 1 484 // CHECK-NEXT: } 485 // CHECK-NEXT: }, 486 // CHECK-NEXT: "parentDeclContextId": "0x{{.*}}", 487 // CHECK-NEXT: "previousDecl": "0x{{.*}}", 488 // CHECK-NEXT: "name": "Test1", 489 // CHECK-NEXT: "mangledName": "_ZN1U5Test1Ev", 490 // CHECK-NEXT: "type": { 491 // CHECK-NEXT: "qualType": "void ()" 492 // CHECK-NEXT: }, 493 // CHECK-NEXT: "inner": [ 494 // CHECK-NEXT: { 495 // CHECK-NEXT: "id": "0x{{.*}}", 496 // CHECK-NEXT: "kind": "CompoundStmt", 497 // CHECK-NEXT: "range": { 498 // CHECK-NEXT: "begin": { 499 // CHECK-NEXT: "offset": 427, 500 // CHECK-NEXT: "col": 17, 501 // CHECK-NEXT: "tokLen": 1 502 // CHECK-NEXT: }, 503 // CHECK-NEXT: "end": { 504 // CHECK-NEXT: "offset": 428, 505 // CHECK-NEXT: "col": 18, 506 // CHECK-NEXT: "tokLen": 1 507 // CHECK-NEXT: } 508 // CHECK-NEXT: } 509 // CHECK-NEXT: } 510 // CHECK-NEXT: ] 511 // CHECK-NEXT: } 512 513 514 // CHECK: "kind": "FunctionDecl", 515 // CHECK-NEXT: "loc": { 516 // CHECK-NEXT: "offset": 446, 517 // CHECK-NEXT: "file": "{{.*}}", 518 // CHECK-NEXT: "line": 22, 519 // CHECK-NEXT: "col": 6, 520 // CHECK-NEXT: "tokLen": 5 521 // CHECK-NEXT: }, 522 // CHECK-NEXT: "range": { 523 // CHECK-NEXT: "begin": { 524 // CHECK-NEXT: "offset": 441, 525 // CHECK-NEXT: "col": 1, 526 // CHECK-NEXT: "tokLen": 4 527 // CHECK-NEXT: }, 528 // CHECK-NEXT: "end": { 529 // CHECK-NEXT: "offset": 452, 530 // CHECK-NEXT: "col": 12, 531 // CHECK-NEXT: "tokLen": 1 532 // CHECK-NEXT: } 533 // CHECK-NEXT: }, 534 // CHECK-NEXT: "isUsed": true, 535 // CHECK-NEXT: "name": "Test1", 536 // CHECK-NEXT: "mangledName": "_Z5Test1v", 537 // CHECK-NEXT: "type": { 538 // CHECK-NEXT: "qualType": "void ()" 539 // CHECK-NEXT: } 540 // CHECK-NEXT: } 541 542 543 // CHECK: "kind": "FunctionDecl", 544 // CHECK-NEXT: "loc": { 545 // CHECK-NEXT: "offset": 460, 546 // CHECK-NEXT: "file": "{{.*}}", 547 // CHECK-NEXT: "line": 23, 548 // CHECK-NEXT: "col": 6, 549 // CHECK-NEXT: "tokLen": 5 550 // CHECK-NEXT: }, 551 // CHECK-NEXT: "range": { 552 // CHECK-NEXT: "begin": { 553 // CHECK-NEXT: "offset": 455, 554 // CHECK-NEXT: "col": 1, 555 // CHECK-NEXT: "tokLen": 4 556 // CHECK-NEXT: }, 557 // CHECK-NEXT: "end": { 558 // CHECK-NEXT: "offset": 470, 559 // CHECK-NEXT: "col": 16, 560 // CHECK-NEXT: "tokLen": 1 561 // CHECK-NEXT: } 562 // CHECK-NEXT: }, 563 // CHECK-NEXT: "name": "Test2", 564 // CHECK-NEXT: "mangledName": "_Z5Test2v", 565 // CHECK-NEXT: "type": { 566 // CHECK-NEXT: "qualType": "void ()" 567 // CHECK-NEXT: } 568 // CHECK-NEXT: } 569 570 571 // CHECK: "kind": "FunctionDecl", 572 // CHECK-NEXT: "loc": { 573 // CHECK-NEXT: "offset": 478, 574 // CHECK-NEXT: "file": "{{.*}}", 575 // CHECK-NEXT: "line": 24, 576 // CHECK-NEXT: "col": 6, 577 // CHECK-NEXT: "tokLen": 5 578 // CHECK-NEXT: }, 579 // CHECK-NEXT: "range": { 580 // CHECK-NEXT: "begin": { 581 // CHECK-NEXT: "offset": 473, 582 // CHECK-NEXT: "col": 1, 583 // CHECK-NEXT: "tokLen": 4 584 // CHECK-NEXT: }, 585 // CHECK-NEXT: "end": { 586 // CHECK-NEXT: "offset": 496, 587 // CHECK-NEXT: "col": 24, 588 // CHECK-NEXT: "tokLen": 1 589 // CHECK-NEXT: } 590 // CHECK-NEXT: }, 591 // CHECK-NEXT: "name": "Test3", 592 // CHECK-NEXT: "mangledName": "_Z5Test3ii", 593 // CHECK-NEXT: "type": { 594 // CHECK-NEXT: "qualType": "void (int, int)" 595 // CHECK-NEXT: }, 596 // CHECK-NEXT: "inner": [ 597 // CHECK-NEXT: { 598 // CHECK-NEXT: "id": "0x{{.*}}", 599 // CHECK-NEXT: "kind": "ParmVarDecl", 600 // CHECK-NEXT: "loc": { 601 // CHECK-NEXT: "offset": 488, 602 // CHECK-NEXT: "col": 16, 603 // CHECK-NEXT: "tokLen": 1 604 // CHECK-NEXT: }, 605 // CHECK-NEXT: "range": { 606 // CHECK-NEXT: "begin": { 607 // CHECK-NEXT: "offset": 484, 608 // CHECK-NEXT: "col": 12, 609 // CHECK-NEXT: "tokLen": 3 610 // CHECK-NEXT: }, 611 // CHECK-NEXT: "end": { 612 // CHECK-NEXT: "offset": 488, 613 // CHECK-NEXT: "col": 16, 614 // CHECK-NEXT: "tokLen": 1 615 // CHECK-NEXT: } 616 // CHECK-NEXT: }, 617 // CHECK-NEXT: "name": "a", 618 // CHECK-NEXT: "mangledName": "_ZZ5Test3iiE1a", 619 // CHECK-NEXT: "type": { 620 // CHECK-NEXT: "qualType": "int" 621 // CHECK-NEXT: } 622 // CHECK-NEXT: }, 623 // CHECK-NEXT: { 624 // CHECK-NEXT: "id": "0x{{.*}}", 625 // CHECK-NEXT: "kind": "ParmVarDecl", 626 // CHECK-NEXT: "loc": { 627 // CHECK-NEXT: "offset": 495, 628 // CHECK-NEXT: "col": 23, 629 // CHECK-NEXT: "tokLen": 1 630 // CHECK-NEXT: }, 631 // CHECK-NEXT: "range": { 632 // CHECK-NEXT: "begin": { 633 // CHECK-NEXT: "offset": 491, 634 // CHECK-NEXT: "col": 19, 635 // CHECK-NEXT: "tokLen": 3 636 // CHECK-NEXT: }, 637 // CHECK-NEXT: "end": { 638 // CHECK-NEXT: "offset": 495, 639 // CHECK-NEXT: "col": 23, 640 // CHECK-NEXT: "tokLen": 1 641 // CHECK-NEXT: } 642 // CHECK-NEXT: }, 643 // CHECK-NEXT: "name": "b", 644 // CHECK-NEXT: "mangledName": "_ZZ5Test3iiE1b", 645 // CHECK-NEXT: "type": { 646 // CHECK-NEXT: "qualType": "int" 647 // CHECK-NEXT: } 648 // CHECK-NEXT: } 649 // CHECK-NEXT: ] 650 // CHECK-NEXT: } 651 652 653 // CHECK: "kind": "FunctionDecl", 654 // CHECK-NEXT: "loc": { 655 // CHECK-NEXT: "offset": 504, 656 // CHECK-NEXT: "file": "{{.*}}", 657 // CHECK-NEXT: "line": 25, 658 // CHECK-NEXT: "col": 6, 659 // CHECK-NEXT: "tokLen": 5 660 // CHECK-NEXT: }, 661 // CHECK-NEXT: "range": { 662 // CHECK-NEXT: "begin": { 663 // CHECK-NEXT: "offset": 499, 664 // CHECK-NEXT: "col": 1, 665 // CHECK-NEXT: "tokLen": 4 666 // CHECK-NEXT: }, 667 // CHECK-NEXT: "end": { 668 // CHECK-NEXT: "offset": 527, 669 // CHECK-NEXT: "col": 29, 670 // CHECK-NEXT: "tokLen": 1 671 // CHECK-NEXT: } 672 // CHECK-NEXT: }, 673 // CHECK-NEXT: "name": "Test4", 674 // CHECK-NEXT: "mangledName": "_Z5Test4ii", 675 // CHECK-NEXT: "type": { 676 // CHECK-NEXT: "qualType": "void (int, int)" 677 // CHECK-NEXT: }, 678 // CHECK-NEXT: "inner": [ 679 // CHECK-NEXT: { 680 // CHECK-NEXT: "id": "0x{{.*}}", 681 // CHECK-NEXT: "kind": "ParmVarDecl", 682 // CHECK-NEXT: "loc": { 683 // CHECK-NEXT: "offset": 514, 684 // CHECK-NEXT: "col": 16, 685 // CHECK-NEXT: "tokLen": 1 686 // CHECK-NEXT: }, 687 // CHECK-NEXT: "range": { 688 // CHECK-NEXT: "begin": { 689 // CHECK-NEXT: "offset": 510, 690 // CHECK-NEXT: "col": 12, 691 // CHECK-NEXT: "tokLen": 3 692 // CHECK-NEXT: }, 693 // CHECK-NEXT: "end": { 694 // CHECK-NEXT: "offset": 514, 695 // CHECK-NEXT: "col": 16, 696 // CHECK-NEXT: "tokLen": 1 697 // CHECK-NEXT: } 698 // CHECK-NEXT: }, 699 // CHECK-NEXT: "name": "a", 700 // CHECK-NEXT: "mangledName": "_ZZ5Test4iiE1a", 701 // CHECK-NEXT: "type": { 702 // CHECK-NEXT: "qualType": "int" 703 // CHECK-NEXT: } 704 // CHECK-NEXT: }, 705 // CHECK-NEXT: { 706 // CHECK-NEXT: "id": "0x{{.*}}", 707 // CHECK-NEXT: "kind": "ParmVarDecl", 708 // CHECK-NEXT: "loc": { 709 // CHECK-NEXT: "offset": 521, 710 // CHECK-NEXT: "col": 23, 711 // CHECK-NEXT: "tokLen": 1 712 // CHECK-NEXT: }, 713 // CHECK-NEXT: "range": { 714 // CHECK-NEXT: "begin": { 715 // CHECK-NEXT: "offset": 517, 716 // CHECK-NEXT: "col": 19, 717 // CHECK-NEXT: "tokLen": 3 718 // CHECK-NEXT: }, 719 // CHECK-NEXT: "end": { 720 // CHECK-NEXT: "offset": 525, 721 // CHECK-NEXT: "col": 27, 722 // CHECK-NEXT: "tokLen": 2 723 // CHECK-NEXT: } 724 // CHECK-NEXT: }, 725 // CHECK-NEXT: "name": "b", 726 // CHECK-NEXT: "mangledName": "_ZZ5Test4iiE1b", 727 // CHECK-NEXT: "type": { 728 // CHECK-NEXT: "qualType": "int" 729 // CHECK-NEXT: }, 730 // CHECK-NEXT: "init": "c", 731 // CHECK-NEXT: "inner": [ 732 // CHECK-NEXT: { 733 // CHECK-NEXT: "id": "0x{{.*}}", 734 // CHECK-NEXT: "kind": "IntegerLiteral", 735 // CHECK-NEXT: "range": { 736 // CHECK-NEXT: "begin": { 737 // CHECK-NEXT: "offset": 525, 738 // CHECK-NEXT: "col": 27, 739 // CHECK-NEXT: "tokLen": 2 740 // CHECK-NEXT: }, 741 // CHECK-NEXT: "end": { 742 // CHECK-NEXT: "offset": 525, 743 // CHECK-NEXT: "col": 27, 744 // CHECK-NEXT: "tokLen": 2 745 // CHECK-NEXT: } 746 // CHECK-NEXT: }, 747 // CHECK-NEXT: "type": { 748 // CHECK-NEXT: "qualType": "int" 749 // CHECK-NEXT: }, 750 // CHECK-NEXT: "valueCategory": "rvalue", 751 // CHECK-NEXT: "value": "12" 752 // CHECK-NEXT: } 753 // CHECK-NEXT: ] 754 // CHECK-NEXT: } 755 // CHECK-NEXT: ] 756 // CHECK-NEXT: } 757 758 759 // CHECK: "kind": "FunctionDecl", 760 // CHECK-NEXT: "loc": { 761 // CHECK-NEXT: "offset": 545, 762 // CHECK-NEXT: "file": "{{.*}}", 763 // CHECK-NEXT: "line": 26, 764 // CHECK-NEXT: "col": 16, 765 // CHECK-NEXT: "tokLen": 5 766 // CHECK-NEXT: }, 767 // CHECK-NEXT: "range": { 768 // CHECK-NEXT: "begin": { 769 // CHECK-NEXT: "offset": 530, 770 // CHECK-NEXT: "col": 1, 771 // CHECK-NEXT: "tokLen": 9 772 // CHECK-NEXT: }, 773 // CHECK-NEXT: "end": { 774 // CHECK-NEXT: "offset": 555, 775 // CHECK-NEXT: "col": 26, 776 // CHECK-NEXT: "tokLen": 1 777 // CHECK-NEXT: } 778 // CHECK-NEXT: }, 779 // CHECK-NEXT: "name": "Test5", 780 // CHECK-NEXT: "mangledName": "_Z5Test5v", 781 // CHECK-NEXT: "type": { 782 // CHECK-NEXT: "qualType": "void ()" 783 // CHECK-NEXT: }, 784 // CHECK-NEXT: "constexpr": true 785 // CHECK-NEXT: } 786 787 788 // CHECK: "kind": "FunctionDecl", 789 // CHECK-NEXT: "loc": { 790 // CHECK-NEXT: "offset": 570, 791 // CHECK-NEXT: "file": "{{.*}}", 792 // CHECK-NEXT: "line": 27, 793 // CHECK-NEXT: "col": 13, 794 // CHECK-NEXT: "tokLen": 5 795 // CHECK-NEXT: }, 796 // CHECK-NEXT: "range": { 797 // CHECK-NEXT: "begin": { 798 // CHECK-NEXT: "offset": 558, 799 // CHECK-NEXT: "col": 1, 800 // CHECK-NEXT: "tokLen": 6 801 // CHECK-NEXT: }, 802 // CHECK-NEXT: "end": { 803 // CHECK-NEXT: "offset": 580, 804 // CHECK-NEXT: "col": 23, 805 // CHECK-NEXT: "tokLen": 1 806 // CHECK-NEXT: } 807 // CHECK-NEXT: }, 808 // CHECK-NEXT: "name": "Test6", 809 // CHECK-NEXT: "mangledName": "_ZL5Test6v", 810 // CHECK-NEXT: "type": { 811 // CHECK-NEXT: "qualType": "void ()" 812 // CHECK-NEXT: }, 813 // CHECK-NEXT: "storageClass": "static" 814 // CHECK-NEXT: } 815 816 817 // CHECK: "kind": "FunctionDecl", 818 // CHECK-NEXT: "loc": { 819 // CHECK-NEXT: "offset": 595, 820 // CHECK-NEXT: "file": "{{.*}}", 821 // CHECK-NEXT: "line": 28, 822 // CHECK-NEXT: "col": 13, 823 // CHECK-NEXT: "tokLen": 5 824 // CHECK-NEXT: }, 825 // CHECK-NEXT: "range": { 826 // CHECK-NEXT: "begin": { 827 // CHECK-NEXT: "offset": 583, 828 // CHECK-NEXT: "col": 1, 829 // CHECK-NEXT: "tokLen": 6 830 // CHECK-NEXT: }, 831 // CHECK-NEXT: "end": { 832 // CHECK-NEXT: "offset": 605, 833 // CHECK-NEXT: "col": 23, 834 // CHECK-NEXT: "tokLen": 1 835 // CHECK-NEXT: } 836 // CHECK-NEXT: }, 837 // CHECK-NEXT: "name": "Test7", 838 // CHECK-NEXT: "mangledName": "_Z5Test7v", 839 // CHECK-NEXT: "type": { 840 // CHECK-NEXT: "qualType": "void ()" 841 // CHECK-NEXT: }, 842 // CHECK-NEXT: "storageClass": "extern" 843 // CHECK-NEXT: } 844 845 846 // CHECK: "kind": "FunctionDecl", 847 // CHECK-NEXT: "loc": { 848 // CHECK-NEXT: "offset": 620, 849 // CHECK-NEXT: "file": "{{.*}}", 850 // CHECK-NEXT: "line": 29, 851 // CHECK-NEXT: "col": 13, 852 // CHECK-NEXT: "tokLen": 5 853 // CHECK-NEXT: }, 854 // CHECK-NEXT: "range": { 855 // CHECK-NEXT: "begin": { 856 // CHECK-NEXT: "offset": 608, 857 // CHECK-NEXT: "col": 1, 858 // CHECK-NEXT: "tokLen": 6 859 // CHECK-NEXT: }, 860 // CHECK-NEXT: "end": { 861 // CHECK-NEXT: "offset": 630, 862 // CHECK-NEXT: "col": 23, 863 // CHECK-NEXT: "tokLen": 1 864 // CHECK-NEXT: } 865 // CHECK-NEXT: }, 866 // CHECK-NEXT: "name": "Test8", 867 // CHECK-NEXT: "mangledName": "_Z5Test8v", 868 // CHECK-NEXT: "type": { 869 // CHECK-NEXT: "qualType": "void ()" 870 // CHECK-NEXT: }, 871 // CHECK-NEXT: "inline": true 872 // CHECK-NEXT: } 873 874 875 // CHECK: "kind": "FunctionDecl", 876 // CHECK-NEXT: "loc": { 877 // CHECK-NEXT: "offset": 638, 878 // CHECK-NEXT: "file": "{{.*}}", 879 // CHECK-NEXT: "line": 30, 880 // CHECK-NEXT: "col": 6, 881 // CHECK-NEXT: "tokLen": 5 882 // CHECK-NEXT: }, 883 // CHECK-NEXT: "range": { 884 // CHECK-NEXT: "begin": { 885 // CHECK-NEXT: "offset": 633, 886 // CHECK-NEXT: "col": 1, 887 // CHECK-NEXT: "tokLen": 4 888 // CHECK-NEXT: }, 889 // CHECK-NEXT: "end": { 890 // CHECK-NEXT: "offset": 650, 891 // CHECK-NEXT: "col": 18, 892 // CHECK-NEXT: "tokLen": 8 893 // CHECK-NEXT: } 894 // CHECK-NEXT: }, 895 // CHECK-NEXT: "name": "Test9", 896 // CHECK-NEXT: "mangledName": "_Z5Test9v", 897 // CHECK-NEXT: "type": { 898 // CHECK-NEXT: "qualType": "void () noexcept" 899 // CHECK-NEXT: } 900 // CHECK-NEXT: } 901 902 903 // CHECK: "kind": "FunctionDecl", 904 // CHECK-NEXT: "loc": { 905 // CHECK-NEXT: "offset": 665, 906 // CHECK-NEXT: "file": "{{.*}}", 907 // CHECK-NEXT: "line": 31, 908 // CHECK-NEXT: "col": 6, 909 // CHECK-NEXT: "tokLen": 6 910 // CHECK-NEXT: }, 911 // CHECK-NEXT: "range": { 912 // CHECK-NEXT: "begin": { 913 // CHECK-NEXT: "offset": 660, 914 // CHECK-NEXT: "col": 1, 915 // CHECK-NEXT: "tokLen": 4 916 // CHECK-NEXT: }, 917 // CHECK-NEXT: "end": { 918 // CHECK-NEXT: "offset": 692, 919 // CHECK-NEXT: "col": 33, 920 // CHECK-NEXT: "tokLen": 1 921 // CHECK-NEXT: } 922 // CHECK-NEXT: }, 923 // CHECK-NEXT: "name": "Test10", 924 // CHECK-NEXT: "mangledName": "_Z6Test10v", 925 // CHECK-NEXT: "type": { 926 // CHECK-NEXT: "qualType": "void () noexcept(false)" 927 // CHECK-NEXT: } 928 // CHECK-NEXT: } 929 930 931 // CHECK: "kind": "FunctionDecl", 932 // CHECK-NEXT: "loc": { 933 // CHECK-NEXT: "offset": 700, 934 // CHECK-NEXT: "file": "{{.*}}", 935 // CHECK-NEXT: "line": 32, 936 // CHECK-NEXT: "col": 6, 937 // CHECK-NEXT: "tokLen": 6 938 // CHECK-NEXT: }, 939 // CHECK-NEXT: "range": { 940 // CHECK-NEXT: "begin": { 941 // CHECK-NEXT: "offset": 695, 942 // CHECK-NEXT: "col": 1, 943 // CHECK-NEXT: "tokLen": 4 944 // CHECK-NEXT: }, 945 // CHECK-NEXT: "end": { 946 // CHECK-NEXT: "offset": 723, 947 // CHECK-NEXT: "col": 29, 948 // CHECK-NEXT: "tokLen": 1 949 // CHECK-NEXT: } 950 // CHECK-NEXT: }, 951 // CHECK-NEXT: "name": "Test11", 952 // CHECK-NEXT: "mangledName": "_Z6Test11v", 953 // CHECK-NEXT: "type": { 954 // CHECK-NEXT: "qualType": "void () noexcept(1)" 955 // CHECK-NEXT: } 956 // CHECK-NEXT: } 957 958 959 // CHECK: "kind": "FunctionTemplateDecl", 960 // CHECK-NEXT: "loc": { 961 // CHECK-NEXT: "offset": 751, 962 // CHECK-NEXT: "file": "{{.*}}", 963 // CHECK-NEXT: "line": 35, 964 // CHECK-NEXT: "col": 3, 965 // CHECK-NEXT: "tokLen": 6 966 // CHECK-NEXT: }, 967 // CHECK-NEXT: "range": { 968 // CHECK-NEXT: "begin": { 969 // CHECK-NEXT: "offset": 727, 970 // CHECK-NEXT: "line": 34, 971 // CHECK-NEXT: "col": 1, 972 // CHECK-NEXT: "tokLen": 8 973 // CHECK-NEXT: }, 974 // CHECK-NEXT: "end": { 975 // CHECK-NEXT: "offset": 760, 976 // CHECK-NEXT: "line": 35, 977 // CHECK-NEXT: "col": 12, 978 // CHECK-NEXT: "tokLen": 1 979 // CHECK-NEXT: } 980 // CHECK-NEXT: }, 981 // CHECK-NEXT: "name": "Test12", 982 // CHECK-NEXT: "inner": [ 983 // CHECK-NEXT: { 984 // CHECK-NEXT: "id": "0x{{.*}}", 985 // CHECK-NEXT: "kind": "TemplateTypeParmDecl", 986 // CHECK-NEXT: "loc": { 987 // CHECK-NEXT: "offset": 746, 988 // CHECK-NEXT: "line": 34, 989 // CHECK-NEXT: "col": 20, 990 // CHECK-NEXT: "tokLen": 1 991 // CHECK-NEXT: }, 992 // CHECK-NEXT: "range": { 993 // CHECK-NEXT: "begin": { 994 // CHECK-NEXT: "offset": 737, 995 // CHECK-NEXT: "col": 11, 996 // CHECK-NEXT: "tokLen": 8 997 // CHECK-NEXT: }, 998 // CHECK-NEXT: "end": { 999 // CHECK-NEXT: "offset": 746, 1000 // CHECK-NEXT: "col": 20, 1001 // CHECK-NEXT: "tokLen": 1 1002 // CHECK-NEXT: } 1003 // CHECK-NEXT: }, 1004 // CHECK-NEXT: "isReferenced": true, 1005 // CHECK-NEXT: "name": "T", 1006 // CHECK-NEXT: "tagUsed": "typename", 1007 // CHECK-NEXT: "depth": 0, 1008 // CHECK-NEXT: "index": 0 1009 // CHECK-NEXT: }, 1010 // CHECK-NEXT: { 1011 // CHECK-NEXT: "id": "0x{{.*}}", 1012 // CHECK-NEXT: "kind": "FunctionDecl", 1013 // CHECK-NEXT: "loc": { 1014 // CHECK-NEXT: "offset": 751, 1015 // CHECK-NEXT: "line": 35, 1016 // CHECK-NEXT: "col": 3, 1017 // CHECK-NEXT: "tokLen": 6 1018 // CHECK-NEXT: }, 1019 // CHECK-NEXT: "range": { 1020 // CHECK-NEXT: "begin": { 1021 // CHECK-NEXT: "offset": 749, 1022 // CHECK-NEXT: "col": 1, 1023 // CHECK-NEXT: "tokLen": 1 1024 // CHECK-NEXT: }, 1025 // CHECK-NEXT: "end": { 1026 // CHECK-NEXT: "offset": 760, 1027 // CHECK-NEXT: "col": 12, 1028 // CHECK-NEXT: "tokLen": 1 1029 // CHECK-NEXT: } 1030 // CHECK-NEXT: }, 1031 // CHECK-NEXT: "name": "Test12", 1032 // CHECK-NEXT: "type": { 1033 // CHECK-NEXT: "qualType": "T (T &)" 1034 // CHECK-NEXT: }, 1035 // CHECK-NEXT: "inner": [ 1036 // CHECK-NEXT: { 1037 // CHECK-NEXT: "id": "0x{{.*}}", 1038 // CHECK-NEXT: "kind": "ParmVarDecl", 1039 // CHECK-NEXT: "loc": { 1040 // CHECK-NEXT: "offset": 760, 1041 // CHECK-NEXT: "col": 12, 1042 // CHECK-NEXT: "tokLen": 1 1043 // CHECK-NEXT: }, 1044 // CHECK-NEXT: "range": { 1045 // CHECK-NEXT: "begin": { 1046 // CHECK-NEXT: "offset": 758, 1047 // CHECK-NEXT: "col": 10, 1048 // CHECK-NEXT: "tokLen": 1 1049 // CHECK-NEXT: }, 1050 // CHECK-NEXT: "end": { 1051 // CHECK-NEXT: "offset": 759, 1052 // CHECK-NEXT: "col": 11, 1053 // CHECK-NEXT: "tokLen": 1 1054 // CHECK-NEXT: } 1055 // CHECK-NEXT: }, 1056 // CHECK-NEXT: "type": { 1057 // CHECK-NEXT: "qualType": "T &" 1058 // CHECK-NEXT: } 1059 // CHECK-NEXT: } 1060 // CHECK-NEXT: ] 1061 // CHECK-NEXT: } 1062 // CHECK-NEXT: ] 1063 // CHECK-NEXT: } 1064 1065 1066 // CHECK: "kind": "FunctionDecl", 1067 // CHECK-NEXT: "loc": { 1068 // CHECK-NEXT: "offset": 769, 1069 // CHECK-NEXT: "file": "{{.*}}", 1070 // CHECK-NEXT: "line": 37, 1071 // CHECK-NEXT: "col": 6, 1072 // CHECK-NEXT: "tokLen": 6 1073 // CHECK-NEXT: }, 1074 // CHECK-NEXT: "range": { 1075 // CHECK-NEXT: "begin": { 1076 // CHECK-NEXT: "offset": 764, 1077 // CHECK-NEXT: "col": 1, 1078 // CHECK-NEXT: "tokLen": 4 1079 // CHECK-NEXT: }, 1080 // CHECK-NEXT: "end": { 1081 // CHECK-NEXT: "offset": 782, 1082 // CHECK-NEXT: "col": 19, 1083 // CHECK-NEXT: "tokLen": 1 1084 // CHECK-NEXT: } 1085 // CHECK-NEXT: }, 1086 // CHECK-NEXT: "name": "Test13", 1087 // CHECK-NEXT: "mangledName": "_Z6Test13i", 1088 // CHECK-NEXT: "type": { 1089 // CHECK-NEXT: "qualType": "void (int)" 1090 // CHECK-NEXT: }, 1091 // CHECK-NEXT: "inner": [ 1092 // CHECK-NEXT: { 1093 // CHECK-NEXT: "id": "0x{{.*}}", 1094 // CHECK-NEXT: "kind": "ParmVarDecl", 1095 // CHECK-NEXT: "loc": { 1096 // CHECK-NEXT: "offset": 779, 1097 // CHECK-NEXT: "col": 16, 1098 // CHECK-NEXT: "tokLen": 1 1099 // CHECK-NEXT: }, 1100 // CHECK-NEXT: "range": { 1101 // CHECK-NEXT: "begin": { 1102 // CHECK-NEXT: "offset": 776, 1103 // CHECK-NEXT: "col": 13, 1104 // CHECK-NEXT: "tokLen": 3 1105 // CHECK-NEXT: }, 1106 // CHECK-NEXT: "end": { 1107 // CHECK-NEXT: "offset": 776, 1108 // CHECK-NEXT: "col": 13, 1109 // CHECK-NEXT: "tokLen": 3 1110 // CHECK-NEXT: } 1111 // CHECK-NEXT: }, 1112 // CHECK-NEXT: "type": { 1113 // CHECK-NEXT: "qualType": "int" 1114 // CHECK-NEXT: } 1115 // CHECK-NEXT: }, 1116 // CHECK-NEXT: { 1117 // CHECK-NEXT: "id": "0x{{.*}}", 1118 // CHECK-NEXT: "kind": "CompoundStmt", 1119 // CHECK-NEXT: "range": { 1120 // CHECK-NEXT: "begin": { 1121 // CHECK-NEXT: "offset": 781, 1122 // CHECK-NEXT: "col": 18, 1123 // CHECK-NEXT: "tokLen": 1 1124 // CHECK-NEXT: }, 1125 // CHECK-NEXT: "end": { 1126 // CHECK-NEXT: "offset": 782, 1127 // CHECK-NEXT: "col": 19, 1128 // CHECK-NEXT: "tokLen": 1 1129 // CHECK-NEXT: } 1130 // CHECK-NEXT: } 1131 // CHECK-NEXT: } 1132 // CHECK-NEXT: ] 1133 // CHECK-NEXT: } 1134 1135 1136 // CHECK: "kind": "FunctionDecl", 1137 // CHECK-NEXT: "loc": { 1138 // CHECK-NEXT: "offset": 789, 1139 // CHECK-NEXT: "file": "{{.*}}", 1140 // CHECK-NEXT: "line": 38, 1141 // CHECK-NEXT: "col": 6, 1142 // CHECK-NEXT: "tokLen": 6 1143 // CHECK-NEXT: }, 1144 // CHECK-NEXT: "range": { 1145 // CHECK-NEXT: "begin": { 1146 // CHECK-NEXT: "offset": 784, 1147 // CHECK-NEXT: "col": 1, 1148 // CHECK-NEXT: "tokLen": 4 1149 // CHECK-NEXT: }, 1150 // CHECK-NEXT: "end": { 1151 // CHECK-NEXT: "offset": 807, 1152 // CHECK-NEXT: "col": 24, 1153 // CHECK-NEXT: "tokLen": 1 1154 // CHECK-NEXT: } 1155 // CHECK-NEXT: }, 1156 // CHECK-NEXT: "name": "Test14", 1157 // CHECK-NEXT: "mangledName": "_Z6Test14iz", 1158 // CHECK-NEXT: "type": { 1159 // CHECK-NEXT: "qualType": "void (int, ...)" 1160 // CHECK-NEXT: }, 1161 // CHECK-NEXT: "variadic": true, 1162 // CHECK-NEXT: "inner": [ 1163 // CHECK-NEXT: { 1164 // CHECK-NEXT: "id": "0x{{.*}}", 1165 // CHECK-NEXT: "kind": "ParmVarDecl", 1166 // CHECK-NEXT: "loc": { 1167 // CHECK-NEXT: "offset": 799, 1168 // CHECK-NEXT: "col": 16, 1169 // CHECK-NEXT: "tokLen": 1 1170 // CHECK-NEXT: }, 1171 // CHECK-NEXT: "range": { 1172 // CHECK-NEXT: "begin": { 1173 // CHECK-NEXT: "offset": 796, 1174 // CHECK-NEXT: "col": 13, 1175 // CHECK-NEXT: "tokLen": 3 1176 // CHECK-NEXT: }, 1177 // CHECK-NEXT: "end": { 1178 // CHECK-NEXT: "offset": 796, 1179 // CHECK-NEXT: "col": 13, 1180 // CHECK-NEXT: "tokLen": 3 1181 // CHECK-NEXT: } 1182 // CHECK-NEXT: }, 1183 // CHECK-NEXT: "type": { 1184 // CHECK-NEXT: "qualType": "int" 1185 // CHECK-NEXT: } 1186 // CHECK-NEXT: }, 1187 // CHECK-NEXT: { 1188 // CHECK-NEXT: "id": "0x{{.*}}", 1189 // CHECK-NEXT: "kind": "CompoundStmt", 1190 // CHECK-NEXT: "range": { 1191 // CHECK-NEXT: "begin": { 1192 // CHECK-NEXT: "offset": 806, 1193 // CHECK-NEXT: "col": 23, 1194 // CHECK-NEXT: "tokLen": 1 1195 // CHECK-NEXT: }, 1196 // CHECK-NEXT: "end": { 1197 // CHECK-NEXT: "offset": 807, 1198 // CHECK-NEXT: "col": 24, 1199 // CHECK-NEXT: "tokLen": 1 1200 // CHECK-NEXT: } 1201 // CHECK-NEXT: } 1202 // CHECK-NEXT: } 1203 // CHECK-NEXT: ] 1204 // CHECK-NEXT: } 1205