1 // RUN: %clang_cc1 -triple x86_64-linux-gnu -fsyntax-only -ast-dump=json %s | FileCheck %s 2 3 unsigned char implicitcast_0(unsigned int x) { 4 return x; 5 } 6 7 signed char implicitcast_1(unsigned int x) { 8 return x; 9 } 10 11 unsigned char implicitcast_2(signed int x) { 12 return x; 13 } 14 15 signed char implicitcast_3(signed int x) { 16 return x; 17 } 18 19 //----------------------------------------------------------------------------// 20 21 unsigned char cstylecast_0(unsigned int x) { 22 return (unsigned char)x; 23 } 24 25 signed char cstylecast_1(unsigned int x) { 26 return (signed char)x; 27 } 28 29 unsigned char cstylecast_2(signed int x) { 30 return (unsigned char)x; 31 } 32 33 signed char cstylecast_3(signed int x) { 34 return (signed char)x; 35 } 36 37 //----------------------------------------------------------------------------// 38 39 unsigned char cxxstaticcast_0(unsigned int x) { 40 return static_cast<unsigned char>(x); 41 } 42 43 signed char cxxstaticcast_1(unsigned int x) { 44 return static_cast<signed char>(x); 45 } 46 47 unsigned char cxxstaticcast_2(signed int x) { 48 return static_cast<unsigned char>(x); 49 } 50 51 signed char cxxstaticcast_3(signed int x) { 52 return static_cast<signed char>(x); 53 } 54 55 //----------------------------------------------------------------------------// 56 57 using UnsignedChar = unsigned char; 58 using SignedChar = signed char; 59 using UnsignedInt = unsigned int; 60 using SignedInt = signed int; 61 62 UnsignedChar cxxfunctionalcast_0(UnsignedInt x) { 63 return UnsignedChar(x); 64 } 65 66 SignedChar cxxfunctionalcast_1(UnsignedInt x) { 67 return SignedChar(x); 68 } 69 70 UnsignedChar cxxfunctionalcast_2(SignedInt x) { 71 return UnsignedChar(x); 72 } 73 74 SignedChar cxxfunctionalcast_3(SignedInt x) { 75 return SignedChar(x); 76 } 77 78 // NOTE: CHECK lines have been autogenerated by gen_ast_dump_json_test.py 79 // using --filters=ImplicitCastExpr,CStyleCastExpr,CXXStaticCastExpr,CXXFunctionalCastExpr 80 81 // CHECK: "kind": "ImplicitCastExpr", 82 // CHECK-NEXT: "range": { 83 // CHECK-NEXT: "begin": { 84 // CHECK-NEXT: "offset": {{[0-9]+}}, 85 // CHECK-NEXT: "col": 10, 86 // CHECK-NEXT: "tokLen": 1 87 // CHECK-NEXT: }, 88 // CHECK-NEXT: "end": { 89 // CHECK-NEXT: "offset": {{[0-9]+}}, 90 // CHECK-NEXT: "col": 10, 91 // CHECK-NEXT: "tokLen": 1 92 // CHECK-NEXT: } 93 // CHECK-NEXT: }, 94 // CHECK-NEXT: "type": { 95 // CHECK-NEXT: "qualType": "unsigned char" 96 // CHECK-NEXT: }, 97 // CHECK-NEXT: "valueCategory": "prvalue", 98 // CHECK-NEXT: "castKind": "IntegralCast", 99 // CHECK-NEXT: "inner": [ 100 // CHECK-NEXT: { 101 // CHECK-NEXT: "id": "0x{{.*}}", 102 // CHECK-NEXT: "kind": "ImplicitCastExpr", 103 // CHECK-NEXT: "range": { 104 // CHECK-NEXT: "begin": { 105 // CHECK-NEXT: "offset": {{[0-9]+}}, 106 // CHECK-NEXT: "col": 10, 107 // CHECK-NEXT: "tokLen": 1 108 // CHECK-NEXT: }, 109 // CHECK-NEXT: "end": { 110 // CHECK-NEXT: "offset": {{[0-9]+}}, 111 // CHECK-NEXT: "col": 10, 112 // CHECK-NEXT: "tokLen": 1 113 // CHECK-NEXT: } 114 // CHECK-NEXT: }, 115 // CHECK-NEXT: "type": { 116 // CHECK-NEXT: "qualType": "unsigned int" 117 // CHECK-NEXT: }, 118 // CHECK-NEXT: "valueCategory": "prvalue", 119 // CHECK-NEXT: "castKind": "LValueToRValue", 120 // CHECK-NEXT: "inner": [ 121 // CHECK-NEXT: { 122 // CHECK-NEXT: "id": "0x{{.*}}", 123 // CHECK-NEXT: "kind": "DeclRefExpr", 124 // CHECK-NEXT: "range": { 125 // CHECK-NEXT: "begin": { 126 // CHECK-NEXT: "offset": {{[0-9]+}}, 127 // CHECK-NEXT: "col": 10, 128 // CHECK-NEXT: "tokLen": 1 129 // CHECK-NEXT: }, 130 // CHECK-NEXT: "end": { 131 // CHECK-NEXT: "offset": {{[0-9]+}}, 132 // CHECK-NEXT: "col": 10, 133 // CHECK-NEXT: "tokLen": 1 134 // CHECK-NEXT: } 135 // CHECK-NEXT: }, 136 // CHECK-NEXT: "type": { 137 // CHECK-NEXT: "qualType": "unsigned int" 138 // CHECK-NEXT: }, 139 // CHECK-NEXT: "valueCategory": "lvalue", 140 // CHECK-NEXT: "referencedDecl": { 141 // CHECK-NEXT: "id": "0x{{.*}}", 142 // CHECK-NEXT: "kind": "ParmVarDecl", 143 // CHECK-NEXT: "name": "x", 144 // CHECK-NEXT: "type": { 145 // CHECK-NEXT: "qualType": "unsigned int" 146 // CHECK-NEXT: } 147 // CHECK-NEXT: } 148 // CHECK-NEXT: } 149 // CHECK-NEXT: ] 150 // CHECK-NEXT: } 151 // CHECK-NEXT: ] 152 // CHECK-NEXT: } 153 154 // CHECK: "kind": "ImplicitCastExpr", 155 // CHECK-NEXT: "range": { 156 // CHECK-NEXT: "begin": { 157 // CHECK-NEXT: "offset": {{[0-9]+}}, 158 // CHECK-NEXT: "col": 10, 159 // CHECK-NEXT: "tokLen": 1 160 // CHECK-NEXT: }, 161 // CHECK-NEXT: "end": { 162 // CHECK-NEXT: "offset": {{[0-9]+}}, 163 // CHECK-NEXT: "col": 10, 164 // CHECK-NEXT: "tokLen": 1 165 // CHECK-NEXT: } 166 // CHECK-NEXT: }, 167 // CHECK-NEXT: "type": { 168 // CHECK-NEXT: "qualType": "signed char" 169 // CHECK-NEXT: }, 170 // CHECK-NEXT: "valueCategory": "prvalue", 171 // CHECK-NEXT: "castKind": "IntegralCast", 172 // CHECK-NEXT: "inner": [ 173 // CHECK-NEXT: { 174 // CHECK-NEXT: "id": "0x{{.*}}", 175 // CHECK-NEXT: "kind": "ImplicitCastExpr", 176 // CHECK-NEXT: "range": { 177 // CHECK-NEXT: "begin": { 178 // CHECK-NEXT: "offset": {{[0-9]+}}, 179 // CHECK-NEXT: "col": 10, 180 // CHECK-NEXT: "tokLen": 1 181 // CHECK-NEXT: }, 182 // CHECK-NEXT: "end": { 183 // CHECK-NEXT: "offset": {{[0-9]+}}, 184 // CHECK-NEXT: "col": 10, 185 // CHECK-NEXT: "tokLen": 1 186 // CHECK-NEXT: } 187 // CHECK-NEXT: }, 188 // CHECK-NEXT: "type": { 189 // CHECK-NEXT: "qualType": "unsigned int" 190 // CHECK-NEXT: }, 191 // CHECK-NEXT: "valueCategory": "prvalue", 192 // CHECK-NEXT: "castKind": "LValueToRValue", 193 // CHECK-NEXT: "inner": [ 194 // CHECK-NEXT: { 195 // CHECK-NEXT: "id": "0x{{.*}}", 196 // CHECK-NEXT: "kind": "DeclRefExpr", 197 // CHECK-NEXT: "range": { 198 // CHECK-NEXT: "begin": { 199 // CHECK-NEXT: "offset": {{[0-9]+}}, 200 // CHECK-NEXT: "col": 10, 201 // CHECK-NEXT: "tokLen": 1 202 // CHECK-NEXT: }, 203 // CHECK-NEXT: "end": { 204 // CHECK-NEXT: "offset": {{[0-9]+}}, 205 // CHECK-NEXT: "col": 10, 206 // CHECK-NEXT: "tokLen": 1 207 // CHECK-NEXT: } 208 // CHECK-NEXT: }, 209 // CHECK-NEXT: "type": { 210 // CHECK-NEXT: "qualType": "unsigned int" 211 // CHECK-NEXT: }, 212 // CHECK-NEXT: "valueCategory": "lvalue", 213 // CHECK-NEXT: "referencedDecl": { 214 // CHECK-NEXT: "id": "0x{{.*}}", 215 // CHECK-NEXT: "kind": "ParmVarDecl", 216 // CHECK-NEXT: "name": "x", 217 // CHECK-NEXT: "type": { 218 // CHECK-NEXT: "qualType": "unsigned int" 219 // CHECK-NEXT: } 220 // CHECK-NEXT: } 221 // CHECK-NEXT: } 222 // CHECK-NEXT: ] 223 // CHECK-NEXT: } 224 // CHECK-NEXT: ] 225 // CHECK-NEXT: } 226 227 // CHECK: "kind": "ImplicitCastExpr", 228 // CHECK-NEXT: "range": { 229 // CHECK-NEXT: "begin": { 230 // CHECK-NEXT: "offset": {{[0-9]+}}, 231 // CHECK-NEXT: "col": 10, 232 // CHECK-NEXT: "tokLen": 1 233 // CHECK-NEXT: }, 234 // CHECK-NEXT: "end": { 235 // CHECK-NEXT: "offset": {{[0-9]+}}, 236 // CHECK-NEXT: "col": 10, 237 // CHECK-NEXT: "tokLen": 1 238 // CHECK-NEXT: } 239 // CHECK-NEXT: }, 240 // CHECK-NEXT: "type": { 241 // CHECK-NEXT: "qualType": "unsigned char" 242 // CHECK-NEXT: }, 243 // CHECK-NEXT: "valueCategory": "prvalue", 244 // CHECK-NEXT: "castKind": "IntegralCast", 245 // CHECK-NEXT: "inner": [ 246 // CHECK-NEXT: { 247 // CHECK-NEXT: "id": "0x{{.*}}", 248 // CHECK-NEXT: "kind": "ImplicitCastExpr", 249 // CHECK-NEXT: "range": { 250 // CHECK-NEXT: "begin": { 251 // CHECK-NEXT: "offset": {{[0-9]+}}, 252 // CHECK-NEXT: "col": 10, 253 // CHECK-NEXT: "tokLen": 1 254 // CHECK-NEXT: }, 255 // CHECK-NEXT: "end": { 256 // CHECK-NEXT: "offset": {{[0-9]+}}, 257 // CHECK-NEXT: "col": 10, 258 // CHECK-NEXT: "tokLen": 1 259 // CHECK-NEXT: } 260 // CHECK-NEXT: }, 261 // CHECK-NEXT: "type": { 262 // CHECK-NEXT: "qualType": "int" 263 // CHECK-NEXT: }, 264 // CHECK-NEXT: "valueCategory": "prvalue", 265 // CHECK-NEXT: "castKind": "LValueToRValue", 266 // CHECK-NEXT: "inner": [ 267 // CHECK-NEXT: { 268 // CHECK-NEXT: "id": "0x{{.*}}", 269 // CHECK-NEXT: "kind": "DeclRefExpr", 270 // CHECK-NEXT: "range": { 271 // CHECK-NEXT: "begin": { 272 // CHECK-NEXT: "offset": {{[0-9]+}}, 273 // CHECK-NEXT: "col": 10, 274 // CHECK-NEXT: "tokLen": 1 275 // CHECK-NEXT: }, 276 // CHECK-NEXT: "end": { 277 // CHECK-NEXT: "offset": {{[0-9]+}}, 278 // CHECK-NEXT: "col": 10, 279 // CHECK-NEXT: "tokLen": 1 280 // CHECK-NEXT: } 281 // CHECK-NEXT: }, 282 // CHECK-NEXT: "type": { 283 // CHECK-NEXT: "qualType": "int" 284 // CHECK-NEXT: }, 285 // CHECK-NEXT: "valueCategory": "lvalue", 286 // CHECK-NEXT: "referencedDecl": { 287 // CHECK-NEXT: "id": "0x{{.*}}", 288 // CHECK-NEXT: "kind": "ParmVarDecl", 289 // CHECK-NEXT: "name": "x", 290 // CHECK-NEXT: "type": { 291 // CHECK-NEXT: "qualType": "int" 292 // CHECK-NEXT: } 293 // CHECK-NEXT: } 294 // CHECK-NEXT: } 295 // CHECK-NEXT: ] 296 // CHECK-NEXT: } 297 // CHECK-NEXT: ] 298 // CHECK-NEXT: } 299 300 // CHECK: "kind": "ImplicitCastExpr", 301 // CHECK-NEXT: "range": { 302 // CHECK-NEXT: "begin": { 303 // CHECK-NEXT: "offset": {{[0-9]+}}, 304 // CHECK-NEXT: "col": 10, 305 // CHECK-NEXT: "tokLen": 1 306 // CHECK-NEXT: }, 307 // CHECK-NEXT: "end": { 308 // CHECK-NEXT: "offset": {{[0-9]+}}, 309 // CHECK-NEXT: "col": 10, 310 // CHECK-NEXT: "tokLen": 1 311 // CHECK-NEXT: } 312 // CHECK-NEXT: }, 313 // CHECK-NEXT: "type": { 314 // CHECK-NEXT: "qualType": "signed char" 315 // CHECK-NEXT: }, 316 // CHECK-NEXT: "valueCategory": "prvalue", 317 // CHECK-NEXT: "castKind": "IntegralCast", 318 // CHECK-NEXT: "inner": [ 319 // CHECK-NEXT: { 320 // CHECK-NEXT: "id": "0x{{.*}}", 321 // CHECK-NEXT: "kind": "ImplicitCastExpr", 322 // CHECK-NEXT: "range": { 323 // CHECK-NEXT: "begin": { 324 // CHECK-NEXT: "offset": {{[0-9]+}}, 325 // CHECK-NEXT: "col": 10, 326 // CHECK-NEXT: "tokLen": 1 327 // CHECK-NEXT: }, 328 // CHECK-NEXT: "end": { 329 // CHECK-NEXT: "offset": {{[0-9]+}}, 330 // CHECK-NEXT: "col": 10, 331 // CHECK-NEXT: "tokLen": 1 332 // CHECK-NEXT: } 333 // CHECK-NEXT: }, 334 // CHECK-NEXT: "type": { 335 // CHECK-NEXT: "qualType": "int" 336 // CHECK-NEXT: }, 337 // CHECK-NEXT: "valueCategory": "prvalue", 338 // CHECK-NEXT: "castKind": "LValueToRValue", 339 // CHECK-NEXT: "inner": [ 340 // CHECK-NEXT: { 341 // CHECK-NEXT: "id": "0x{{.*}}", 342 // CHECK-NEXT: "kind": "DeclRefExpr", 343 // CHECK-NEXT: "range": { 344 // CHECK-NEXT: "begin": { 345 // CHECK-NEXT: "offset": {{[0-9]+}}, 346 // CHECK-NEXT: "col": 10, 347 // CHECK-NEXT: "tokLen": 1 348 // CHECK-NEXT: }, 349 // CHECK-NEXT: "end": { 350 // CHECK-NEXT: "offset": {{[0-9]+}}, 351 // CHECK-NEXT: "col": 10, 352 // CHECK-NEXT: "tokLen": 1 353 // CHECK-NEXT: } 354 // CHECK-NEXT: }, 355 // CHECK-NEXT: "type": { 356 // CHECK-NEXT: "qualType": "int" 357 // CHECK-NEXT: }, 358 // CHECK-NEXT: "valueCategory": "lvalue", 359 // CHECK-NEXT: "referencedDecl": { 360 // CHECK-NEXT: "id": "0x{{.*}}", 361 // CHECK-NEXT: "kind": "ParmVarDecl", 362 // CHECK-NEXT: "name": "x", 363 // CHECK-NEXT: "type": { 364 // CHECK-NEXT: "qualType": "int" 365 // CHECK-NEXT: } 366 // CHECK-NEXT: } 367 // CHECK-NEXT: } 368 // CHECK-NEXT: ] 369 // CHECK-NEXT: } 370 // CHECK-NEXT: ] 371 // CHECK-NEXT: } 372 373 // CHECK: "kind": "CStyleCastExpr", 374 // CHECK-NEXT: "range": { 375 // CHECK-NEXT: "begin": { 376 // CHECK-NEXT: "offset": {{[0-9]+}}, 377 // CHECK-NEXT: "col": 10, 378 // CHECK-NEXT: "tokLen": 1 379 // CHECK-NEXT: }, 380 // CHECK-NEXT: "end": { 381 // CHECK-NEXT: "offset": {{[0-9]+}}, 382 // CHECK-NEXT: "col": 25, 383 // CHECK-NEXT: "tokLen": 1 384 // CHECK-NEXT: } 385 // CHECK-NEXT: }, 386 // CHECK-NEXT: "type": { 387 // CHECK-NEXT: "qualType": "unsigned char" 388 // CHECK-NEXT: }, 389 // CHECK-NEXT: "valueCategory": "prvalue", 390 // CHECK-NEXT: "castKind": "NoOp", 391 // CHECK-NEXT: "inner": [ 392 // CHECK-NEXT: { 393 // CHECK-NEXT: "id": "0x{{.*}}", 394 // CHECK-NEXT: "kind": "ImplicitCastExpr", 395 // CHECK-NEXT: "range": { 396 // CHECK-NEXT: "begin": { 397 // CHECK-NEXT: "offset": {{[0-9]+}}, 398 // CHECK-NEXT: "col": 25, 399 // CHECK-NEXT: "tokLen": 1 400 // CHECK-NEXT: }, 401 // CHECK-NEXT: "end": { 402 // CHECK-NEXT: "offset": {{[0-9]+}}, 403 // CHECK-NEXT: "col": 25, 404 // CHECK-NEXT: "tokLen": 1 405 // CHECK-NEXT: } 406 // CHECK-NEXT: }, 407 // CHECK-NEXT: "type": { 408 // CHECK-NEXT: "qualType": "unsigned char" 409 // CHECK-NEXT: }, 410 // CHECK-NEXT: "valueCategory": "prvalue", 411 // CHECK-NEXT: "castKind": "IntegralCast", 412 // CHECK-NEXT: "isPartOfExplicitCast": true, 413 // CHECK-NEXT: "inner": [ 414 // CHECK-NEXT: { 415 // CHECK-NEXT: "id": "0x{{.*}}", 416 // CHECK-NEXT: "kind": "ImplicitCastExpr", 417 // CHECK-NEXT: "range": { 418 // CHECK-NEXT: "begin": { 419 // CHECK-NEXT: "offset": {{[0-9]+}}, 420 // CHECK-NEXT: "col": 25, 421 // CHECK-NEXT: "tokLen": 1 422 // CHECK-NEXT: }, 423 // CHECK-NEXT: "end": { 424 // CHECK-NEXT: "offset": {{[0-9]+}}, 425 // CHECK-NEXT: "col": 25, 426 // CHECK-NEXT: "tokLen": 1 427 // CHECK-NEXT: } 428 // CHECK-NEXT: }, 429 // CHECK-NEXT: "type": { 430 // CHECK-NEXT: "qualType": "unsigned int" 431 // CHECK-NEXT: }, 432 // CHECK-NEXT: "valueCategory": "prvalue", 433 // CHECK-NEXT: "castKind": "LValueToRValue", 434 // CHECK-NEXT: "isPartOfExplicitCast": true, 435 // CHECK-NEXT: "inner": [ 436 // CHECK-NEXT: { 437 // CHECK-NEXT: "id": "0x{{.*}}", 438 // CHECK-NEXT: "kind": "DeclRefExpr", 439 // CHECK-NEXT: "range": { 440 // CHECK-NEXT: "begin": { 441 // CHECK-NEXT: "offset": {{[0-9]+}}, 442 // CHECK-NEXT: "col": 25, 443 // CHECK-NEXT: "tokLen": 1 444 // CHECK-NEXT: }, 445 // CHECK-NEXT: "end": { 446 // CHECK-NEXT: "offset": {{[0-9]+}}, 447 // CHECK-NEXT: "col": 25, 448 // CHECK-NEXT: "tokLen": 1 449 // CHECK-NEXT: } 450 // CHECK-NEXT: }, 451 // CHECK-NEXT: "type": { 452 // CHECK-NEXT: "qualType": "unsigned int" 453 // CHECK-NEXT: }, 454 // CHECK-NEXT: "valueCategory": "lvalue", 455 // CHECK-NEXT: "referencedDecl": { 456 // CHECK-NEXT: "id": "0x{{.*}}", 457 // CHECK-NEXT: "kind": "ParmVarDecl", 458 // CHECK-NEXT: "name": "x", 459 // CHECK-NEXT: "type": { 460 // CHECK-NEXT: "qualType": "unsigned int" 461 // CHECK-NEXT: } 462 // CHECK-NEXT: } 463 // CHECK-NEXT: } 464 // CHECK-NEXT: ] 465 // CHECK-NEXT: } 466 // CHECK-NEXT: ] 467 // CHECK-NEXT: } 468 // CHECK-NEXT: ] 469 // CHECK-NEXT: } 470 471 // CHECK: "kind": "CStyleCastExpr", 472 // CHECK-NEXT: "range": { 473 // CHECK-NEXT: "begin": { 474 // CHECK-NEXT: "offset": {{[0-9]+}}, 475 // CHECK-NEXT: "col": 10, 476 // CHECK-NEXT: "tokLen": 1 477 // CHECK-NEXT: }, 478 // CHECK-NEXT: "end": { 479 // CHECK-NEXT: "offset": {{[0-9]+}}, 480 // CHECK-NEXT: "col": 23, 481 // CHECK-NEXT: "tokLen": 1 482 // CHECK-NEXT: } 483 // CHECK-NEXT: }, 484 // CHECK-NEXT: "type": { 485 // CHECK-NEXT: "qualType": "signed char" 486 // CHECK-NEXT: }, 487 // CHECK-NEXT: "valueCategory": "prvalue", 488 // CHECK-NEXT: "castKind": "NoOp", 489 // CHECK-NEXT: "inner": [ 490 // CHECK-NEXT: { 491 // CHECK-NEXT: "id": "0x{{.*}}", 492 // CHECK-NEXT: "kind": "ImplicitCastExpr", 493 // CHECK-NEXT: "range": { 494 // CHECK-NEXT: "begin": { 495 // CHECK-NEXT: "offset": {{[0-9]+}}, 496 // CHECK-NEXT: "col": 23, 497 // CHECK-NEXT: "tokLen": 1 498 // CHECK-NEXT: }, 499 // CHECK-NEXT: "end": { 500 // CHECK-NEXT: "offset": {{[0-9]+}}, 501 // CHECK-NEXT: "col": 23, 502 // CHECK-NEXT: "tokLen": 1 503 // CHECK-NEXT: } 504 // CHECK-NEXT: }, 505 // CHECK-NEXT: "type": { 506 // CHECK-NEXT: "qualType": "signed char" 507 // CHECK-NEXT: }, 508 // CHECK-NEXT: "valueCategory": "prvalue", 509 // CHECK-NEXT: "castKind": "IntegralCast", 510 // CHECK-NEXT: "isPartOfExplicitCast": true, 511 // CHECK-NEXT: "inner": [ 512 // CHECK-NEXT: { 513 // CHECK-NEXT: "id": "0x{{.*}}", 514 // CHECK-NEXT: "kind": "ImplicitCastExpr", 515 // CHECK-NEXT: "range": { 516 // CHECK-NEXT: "begin": { 517 // CHECK-NEXT: "offset": {{[0-9]+}}, 518 // CHECK-NEXT: "col": 23, 519 // CHECK-NEXT: "tokLen": 1 520 // CHECK-NEXT: }, 521 // CHECK-NEXT: "end": { 522 // CHECK-NEXT: "offset": {{[0-9]+}}, 523 // CHECK-NEXT: "col": 23, 524 // CHECK-NEXT: "tokLen": 1 525 // CHECK-NEXT: } 526 // CHECK-NEXT: }, 527 // CHECK-NEXT: "type": { 528 // CHECK-NEXT: "qualType": "unsigned int" 529 // CHECK-NEXT: }, 530 // CHECK-NEXT: "valueCategory": "prvalue", 531 // CHECK-NEXT: "castKind": "LValueToRValue", 532 // CHECK-NEXT: "isPartOfExplicitCast": true, 533 // CHECK-NEXT: "inner": [ 534 // CHECK-NEXT: { 535 // CHECK-NEXT: "id": "0x{{.*}}", 536 // CHECK-NEXT: "kind": "DeclRefExpr", 537 // CHECK-NEXT: "range": { 538 // CHECK-NEXT: "begin": { 539 // CHECK-NEXT: "offset": {{[0-9]+}}, 540 // CHECK-NEXT: "col": 23, 541 // CHECK-NEXT: "tokLen": 1 542 // CHECK-NEXT: }, 543 // CHECK-NEXT: "end": { 544 // CHECK-NEXT: "offset": {{[0-9]+}}, 545 // CHECK-NEXT: "col": 23, 546 // CHECK-NEXT: "tokLen": 1 547 // CHECK-NEXT: } 548 // CHECK-NEXT: }, 549 // CHECK-NEXT: "type": { 550 // CHECK-NEXT: "qualType": "unsigned int" 551 // CHECK-NEXT: }, 552 // CHECK-NEXT: "valueCategory": "lvalue", 553 // CHECK-NEXT: "referencedDecl": { 554 // CHECK-NEXT: "id": "0x{{.*}}", 555 // CHECK-NEXT: "kind": "ParmVarDecl", 556 // CHECK-NEXT: "name": "x", 557 // CHECK-NEXT: "type": { 558 // CHECK-NEXT: "qualType": "unsigned int" 559 // CHECK-NEXT: } 560 // CHECK-NEXT: } 561 // CHECK-NEXT: } 562 // CHECK-NEXT: ] 563 // CHECK-NEXT: } 564 // CHECK-NEXT: ] 565 // CHECK-NEXT: } 566 // CHECK-NEXT: ] 567 // CHECK-NEXT: } 568 569 // CHECK: "kind": "CStyleCastExpr", 570 // CHECK-NEXT: "range": { 571 // CHECK-NEXT: "begin": { 572 // CHECK-NEXT: "offset": {{[0-9]+}}, 573 // CHECK-NEXT: "col": 10, 574 // CHECK-NEXT: "tokLen": 1 575 // CHECK-NEXT: }, 576 // CHECK-NEXT: "end": { 577 // CHECK-NEXT: "offset": {{[0-9]+}}, 578 // CHECK-NEXT: "col": 25, 579 // CHECK-NEXT: "tokLen": 1 580 // CHECK-NEXT: } 581 // CHECK-NEXT: }, 582 // CHECK-NEXT: "type": { 583 // CHECK-NEXT: "qualType": "unsigned char" 584 // CHECK-NEXT: }, 585 // CHECK-NEXT: "valueCategory": "prvalue", 586 // CHECK-NEXT: "castKind": "NoOp", 587 // CHECK-NEXT: "inner": [ 588 // CHECK-NEXT: { 589 // CHECK-NEXT: "id": "0x{{.*}}", 590 // CHECK-NEXT: "kind": "ImplicitCastExpr", 591 // CHECK-NEXT: "range": { 592 // CHECK-NEXT: "begin": { 593 // CHECK-NEXT: "offset": {{[0-9]+}}, 594 // CHECK-NEXT: "col": 25, 595 // CHECK-NEXT: "tokLen": 1 596 // CHECK-NEXT: }, 597 // CHECK-NEXT: "end": { 598 // CHECK-NEXT: "offset": {{[0-9]+}}, 599 // CHECK-NEXT: "col": 25, 600 // CHECK-NEXT: "tokLen": 1 601 // CHECK-NEXT: } 602 // CHECK-NEXT: }, 603 // CHECK-NEXT: "type": { 604 // CHECK-NEXT: "qualType": "unsigned char" 605 // CHECK-NEXT: }, 606 // CHECK-NEXT: "valueCategory": "prvalue", 607 // CHECK-NEXT: "castKind": "IntegralCast", 608 // CHECK-NEXT: "isPartOfExplicitCast": true, 609 // CHECK-NEXT: "inner": [ 610 // CHECK-NEXT: { 611 // CHECK-NEXT: "id": "0x{{.*}}", 612 // CHECK-NEXT: "kind": "ImplicitCastExpr", 613 // CHECK-NEXT: "range": { 614 // CHECK-NEXT: "begin": { 615 // CHECK-NEXT: "offset": {{[0-9]+}}, 616 // CHECK-NEXT: "col": 25, 617 // CHECK-NEXT: "tokLen": 1 618 // CHECK-NEXT: }, 619 // CHECK-NEXT: "end": { 620 // CHECK-NEXT: "offset": {{[0-9]+}}, 621 // CHECK-NEXT: "col": 25, 622 // CHECK-NEXT: "tokLen": 1 623 // CHECK-NEXT: } 624 // CHECK-NEXT: }, 625 // CHECK-NEXT: "type": { 626 // CHECK-NEXT: "qualType": "int" 627 // CHECK-NEXT: }, 628 // CHECK-NEXT: "valueCategory": "prvalue", 629 // CHECK-NEXT: "castKind": "LValueToRValue", 630 // CHECK-NEXT: "isPartOfExplicitCast": true, 631 // CHECK-NEXT: "inner": [ 632 // CHECK-NEXT: { 633 // CHECK-NEXT: "id": "0x{{.*}}", 634 // CHECK-NEXT: "kind": "DeclRefExpr", 635 // CHECK-NEXT: "range": { 636 // CHECK-NEXT: "begin": { 637 // CHECK-NEXT: "offset": {{[0-9]+}}, 638 // CHECK-NEXT: "col": 25, 639 // CHECK-NEXT: "tokLen": 1 640 // CHECK-NEXT: }, 641 // CHECK-NEXT: "end": { 642 // CHECK-NEXT: "offset": {{[0-9]+}}, 643 // CHECK-NEXT: "col": 25, 644 // CHECK-NEXT: "tokLen": 1 645 // CHECK-NEXT: } 646 // CHECK-NEXT: }, 647 // CHECK-NEXT: "type": { 648 // CHECK-NEXT: "qualType": "int" 649 // CHECK-NEXT: }, 650 // CHECK-NEXT: "valueCategory": "lvalue", 651 // CHECK-NEXT: "referencedDecl": { 652 // CHECK-NEXT: "id": "0x{{.*}}", 653 // CHECK-NEXT: "kind": "ParmVarDecl", 654 // CHECK-NEXT: "name": "x", 655 // CHECK-NEXT: "type": { 656 // CHECK-NEXT: "qualType": "int" 657 // CHECK-NEXT: } 658 // CHECK-NEXT: } 659 // CHECK-NEXT: } 660 // CHECK-NEXT: ] 661 // CHECK-NEXT: } 662 // CHECK-NEXT: ] 663 // CHECK-NEXT: } 664 // CHECK-NEXT: ] 665 // CHECK-NEXT: } 666 667 // CHECK: "kind": "CStyleCastExpr", 668 // CHECK-NEXT: "range": { 669 // CHECK-NEXT: "begin": { 670 // CHECK-NEXT: "offset": {{[0-9]+}}, 671 // CHECK-NEXT: "col": 10, 672 // CHECK-NEXT: "tokLen": 1 673 // CHECK-NEXT: }, 674 // CHECK-NEXT: "end": { 675 // CHECK-NEXT: "offset": {{[0-9]+}}, 676 // CHECK-NEXT: "col": 23, 677 // CHECK-NEXT: "tokLen": 1 678 // CHECK-NEXT: } 679 // CHECK-NEXT: }, 680 // CHECK-NEXT: "type": { 681 // CHECK-NEXT: "qualType": "signed char" 682 // CHECK-NEXT: }, 683 // CHECK-NEXT: "valueCategory": "prvalue", 684 // CHECK-NEXT: "castKind": "NoOp", 685 // CHECK-NEXT: "inner": [ 686 // CHECK-NEXT: { 687 // CHECK-NEXT: "id": "0x{{.*}}", 688 // CHECK-NEXT: "kind": "ImplicitCastExpr", 689 // CHECK-NEXT: "range": { 690 // CHECK-NEXT: "begin": { 691 // CHECK-NEXT: "offset": {{[0-9]+}}, 692 // CHECK-NEXT: "col": 23, 693 // CHECK-NEXT: "tokLen": 1 694 // CHECK-NEXT: }, 695 // CHECK-NEXT: "end": { 696 // CHECK-NEXT: "offset": {{[0-9]+}}, 697 // CHECK-NEXT: "col": 23, 698 // CHECK-NEXT: "tokLen": 1 699 // CHECK-NEXT: } 700 // CHECK-NEXT: }, 701 // CHECK-NEXT: "type": { 702 // CHECK-NEXT: "qualType": "signed char" 703 // CHECK-NEXT: }, 704 // CHECK-NEXT: "valueCategory": "prvalue", 705 // CHECK-NEXT: "castKind": "IntegralCast", 706 // CHECK-NEXT: "isPartOfExplicitCast": true, 707 // CHECK-NEXT: "inner": [ 708 // CHECK-NEXT: { 709 // CHECK-NEXT: "id": "0x{{.*}}", 710 // CHECK-NEXT: "kind": "ImplicitCastExpr", 711 // CHECK-NEXT: "range": { 712 // CHECK-NEXT: "begin": { 713 // CHECK-NEXT: "offset": {{[0-9]+}}, 714 // CHECK-NEXT: "col": 23, 715 // CHECK-NEXT: "tokLen": 1 716 // CHECK-NEXT: }, 717 // CHECK-NEXT: "end": { 718 // CHECK-NEXT: "offset": {{[0-9]+}}, 719 // CHECK-NEXT: "col": 23, 720 // CHECK-NEXT: "tokLen": 1 721 // CHECK-NEXT: } 722 // CHECK-NEXT: }, 723 // CHECK-NEXT: "type": { 724 // CHECK-NEXT: "qualType": "int" 725 // CHECK-NEXT: }, 726 // CHECK-NEXT: "valueCategory": "prvalue", 727 // CHECK-NEXT: "castKind": "LValueToRValue", 728 // CHECK-NEXT: "isPartOfExplicitCast": true, 729 // CHECK-NEXT: "inner": [ 730 // CHECK-NEXT: { 731 // CHECK-NEXT: "id": "0x{{.*}}", 732 // CHECK-NEXT: "kind": "DeclRefExpr", 733 // CHECK-NEXT: "range": { 734 // CHECK-NEXT: "begin": { 735 // CHECK-NEXT: "offset": {{[0-9]+}}, 736 // CHECK-NEXT: "col": 23, 737 // CHECK-NEXT: "tokLen": 1 738 // CHECK-NEXT: }, 739 // CHECK-NEXT: "end": { 740 // CHECK-NEXT: "offset": {{[0-9]+}}, 741 // CHECK-NEXT: "col": 23, 742 // CHECK-NEXT: "tokLen": 1 743 // CHECK-NEXT: } 744 // CHECK-NEXT: }, 745 // CHECK-NEXT: "type": { 746 // CHECK-NEXT: "qualType": "int" 747 // CHECK-NEXT: }, 748 // CHECK-NEXT: "valueCategory": "lvalue", 749 // CHECK-NEXT: "referencedDecl": { 750 // CHECK-NEXT: "id": "0x{{.*}}", 751 // CHECK-NEXT: "kind": "ParmVarDecl", 752 // CHECK-NEXT: "name": "x", 753 // CHECK-NEXT: "type": { 754 // CHECK-NEXT: "qualType": "int" 755 // CHECK-NEXT: } 756 // CHECK-NEXT: } 757 // CHECK-NEXT: } 758 // CHECK-NEXT: ] 759 // CHECK-NEXT: } 760 // CHECK-NEXT: ] 761 // CHECK-NEXT: } 762 // CHECK-NEXT: ] 763 // CHECK-NEXT: } 764 765 // CHECK: "kind": "CXXStaticCastExpr", 766 // CHECK-NEXT: "range": { 767 // CHECK-NEXT: "begin": { 768 // CHECK-NEXT: "offset": {{[0-9]+}}, 769 // CHECK-NEXT: "col": 10, 770 // CHECK-NEXT: "tokLen": 11 771 // CHECK-NEXT: }, 772 // CHECK-NEXT: "end": { 773 // CHECK-NEXT: "offset": {{[0-9]+}}, 774 // CHECK-NEXT: "col": 38, 775 // CHECK-NEXT: "tokLen": 1 776 // CHECK-NEXT: } 777 // CHECK-NEXT: }, 778 // CHECK-NEXT: "type": { 779 // CHECK-NEXT: "qualType": "unsigned char" 780 // CHECK-NEXT: }, 781 // CHECK-NEXT: "valueCategory": "prvalue", 782 // CHECK-NEXT: "castKind": "NoOp", 783 // CHECK-NEXT: "inner": [ 784 // CHECK-NEXT: { 785 // CHECK-NEXT: "id": "0x{{.*}}", 786 // CHECK-NEXT: "kind": "ImplicitCastExpr", 787 // CHECK-NEXT: "range": { 788 // CHECK-NEXT: "begin": { 789 // CHECK-NEXT: "offset": {{[0-9]+}}, 790 // CHECK-NEXT: "col": 37, 791 // CHECK-NEXT: "tokLen": 1 792 // CHECK-NEXT: }, 793 // CHECK-NEXT: "end": { 794 // CHECK-NEXT: "offset": {{[0-9]+}}, 795 // CHECK-NEXT: "col": 37, 796 // CHECK-NEXT: "tokLen": 1 797 // CHECK-NEXT: } 798 // CHECK-NEXT: }, 799 // CHECK-NEXT: "type": { 800 // CHECK-NEXT: "qualType": "unsigned char" 801 // CHECK-NEXT: }, 802 // CHECK-NEXT: "valueCategory": "prvalue", 803 // CHECK-NEXT: "castKind": "IntegralCast", 804 // CHECK-NEXT: "isPartOfExplicitCast": true, 805 // CHECK-NEXT: "inner": [ 806 // CHECK-NEXT: { 807 // CHECK-NEXT: "id": "0x{{.*}}", 808 // CHECK-NEXT: "kind": "ImplicitCastExpr", 809 // CHECK-NEXT: "range": { 810 // CHECK-NEXT: "begin": { 811 // CHECK-NEXT: "offset": {{[0-9]+}}, 812 // CHECK-NEXT: "col": 37, 813 // CHECK-NEXT: "tokLen": 1 814 // CHECK-NEXT: }, 815 // CHECK-NEXT: "end": { 816 // CHECK-NEXT: "offset": {{[0-9]+}}, 817 // CHECK-NEXT: "col": 37, 818 // CHECK-NEXT: "tokLen": 1 819 // CHECK-NEXT: } 820 // CHECK-NEXT: }, 821 // CHECK-NEXT: "type": { 822 // CHECK-NEXT: "qualType": "unsigned int" 823 // CHECK-NEXT: }, 824 // CHECK-NEXT: "valueCategory": "prvalue", 825 // CHECK-NEXT: "castKind": "LValueToRValue", 826 // CHECK-NEXT: "isPartOfExplicitCast": true, 827 // CHECK-NEXT: "inner": [ 828 // CHECK-NEXT: { 829 // CHECK-NEXT: "id": "0x{{.*}}", 830 // CHECK-NEXT: "kind": "DeclRefExpr", 831 // CHECK-NEXT: "range": { 832 // CHECK-NEXT: "begin": { 833 // CHECK-NEXT: "offset": {{[0-9]+}}, 834 // CHECK-NEXT: "col": 37, 835 // CHECK-NEXT: "tokLen": 1 836 // CHECK-NEXT: }, 837 // CHECK-NEXT: "end": { 838 // CHECK-NEXT: "offset": {{[0-9]+}}, 839 // CHECK-NEXT: "col": 37, 840 // CHECK-NEXT: "tokLen": 1 841 // CHECK-NEXT: } 842 // CHECK-NEXT: }, 843 // CHECK-NEXT: "type": { 844 // CHECK-NEXT: "qualType": "unsigned int" 845 // CHECK-NEXT: }, 846 // CHECK-NEXT: "valueCategory": "lvalue", 847 // CHECK-NEXT: "referencedDecl": { 848 // CHECK-NEXT: "id": "0x{{.*}}", 849 // CHECK-NEXT: "kind": "ParmVarDecl", 850 // CHECK-NEXT: "name": "x", 851 // CHECK-NEXT: "type": { 852 // CHECK-NEXT: "qualType": "unsigned int" 853 // CHECK-NEXT: } 854 // CHECK-NEXT: } 855 // CHECK-NEXT: } 856 // CHECK-NEXT: ] 857 // CHECK-NEXT: } 858 // CHECK-NEXT: ] 859 // CHECK-NEXT: } 860 // CHECK-NEXT: ] 861 // CHECK-NEXT: } 862 863 // CHECK: "kind": "CXXStaticCastExpr", 864 // CHECK-NEXT: "range": { 865 // CHECK-NEXT: "begin": { 866 // CHECK-NEXT: "offset": {{[0-9]+}}, 867 // CHECK-NEXT: "col": 10, 868 // CHECK-NEXT: "tokLen": 11 869 // CHECK-NEXT: }, 870 // CHECK-NEXT: "end": { 871 // CHECK-NEXT: "offset": {{[0-9]+}}, 872 // CHECK-NEXT: "col": 36, 873 // CHECK-NEXT: "tokLen": 1 874 // CHECK-NEXT: } 875 // CHECK-NEXT: }, 876 // CHECK-NEXT: "type": { 877 // CHECK-NEXT: "qualType": "signed char" 878 // CHECK-NEXT: }, 879 // CHECK-NEXT: "valueCategory": "prvalue", 880 // CHECK-NEXT: "castKind": "NoOp", 881 // CHECK-NEXT: "inner": [ 882 // CHECK-NEXT: { 883 // CHECK-NEXT: "id": "0x{{.*}}", 884 // CHECK-NEXT: "kind": "ImplicitCastExpr", 885 // CHECK-NEXT: "range": { 886 // CHECK-NEXT: "begin": { 887 // CHECK-NEXT: "offset": {{[0-9]+}}, 888 // CHECK-NEXT: "col": 35, 889 // CHECK-NEXT: "tokLen": 1 890 // CHECK-NEXT: }, 891 // CHECK-NEXT: "end": { 892 // CHECK-NEXT: "offset": {{[0-9]+}}, 893 // CHECK-NEXT: "col": 35, 894 // CHECK-NEXT: "tokLen": 1 895 // CHECK-NEXT: } 896 // CHECK-NEXT: }, 897 // CHECK-NEXT: "type": { 898 // CHECK-NEXT: "qualType": "signed char" 899 // CHECK-NEXT: }, 900 // CHECK-NEXT: "valueCategory": "prvalue", 901 // CHECK-NEXT: "castKind": "IntegralCast", 902 // CHECK-NEXT: "isPartOfExplicitCast": true, 903 // CHECK-NEXT: "inner": [ 904 // CHECK-NEXT: { 905 // CHECK-NEXT: "id": "0x{{.*}}", 906 // CHECK-NEXT: "kind": "ImplicitCastExpr", 907 // CHECK-NEXT: "range": { 908 // CHECK-NEXT: "begin": { 909 // CHECK-NEXT: "offset": {{[0-9]+}}, 910 // CHECK-NEXT: "col": 35, 911 // CHECK-NEXT: "tokLen": 1 912 // CHECK-NEXT: }, 913 // CHECK-NEXT: "end": { 914 // CHECK-NEXT: "offset": {{[0-9]+}}, 915 // CHECK-NEXT: "col": 35, 916 // CHECK-NEXT: "tokLen": 1 917 // CHECK-NEXT: } 918 // CHECK-NEXT: }, 919 // CHECK-NEXT: "type": { 920 // CHECK-NEXT: "qualType": "unsigned int" 921 // CHECK-NEXT: }, 922 // CHECK-NEXT: "valueCategory": "prvalue", 923 // CHECK-NEXT: "castKind": "LValueToRValue", 924 // CHECK-NEXT: "isPartOfExplicitCast": true, 925 // CHECK-NEXT: "inner": [ 926 // CHECK-NEXT: { 927 // CHECK-NEXT: "id": "0x{{.*}}", 928 // CHECK-NEXT: "kind": "DeclRefExpr", 929 // CHECK-NEXT: "range": { 930 // CHECK-NEXT: "begin": { 931 // CHECK-NEXT: "offset": {{[0-9]+}}, 932 // CHECK-NEXT: "col": 35, 933 // CHECK-NEXT: "tokLen": 1 934 // CHECK-NEXT: }, 935 // CHECK-NEXT: "end": { 936 // CHECK-NEXT: "offset": {{[0-9]+}}, 937 // CHECK-NEXT: "col": 35, 938 // CHECK-NEXT: "tokLen": 1 939 // CHECK-NEXT: } 940 // CHECK-NEXT: }, 941 // CHECK-NEXT: "type": { 942 // CHECK-NEXT: "qualType": "unsigned int" 943 // CHECK-NEXT: }, 944 // CHECK-NEXT: "valueCategory": "lvalue", 945 // CHECK-NEXT: "referencedDecl": { 946 // CHECK-NEXT: "id": "0x{{.*}}", 947 // CHECK-NEXT: "kind": "ParmVarDecl", 948 // CHECK-NEXT: "name": "x", 949 // CHECK-NEXT: "type": { 950 // CHECK-NEXT: "qualType": "unsigned int" 951 // CHECK-NEXT: } 952 // CHECK-NEXT: } 953 // CHECK-NEXT: } 954 // CHECK-NEXT: ] 955 // CHECK-NEXT: } 956 // CHECK-NEXT: ] 957 // CHECK-NEXT: } 958 // CHECK-NEXT: ] 959 // CHECK-NEXT: } 960 961 // CHECK: "kind": "CXXStaticCastExpr", 962 // CHECK-NEXT: "range": { 963 // CHECK-NEXT: "begin": { 964 // CHECK-NEXT: "offset": {{[0-9]+}}, 965 // CHECK-NEXT: "col": 10, 966 // CHECK-NEXT: "tokLen": 11 967 // CHECK-NEXT: }, 968 // CHECK-NEXT: "end": { 969 // CHECK-NEXT: "offset": {{[0-9]+}}, 970 // CHECK-NEXT: "col": 38, 971 // CHECK-NEXT: "tokLen": 1 972 // CHECK-NEXT: } 973 // CHECK-NEXT: }, 974 // CHECK-NEXT: "type": { 975 // CHECK-NEXT: "qualType": "unsigned char" 976 // CHECK-NEXT: }, 977 // CHECK-NEXT: "valueCategory": "prvalue", 978 // CHECK-NEXT: "castKind": "NoOp", 979 // CHECK-NEXT: "inner": [ 980 // CHECK-NEXT: { 981 // CHECK-NEXT: "id": "0x{{.*}}", 982 // CHECK-NEXT: "kind": "ImplicitCastExpr", 983 // CHECK-NEXT: "range": { 984 // CHECK-NEXT: "begin": { 985 // CHECK-NEXT: "offset": {{[0-9]+}}, 986 // CHECK-NEXT: "col": 37, 987 // CHECK-NEXT: "tokLen": 1 988 // CHECK-NEXT: }, 989 // CHECK-NEXT: "end": { 990 // CHECK-NEXT: "offset": {{[0-9]+}}, 991 // CHECK-NEXT: "col": 37, 992 // CHECK-NEXT: "tokLen": 1 993 // CHECK-NEXT: } 994 // CHECK-NEXT: }, 995 // CHECK-NEXT: "type": { 996 // CHECK-NEXT: "qualType": "unsigned char" 997 // CHECK-NEXT: }, 998 // CHECK-NEXT: "valueCategory": "prvalue", 999 // CHECK-NEXT: "castKind": "IntegralCast", 1000 // CHECK-NEXT: "isPartOfExplicitCast": true, 1001 // CHECK-NEXT: "inner": [ 1002 // CHECK-NEXT: { 1003 // CHECK-NEXT: "id": "0x{{.*}}", 1004 // CHECK-NEXT: "kind": "ImplicitCastExpr", 1005 // CHECK-NEXT: "range": { 1006 // CHECK-NEXT: "begin": { 1007 // CHECK-NEXT: "offset": {{[0-9]+}}, 1008 // CHECK-NEXT: "col": 37, 1009 // CHECK-NEXT: "tokLen": 1 1010 // CHECK-NEXT: }, 1011 // CHECK-NEXT: "end": { 1012 // CHECK-NEXT: "offset": {{[0-9]+}}, 1013 // CHECK-NEXT: "col": 37, 1014 // CHECK-NEXT: "tokLen": 1 1015 // CHECK-NEXT: } 1016 // CHECK-NEXT: }, 1017 // CHECK-NEXT: "type": { 1018 // CHECK-NEXT: "qualType": "int" 1019 // CHECK-NEXT: }, 1020 // CHECK-NEXT: "valueCategory": "prvalue", 1021 // CHECK-NEXT: "castKind": "LValueToRValue", 1022 // CHECK-NEXT: "isPartOfExplicitCast": true, 1023 // CHECK-NEXT: "inner": [ 1024 // CHECK-NEXT: { 1025 // CHECK-NEXT: "id": "0x{{.*}}", 1026 // CHECK-NEXT: "kind": "DeclRefExpr", 1027 // CHECK-NEXT: "range": { 1028 // CHECK-NEXT: "begin": { 1029 // CHECK-NEXT: "offset": {{[0-9]+}}, 1030 // CHECK-NEXT: "col": 37, 1031 // CHECK-NEXT: "tokLen": 1 1032 // CHECK-NEXT: }, 1033 // CHECK-NEXT: "end": { 1034 // CHECK-NEXT: "offset": {{[0-9]+}}, 1035 // CHECK-NEXT: "col": 37, 1036 // CHECK-NEXT: "tokLen": 1 1037 // CHECK-NEXT: } 1038 // CHECK-NEXT: }, 1039 // CHECK-NEXT: "type": { 1040 // CHECK-NEXT: "qualType": "int" 1041 // CHECK-NEXT: }, 1042 // CHECK-NEXT: "valueCategory": "lvalue", 1043 // CHECK-NEXT: "referencedDecl": { 1044 // CHECK-NEXT: "id": "0x{{.*}}", 1045 // CHECK-NEXT: "kind": "ParmVarDecl", 1046 // CHECK-NEXT: "name": "x", 1047 // CHECK-NEXT: "type": { 1048 // CHECK-NEXT: "qualType": "int" 1049 // CHECK-NEXT: } 1050 // CHECK-NEXT: } 1051 // CHECK-NEXT: } 1052 // CHECK-NEXT: ] 1053 // CHECK-NEXT: } 1054 // CHECK-NEXT: ] 1055 // CHECK-NEXT: } 1056 // CHECK-NEXT: ] 1057 // CHECK-NEXT: } 1058 1059 // CHECK: "kind": "CXXStaticCastExpr", 1060 // CHECK-NEXT: "range": { 1061 // CHECK-NEXT: "begin": { 1062 // CHECK-NEXT: "offset": {{[0-9]+}}, 1063 // CHECK-NEXT: "col": 10, 1064 // CHECK-NEXT: "tokLen": 11 1065 // CHECK-NEXT: }, 1066 // CHECK-NEXT: "end": { 1067 // CHECK-NEXT: "offset": {{[0-9]+}}, 1068 // CHECK-NEXT: "col": 36, 1069 // CHECK-NEXT: "tokLen": 1 1070 // CHECK-NEXT: } 1071 // CHECK-NEXT: }, 1072 // CHECK-NEXT: "type": { 1073 // CHECK-NEXT: "qualType": "signed char" 1074 // CHECK-NEXT: }, 1075 // CHECK-NEXT: "valueCategory": "prvalue", 1076 // CHECK-NEXT: "castKind": "NoOp", 1077 // CHECK-NEXT: "inner": [ 1078 // CHECK-NEXT: { 1079 // CHECK-NEXT: "id": "0x{{.*}}", 1080 // CHECK-NEXT: "kind": "ImplicitCastExpr", 1081 // CHECK-NEXT: "range": { 1082 // CHECK-NEXT: "begin": { 1083 // CHECK-NEXT: "offset": {{[0-9]+}}, 1084 // CHECK-NEXT: "col": 35, 1085 // CHECK-NEXT: "tokLen": 1 1086 // CHECK-NEXT: }, 1087 // CHECK-NEXT: "end": { 1088 // CHECK-NEXT: "offset": {{[0-9]+}}, 1089 // CHECK-NEXT: "col": 35, 1090 // CHECK-NEXT: "tokLen": 1 1091 // CHECK-NEXT: } 1092 // CHECK-NEXT: }, 1093 // CHECK-NEXT: "type": { 1094 // CHECK-NEXT: "qualType": "signed char" 1095 // CHECK-NEXT: }, 1096 // CHECK-NEXT: "valueCategory": "prvalue", 1097 // CHECK-NEXT: "castKind": "IntegralCast", 1098 // CHECK-NEXT: "isPartOfExplicitCast": true, 1099 // CHECK-NEXT: "inner": [ 1100 // CHECK-NEXT: { 1101 // CHECK-NEXT: "id": "0x{{.*}}", 1102 // CHECK-NEXT: "kind": "ImplicitCastExpr", 1103 // CHECK-NEXT: "range": { 1104 // CHECK-NEXT: "begin": { 1105 // CHECK-NEXT: "offset": {{[0-9]+}}, 1106 // CHECK-NEXT: "col": 35, 1107 // CHECK-NEXT: "tokLen": 1 1108 // CHECK-NEXT: }, 1109 // CHECK-NEXT: "end": { 1110 // CHECK-NEXT: "offset": {{[0-9]+}}, 1111 // CHECK-NEXT: "col": 35, 1112 // CHECK-NEXT: "tokLen": 1 1113 // CHECK-NEXT: } 1114 // CHECK-NEXT: }, 1115 // CHECK-NEXT: "type": { 1116 // CHECK-NEXT: "qualType": "int" 1117 // CHECK-NEXT: }, 1118 // CHECK-NEXT: "valueCategory": "prvalue", 1119 // CHECK-NEXT: "castKind": "LValueToRValue", 1120 // CHECK-NEXT: "isPartOfExplicitCast": true, 1121 // CHECK-NEXT: "inner": [ 1122 // CHECK-NEXT: { 1123 // CHECK-NEXT: "id": "0x{{.*}}", 1124 // CHECK-NEXT: "kind": "DeclRefExpr", 1125 // CHECK-NEXT: "range": { 1126 // CHECK-NEXT: "begin": { 1127 // CHECK-NEXT: "offset": {{[0-9]+}}, 1128 // CHECK-NEXT: "col": 35, 1129 // CHECK-NEXT: "tokLen": 1 1130 // CHECK-NEXT: }, 1131 // CHECK-NEXT: "end": { 1132 // CHECK-NEXT: "offset": {{[0-9]+}}, 1133 // CHECK-NEXT: "col": 35, 1134 // CHECK-NEXT: "tokLen": 1 1135 // CHECK-NEXT: } 1136 // CHECK-NEXT: }, 1137 // CHECK-NEXT: "type": { 1138 // CHECK-NEXT: "qualType": "int" 1139 // CHECK-NEXT: }, 1140 // CHECK-NEXT: "valueCategory": "lvalue", 1141 // CHECK-NEXT: "referencedDecl": { 1142 // CHECK-NEXT: "id": "0x{{.*}}", 1143 // CHECK-NEXT: "kind": "ParmVarDecl", 1144 // CHECK-NEXT: "name": "x", 1145 // CHECK-NEXT: "type": { 1146 // CHECK-NEXT: "qualType": "int" 1147 // CHECK-NEXT: } 1148 // CHECK-NEXT: } 1149 // CHECK-NEXT: } 1150 // CHECK-NEXT: ] 1151 // CHECK-NEXT: } 1152 // CHECK-NEXT: ] 1153 // CHECK-NEXT: } 1154 // CHECK-NEXT: ] 1155 // CHECK-NEXT: } 1156 1157 // CHECK: "kind": "CXXFunctionalCastExpr", 1158 // CHECK-NEXT: "range": { 1159 // CHECK-NEXT: "begin": { 1160 // CHECK-NEXT: "offset": {{[0-9]+}}, 1161 // CHECK-NEXT: "col": 10, 1162 // CHECK-NEXT: "tokLen": 12 1163 // CHECK-NEXT: }, 1164 // CHECK-NEXT: "end": { 1165 // CHECK-NEXT: "offset": {{[0-9]+}}, 1166 // CHECK-NEXT: "col": 24, 1167 // CHECK-NEXT: "tokLen": 1 1168 // CHECK-NEXT: } 1169 // CHECK-NEXT: }, 1170 // CHECK-NEXT: "type": { 1171 // CHECK-NEXT: "desugaredQualType": "unsigned char", 1172 // CHECK-NEXT: "qualType": "UnsignedChar", 1173 // CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}" 1174 // CHECK-NEXT: }, 1175 // CHECK-NEXT: "valueCategory": "prvalue", 1176 // CHECK-NEXT: "castKind": "NoOp", 1177 // CHECK-NEXT: "inner": [ 1178 // CHECK-NEXT: { 1179 // CHECK-NEXT: "id": "0x{{.*}}", 1180 // CHECK-NEXT: "kind": "ImplicitCastExpr", 1181 // CHECK-NEXT: "range": { 1182 // CHECK-NEXT: "begin": { 1183 // CHECK-NEXT: "offset": {{[0-9]+}}, 1184 // CHECK-NEXT: "col": 23, 1185 // CHECK-NEXT: "tokLen": 1 1186 // CHECK-NEXT: }, 1187 // CHECK-NEXT: "end": { 1188 // CHECK-NEXT: "offset": {{[0-9]+}}, 1189 // CHECK-NEXT: "col": 23, 1190 // CHECK-NEXT: "tokLen": 1 1191 // CHECK-NEXT: } 1192 // CHECK-NEXT: }, 1193 // CHECK-NEXT: "type": { 1194 // CHECK-NEXT: "desugaredQualType": "unsigned char", 1195 // CHECK-NEXT: "qualType": "UnsignedChar", 1196 // CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}" 1197 // CHECK-NEXT: }, 1198 // CHECK-NEXT: "valueCategory": "prvalue", 1199 // CHECK-NEXT: "castKind": "IntegralCast", 1200 // CHECK-NEXT: "isPartOfExplicitCast": true, 1201 // CHECK-NEXT: "inner": [ 1202 // CHECK-NEXT: { 1203 // CHECK-NEXT: "id": "0x{{.*}}", 1204 // CHECK-NEXT: "kind": "ImplicitCastExpr", 1205 // CHECK-NEXT: "range": { 1206 // CHECK-NEXT: "begin": { 1207 // CHECK-NEXT: "offset": {{[0-9]+}}, 1208 // CHECK-NEXT: "col": 23, 1209 // CHECK-NEXT: "tokLen": 1 1210 // CHECK-NEXT: }, 1211 // CHECK-NEXT: "end": { 1212 // CHECK-NEXT: "offset": {{[0-9]+}}, 1213 // CHECK-NEXT: "col": 23, 1214 // CHECK-NEXT: "tokLen": 1 1215 // CHECK-NEXT: } 1216 // CHECK-NEXT: }, 1217 // CHECK-NEXT: "type": { 1218 // CHECK-NEXT: "desugaredQualType": "unsigned int", 1219 // CHECK-NEXT: "qualType": "UnsignedInt", 1220 // CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}" 1221 // CHECK-NEXT: }, 1222 // CHECK-NEXT: "valueCategory": "prvalue", 1223 // CHECK-NEXT: "castKind": "LValueToRValue", 1224 // CHECK-NEXT: "isPartOfExplicitCast": true, 1225 // CHECK-NEXT: "inner": [ 1226 // CHECK-NEXT: { 1227 // CHECK-NEXT: "id": "0x{{.*}}", 1228 // CHECK-NEXT: "kind": "DeclRefExpr", 1229 // CHECK-NEXT: "range": { 1230 // CHECK-NEXT: "begin": { 1231 // CHECK-NEXT: "offset": {{[0-9]+}}, 1232 // CHECK-NEXT: "col": 23, 1233 // CHECK-NEXT: "tokLen": 1 1234 // CHECK-NEXT: }, 1235 // CHECK-NEXT: "end": { 1236 // CHECK-NEXT: "offset": {{[0-9]+}}, 1237 // CHECK-NEXT: "col": 23, 1238 // CHECK-NEXT: "tokLen": 1 1239 // CHECK-NEXT: } 1240 // CHECK-NEXT: }, 1241 // CHECK-NEXT: "type": { 1242 // CHECK-NEXT: "desugaredQualType": "unsigned int", 1243 // CHECK-NEXT: "qualType": "UnsignedInt", 1244 // CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}" 1245 // CHECK-NEXT: }, 1246 // CHECK-NEXT: "valueCategory": "lvalue", 1247 // CHECK-NEXT: "referencedDecl": { 1248 // CHECK-NEXT: "id": "0x{{.*}}", 1249 // CHECK-NEXT: "kind": "ParmVarDecl", 1250 // CHECK-NEXT: "name": "x", 1251 // CHECK-NEXT: "type": { 1252 // CHECK-NEXT: "desugaredQualType": "unsigned int", 1253 // CHECK-NEXT: "qualType": "UnsignedInt", 1254 // CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}" 1255 // CHECK-NEXT: } 1256 // CHECK-NEXT: } 1257 // CHECK-NEXT: } 1258 // CHECK-NEXT: ] 1259 // CHECK-NEXT: } 1260 // CHECK-NEXT: ] 1261 // CHECK-NEXT: } 1262 // CHECK-NEXT: ] 1263 // CHECK-NEXT: } 1264 1265 // CHECK: "kind": "CXXFunctionalCastExpr", 1266 // CHECK-NEXT: "range": { 1267 // CHECK-NEXT: "begin": { 1268 // CHECK-NEXT: "offset": {{[0-9]+}}, 1269 // CHECK-NEXT: "col": 10, 1270 // CHECK-NEXT: "tokLen": 10 1271 // CHECK-NEXT: }, 1272 // CHECK-NEXT: "end": { 1273 // CHECK-NEXT: "offset": {{[0-9]+}}, 1274 // CHECK-NEXT: "col": 22, 1275 // CHECK-NEXT: "tokLen": 1 1276 // CHECK-NEXT: } 1277 // CHECK-NEXT: }, 1278 // CHECK-NEXT: "type": { 1279 // CHECK-NEXT: "desugaredQualType": "signed char", 1280 // CHECK-NEXT: "qualType": "SignedChar", 1281 // CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}" 1282 // CHECK-NEXT: }, 1283 // CHECK-NEXT: "valueCategory": "prvalue", 1284 // CHECK-NEXT: "castKind": "NoOp", 1285 // CHECK-NEXT: "inner": [ 1286 // CHECK-NEXT: { 1287 // CHECK-NEXT: "id": "0x{{.*}}", 1288 // CHECK-NEXT: "kind": "ImplicitCastExpr", 1289 // CHECK-NEXT: "range": { 1290 // CHECK-NEXT: "begin": { 1291 // CHECK-NEXT: "offset": {{[0-9]+}}, 1292 // CHECK-NEXT: "col": 21, 1293 // CHECK-NEXT: "tokLen": 1 1294 // CHECK-NEXT: }, 1295 // CHECK-NEXT: "end": { 1296 // CHECK-NEXT: "offset": {{[0-9]+}}, 1297 // CHECK-NEXT: "col": 21, 1298 // CHECK-NEXT: "tokLen": 1 1299 // CHECK-NEXT: } 1300 // CHECK-NEXT: }, 1301 // CHECK-NEXT: "type": { 1302 // CHECK-NEXT: "desugaredQualType": "signed char", 1303 // CHECK-NEXT: "qualType": "SignedChar", 1304 // CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}" 1305 // CHECK-NEXT: }, 1306 // CHECK-NEXT: "valueCategory": "prvalue", 1307 // CHECK-NEXT: "castKind": "IntegralCast", 1308 // CHECK-NEXT: "isPartOfExplicitCast": true, 1309 // CHECK-NEXT: "inner": [ 1310 // CHECK-NEXT: { 1311 // CHECK-NEXT: "id": "0x{{.*}}", 1312 // CHECK-NEXT: "kind": "ImplicitCastExpr", 1313 // CHECK-NEXT: "range": { 1314 // CHECK-NEXT: "begin": { 1315 // CHECK-NEXT: "offset": {{[0-9]+}}, 1316 // CHECK-NEXT: "col": 21, 1317 // CHECK-NEXT: "tokLen": 1 1318 // CHECK-NEXT: }, 1319 // CHECK-NEXT: "end": { 1320 // CHECK-NEXT: "offset": {{[0-9]+}}, 1321 // CHECK-NEXT: "col": 21, 1322 // CHECK-NEXT: "tokLen": 1 1323 // CHECK-NEXT: } 1324 // CHECK-NEXT: }, 1325 // CHECK-NEXT: "type": { 1326 // CHECK-NEXT: "desugaredQualType": "unsigned int", 1327 // CHECK-NEXT: "qualType": "UnsignedInt", 1328 // CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}" 1329 // CHECK-NEXT: }, 1330 // CHECK-NEXT: "valueCategory": "prvalue", 1331 // CHECK-NEXT: "castKind": "LValueToRValue", 1332 // CHECK-NEXT: "isPartOfExplicitCast": true, 1333 // CHECK-NEXT: "inner": [ 1334 // CHECK-NEXT: { 1335 // CHECK-NEXT: "id": "0x{{.*}}", 1336 // CHECK-NEXT: "kind": "DeclRefExpr", 1337 // CHECK-NEXT: "range": { 1338 // CHECK-NEXT: "begin": { 1339 // CHECK-NEXT: "offset": {{[0-9]+}}, 1340 // CHECK-NEXT: "col": 21, 1341 // CHECK-NEXT: "tokLen": 1 1342 // CHECK-NEXT: }, 1343 // CHECK-NEXT: "end": { 1344 // CHECK-NEXT: "offset": {{[0-9]+}}, 1345 // CHECK-NEXT: "col": 21, 1346 // CHECK-NEXT: "tokLen": 1 1347 // CHECK-NEXT: } 1348 // CHECK-NEXT: }, 1349 // CHECK-NEXT: "type": { 1350 // CHECK-NEXT: "desugaredQualType": "unsigned int", 1351 // CHECK-NEXT: "qualType": "UnsignedInt", 1352 // CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}" 1353 // CHECK-NEXT: }, 1354 // CHECK-NEXT: "valueCategory": "lvalue", 1355 // CHECK-NEXT: "referencedDecl": { 1356 // CHECK-NEXT: "id": "0x{{.*}}", 1357 // CHECK-NEXT: "kind": "ParmVarDecl", 1358 // CHECK-NEXT: "name": "x", 1359 // CHECK-NEXT: "type": { 1360 // CHECK-NEXT: "desugaredQualType": "unsigned int", 1361 // CHECK-NEXT: "qualType": "UnsignedInt", 1362 // CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}" 1363 // CHECK-NEXT: } 1364 // CHECK-NEXT: } 1365 // CHECK-NEXT: } 1366 // CHECK-NEXT: ] 1367 // CHECK-NEXT: } 1368 // CHECK-NEXT: ] 1369 // CHECK-NEXT: } 1370 // CHECK-NEXT: ] 1371 // CHECK-NEXT: } 1372 1373 // CHECK: "kind": "CXXFunctionalCastExpr", 1374 // CHECK-NEXT: "range": { 1375 // CHECK-NEXT: "begin": { 1376 // CHECK-NEXT: "offset": {{[0-9]+}}, 1377 // CHECK-NEXT: "col": 10, 1378 // CHECK-NEXT: "tokLen": 12 1379 // CHECK-NEXT: }, 1380 // CHECK-NEXT: "end": { 1381 // CHECK-NEXT: "offset": {{[0-9]+}}, 1382 // CHECK-NEXT: "col": 24, 1383 // CHECK-NEXT: "tokLen": 1 1384 // CHECK-NEXT: } 1385 // CHECK-NEXT: }, 1386 // CHECK-NEXT: "type": { 1387 // CHECK-NEXT: "desugaredQualType": "unsigned char", 1388 // CHECK-NEXT: "qualType": "UnsignedChar", 1389 // CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}" 1390 // CHECK-NEXT: }, 1391 // CHECK-NEXT: "valueCategory": "prvalue", 1392 // CHECK-NEXT: "castKind": "NoOp", 1393 // CHECK-NEXT: "inner": [ 1394 // CHECK-NEXT: { 1395 // CHECK-NEXT: "id": "0x{{.*}}", 1396 // CHECK-NEXT: "kind": "ImplicitCastExpr", 1397 // CHECK-NEXT: "range": { 1398 // CHECK-NEXT: "begin": { 1399 // CHECK-NEXT: "offset": {{[0-9]+}}, 1400 // CHECK-NEXT: "col": 23, 1401 // CHECK-NEXT: "tokLen": 1 1402 // CHECK-NEXT: }, 1403 // CHECK-NEXT: "end": { 1404 // CHECK-NEXT: "offset": {{[0-9]+}}, 1405 // CHECK-NEXT: "col": 23, 1406 // CHECK-NEXT: "tokLen": 1 1407 // CHECK-NEXT: } 1408 // CHECK-NEXT: }, 1409 // CHECK-NEXT: "type": { 1410 // CHECK-NEXT: "desugaredQualType": "unsigned char", 1411 // CHECK-NEXT: "qualType": "UnsignedChar", 1412 // CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}" 1413 // CHECK-NEXT: }, 1414 // CHECK-NEXT: "valueCategory": "prvalue", 1415 // CHECK-NEXT: "castKind": "IntegralCast", 1416 // CHECK-NEXT: "isPartOfExplicitCast": true, 1417 // CHECK-NEXT: "inner": [ 1418 // CHECK-NEXT: { 1419 // CHECK-NEXT: "id": "0x{{.*}}", 1420 // CHECK-NEXT: "kind": "ImplicitCastExpr", 1421 // CHECK-NEXT: "range": { 1422 // CHECK-NEXT: "begin": { 1423 // CHECK-NEXT: "offset": {{[0-9]+}}, 1424 // CHECK-NEXT: "col": 23, 1425 // CHECK-NEXT: "tokLen": 1 1426 // CHECK-NEXT: }, 1427 // CHECK-NEXT: "end": { 1428 // CHECK-NEXT: "offset": {{[0-9]+}}, 1429 // CHECK-NEXT: "col": 23, 1430 // CHECK-NEXT: "tokLen": 1 1431 // CHECK-NEXT: } 1432 // CHECK-NEXT: }, 1433 // CHECK-NEXT: "type": { 1434 // CHECK-NEXT: "desugaredQualType": "int", 1435 // CHECK-NEXT: "qualType": "SignedInt", 1436 // CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}" 1437 // CHECK-NEXT: }, 1438 // CHECK-NEXT: "valueCategory": "prvalue", 1439 // CHECK-NEXT: "castKind": "LValueToRValue", 1440 // CHECK-NEXT: "isPartOfExplicitCast": true, 1441 // CHECK-NEXT: "inner": [ 1442 // CHECK-NEXT: { 1443 // CHECK-NEXT: "id": "0x{{.*}}", 1444 // CHECK-NEXT: "kind": "DeclRefExpr", 1445 // CHECK-NEXT: "range": { 1446 // CHECK-NEXT: "begin": { 1447 // CHECK-NEXT: "offset": {{[0-9]+}}, 1448 // CHECK-NEXT: "col": 23, 1449 // CHECK-NEXT: "tokLen": 1 1450 // CHECK-NEXT: }, 1451 // CHECK-NEXT: "end": { 1452 // CHECK-NEXT: "offset": {{[0-9]+}}, 1453 // CHECK-NEXT: "col": 23, 1454 // CHECK-NEXT: "tokLen": 1 1455 // CHECK-NEXT: } 1456 // CHECK-NEXT: }, 1457 // CHECK-NEXT: "type": { 1458 // CHECK-NEXT: "desugaredQualType": "int", 1459 // CHECK-NEXT: "qualType": "SignedInt", 1460 // CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}" 1461 // CHECK-NEXT: }, 1462 // CHECK-NEXT: "valueCategory": "lvalue", 1463 // CHECK-NEXT: "referencedDecl": { 1464 // CHECK-NEXT: "id": "0x{{.*}}", 1465 // CHECK-NEXT: "kind": "ParmVarDecl", 1466 // CHECK-NEXT: "name": "x", 1467 // CHECK-NEXT: "type": { 1468 // CHECK-NEXT: "desugaredQualType": "int", 1469 // CHECK-NEXT: "qualType": "SignedInt", 1470 // CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}" 1471 // CHECK-NEXT: } 1472 // CHECK-NEXT: } 1473 // CHECK-NEXT: } 1474 // CHECK-NEXT: ] 1475 // CHECK-NEXT: } 1476 // CHECK-NEXT: ] 1477 // CHECK-NEXT: } 1478 // CHECK-NEXT: ] 1479 // CHECK-NEXT: } 1480 1481 // CHECK: "kind": "CXXFunctionalCastExpr", 1482 // CHECK-NEXT: "range": { 1483 // CHECK-NEXT: "begin": { 1484 // CHECK-NEXT: "offset": {{[0-9]+}}, 1485 // CHECK-NEXT: "col": 10, 1486 // CHECK-NEXT: "tokLen": 10 1487 // CHECK-NEXT: }, 1488 // CHECK-NEXT: "end": { 1489 // CHECK-NEXT: "offset": {{[0-9]+}}, 1490 // CHECK-NEXT: "col": 22, 1491 // CHECK-NEXT: "tokLen": 1 1492 // CHECK-NEXT: } 1493 // CHECK-NEXT: }, 1494 // CHECK-NEXT: "type": { 1495 // CHECK-NEXT: "desugaredQualType": "signed char", 1496 // CHECK-NEXT: "qualType": "SignedChar", 1497 // CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}" 1498 // CHECK-NEXT: }, 1499 // CHECK-NEXT: "valueCategory": "prvalue", 1500 // CHECK-NEXT: "castKind": "NoOp", 1501 // CHECK-NEXT: "inner": [ 1502 // CHECK-NEXT: { 1503 // CHECK-NEXT: "id": "0x{{.*}}", 1504 // CHECK-NEXT: "kind": "ImplicitCastExpr", 1505 // CHECK-NEXT: "range": { 1506 // CHECK-NEXT: "begin": { 1507 // CHECK-NEXT: "offset": {{[0-9]+}}, 1508 // CHECK-NEXT: "col": 21, 1509 // CHECK-NEXT: "tokLen": 1 1510 // CHECK-NEXT: }, 1511 // CHECK-NEXT: "end": { 1512 // CHECK-NEXT: "offset": {{[0-9]+}}, 1513 // CHECK-NEXT: "col": 21, 1514 // CHECK-NEXT: "tokLen": 1 1515 // CHECK-NEXT: } 1516 // CHECK-NEXT: }, 1517 // CHECK-NEXT: "type": { 1518 // CHECK-NEXT: "desugaredQualType": "signed char", 1519 // CHECK-NEXT: "qualType": "SignedChar", 1520 // CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}" 1521 // CHECK-NEXT: }, 1522 // CHECK-NEXT: "valueCategory": "prvalue", 1523 // CHECK-NEXT: "castKind": "IntegralCast", 1524 // CHECK-NEXT: "isPartOfExplicitCast": true, 1525 // CHECK-NEXT: "inner": [ 1526 // CHECK-NEXT: { 1527 // CHECK-NEXT: "id": "0x{{.*}}", 1528 // CHECK-NEXT: "kind": "ImplicitCastExpr", 1529 // CHECK-NEXT: "range": { 1530 // CHECK-NEXT: "begin": { 1531 // CHECK-NEXT: "offset": {{[0-9]+}}, 1532 // CHECK-NEXT: "col": 21, 1533 // CHECK-NEXT: "tokLen": 1 1534 // CHECK-NEXT: }, 1535 // CHECK-NEXT: "end": { 1536 // CHECK-NEXT: "offset": {{[0-9]+}}, 1537 // CHECK-NEXT: "col": 21, 1538 // CHECK-NEXT: "tokLen": 1 1539 // CHECK-NEXT: } 1540 // CHECK-NEXT: }, 1541 // CHECK-NEXT: "type": { 1542 // CHECK-NEXT: "desugaredQualType": "int", 1543 // CHECK-NEXT: "qualType": "SignedInt", 1544 // CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}" 1545 // CHECK-NEXT: }, 1546 // CHECK-NEXT: "valueCategory": "prvalue", 1547 // CHECK-NEXT: "castKind": "LValueToRValue", 1548 // CHECK-NEXT: "isPartOfExplicitCast": true, 1549 // CHECK-NEXT: "inner": [ 1550 // CHECK-NEXT: { 1551 // CHECK-NEXT: "id": "0x{{.*}}", 1552 // CHECK-NEXT: "kind": "DeclRefExpr", 1553 // CHECK-NEXT: "range": { 1554 // CHECK-NEXT: "begin": { 1555 // CHECK-NEXT: "offset": {{[0-9]+}}, 1556 // CHECK-NEXT: "col": 21, 1557 // CHECK-NEXT: "tokLen": 1 1558 // CHECK-NEXT: }, 1559 // CHECK-NEXT: "end": { 1560 // CHECK-NEXT: "offset": {{[0-9]+}}, 1561 // CHECK-NEXT: "col": 21, 1562 // CHECK-NEXT: "tokLen": 1 1563 // CHECK-NEXT: } 1564 // CHECK-NEXT: }, 1565 // CHECK-NEXT: "type": { 1566 // CHECK-NEXT: "desugaredQualType": "int", 1567 // CHECK-NEXT: "qualType": "SignedInt", 1568 // CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}" 1569 // CHECK-NEXT: }, 1570 // CHECK-NEXT: "valueCategory": "lvalue", 1571 // CHECK-NEXT: "referencedDecl": { 1572 // CHECK-NEXT: "id": "0x{{.*}}", 1573 // CHECK-NEXT: "kind": "ParmVarDecl", 1574 // CHECK-NEXT: "name": "x", 1575 // CHECK-NEXT: "type": { 1576 // CHECK-NEXT: "desugaredQualType": "int", 1577 // CHECK-NEXT: "qualType": "SignedInt", 1578 // CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}" 1579 // CHECK-NEXT: } 1580 // CHECK-NEXT: } 1581 // CHECK-NEXT: } 1582 // CHECK-NEXT: ] 1583 // CHECK-NEXT: } 1584 // CHECK-NEXT: ] 1585 // CHECK-NEXT: } 1586 // CHECK-NEXT: ] 1587 // CHECK-NEXT: } 1588