summaryrefslogtreecommitdiff
path: root/test/AST/ast-dump-expr-json.m
diff options
context:
space:
mode:
Diffstat (limited to 'test/AST/ast-dump-expr-json.m')
-rw-r--r--test/AST/ast-dump-expr-json.m4440
1 files changed, 2438 insertions, 2002 deletions
diff --git a/test/AST/ast-dump-expr-json.m b/test/AST/ast-dump-expr-json.m
index 9fc412a406..24dc6e6b75 100644
--- a/test/AST/ast-dump-expr-json.m
+++ b/test/AST/ast-dump-expr-json.m
@@ -98,127 +98,140 @@ void TestObjCBoolLiteral() {
// NOTE: CHECK lines have been autogenerated by gen_ast_dump_json_test.py
-// CHECK: "kind": "FunctionDecl",
+// CHECK: "kind": "FunctionDecl",
// CHECK-NEXT: "loc": {
-// CHECK-NEXT: "file": "{{.*}}",
-// CHECK-NEXT: "line": 54,
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 1506,
+// CHECK-NEXT: "file": "{{.*}}",
+// CHECK-NEXT: "line": 54,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 14
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "offset": 1501,
+// CHECK-NEXT: "col": 1,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "line": 57,
-// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "offset": 1566,
+// CHECK-NEXT: "line": 57,
+// CHECK-NEXT: "col": 1,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
-// CHECK-NEXT: "name": "TestObjCEncode",
+// CHECK-NEXT: },
+// CHECK-NEXT: "name": "TestObjCEncode",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void ()"
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "CompoundStmt",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CompoundStmt",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "line": 54,
-// CHECK-NEXT: "col": 23,
+// CHECK-NEXT: "offset": 1523,
+// CHECK-NEXT: "line": 54,
+// CHECK-NEXT: "col": 23,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "line": 57,
-// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "offset": 1566,
+// CHECK-NEXT: "line": 57,
+// CHECK-NEXT: "col": 1,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "line": 55,
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1527,
+// CHECK-NEXT: "line": 55,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "offset": 1538,
+// CHECK-NEXT: "col": 14,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "char *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "ArrayToPointerDecay",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "ArrayToPointerDecay",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCEncodeExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCEncodeExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1527,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "offset": 1538,
+// CHECK-NEXT: "col": 14,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "char [2]"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "encodedType": {
// CHECK-NEXT: "qualType": "int"
// CHECK-NEXT: }
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "line": 56,
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1543,
+// CHECK-NEXT: "line": 56,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 23,
+// CHECK-NEXT: "offset": 1563,
+// CHECK-NEXT: "col": 23,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "char *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "ArrayToPointerDecay",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "ArrayToPointerDecay",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCEncodeExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCEncodeExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1543,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 23,
+// CHECK-NEXT: "offset": 1563,
+// CHECK-NEXT: "col": 23,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "char [3]"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "encodedType": {
-// CHECK-NEXT: "desugaredQualType": "void (^)(void)",
+// CHECK-NEXT: "desugaredQualType": "void (^)(void)",
// CHECK-NEXT: "qualType": "typeof (^{ })"
// CHECK-NEXT: }
// CHECK-NEXT: }
@@ -230,129 +243,143 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: }
-// CHECK: "kind": "FunctionDecl",
+// CHECK: "kind": "FunctionDecl",
// CHECK-NEXT: "loc": {
-// CHECK-NEXT: "file": "{{.*}}",
-// CHECK-NEXT: "line": 59,
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 1574,
+// CHECK-NEXT: "file": "{{.*}}",
+// CHECK-NEXT: "line": 59,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 15
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "offset": 1569,
+// CHECK-NEXT: "col": 1,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "line": 62,
-// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "offset": 1632,
+// CHECK-NEXT: "line": 62,
+// CHECK-NEXT: "col": 1,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
-// CHECK-NEXT: "name": "TestObjCMessage",
+// CHECK-NEXT: },
+// CHECK-NEXT: "name": "TestObjCMessage",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void (I *)"
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
// CHECK-NEXT: "loc": {
-// CHECK-NEXT: "line": 59,
-// CHECK-NEXT: "col": 25,
+// CHECK-NEXT: "offset": 1593,
+// CHECK-NEXT: "line": 59,
+// CHECK-NEXT: "col": 25,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 22,
+// CHECK-NEXT: "offset": 1590,
+// CHECK-NEXT: "col": 22,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 25,
+// CHECK-NEXT: "offset": 1593,
+// CHECK-NEXT: "col": 25,
// CHECK-NEXT: "tokLen": 3
// CHECK-NEXT: }
-// CHECK-NEXT: },
-// CHECK-NEXT: "isUsed": true,
-// CHECK-NEXT: "name": "Obj",
+// CHECK-NEXT: },
+// CHECK-NEXT: "isUsed": true,
+// CHECK-NEXT: "name": "Obj",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "I *"
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "CompoundStmt",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CompoundStmt",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 30,
+// CHECK-NEXT: "offset": 1598,
+// CHECK-NEXT: "col": 30,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "line": 62,
-// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "offset": 1632,
+// CHECK-NEXT: "line": 62,
+// CHECK-NEXT: "col": 1,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCMessageExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCMessageExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "line": 60,
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1602,
+// CHECK-NEXT: "line": 60,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 15,
+// CHECK-NEXT: "offset": 1614,
+// CHECK-NEXT: "col": 15,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "selector": "method1",
-// CHECK-NEXT: "receiverKind": "instance",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "selector": "method1",
+// CHECK-NEXT: "receiverKind": "instance",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 4,
+// CHECK-NEXT: "offset": 1603,
+// CHECK-NEXT: "col": 4,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 4,
+// CHECK-NEXT: "offset": 1603,
+// CHECK-NEXT: "col": 4,
// CHECK-NEXT: "tokLen": 3
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "I *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "LValueToRValue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "LValueToRValue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "DeclRefExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclRefExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 4,
+// CHECK-NEXT: "offset": 1603,
+// CHECK-NEXT: "col": 4,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 4,
+// CHECK-NEXT: "offset": 1603,
+// CHECK-NEXT: "col": 4,
// CHECK-NEXT: "tokLen": 3
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "I *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "referencedDecl": {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ParmVarDecl",
-// CHECK-NEXT: "name": "Obj",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "name": "Obj",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "I *"
// CHECK-NEXT: }
@@ -361,27 +388,29 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCMessageExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCMessageExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "line": 61,
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1619,
+// CHECK-NEXT: "line": 61,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 13,
+// CHECK-NEXT: "offset": 1629,
+// CHECK-NEXT: "col": 13,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "selector": "method2",
-// CHECK-NEXT: "receiverKind": "class",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "selector": "method2",
+// CHECK-NEXT: "receiverKind": "class",
// CHECK-NEXT: "classType": {
// CHECK-NEXT: "qualType": "I"
// CHECK-NEXT: }
@@ -392,138 +421,153 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: }
-// CHECK: "kind": "FunctionDecl",
+// CHECK: "kind": "FunctionDecl",
// CHECK-NEXT: "loc": {
-// CHECK-NEXT: "file": "{{.*}}",
-// CHECK-NEXT: "line": 64,
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 1640,
+// CHECK-NEXT: "file": "{{.*}}",
+// CHECK-NEXT: "line": 64,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 13
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "offset": 1635,
+// CHECK-NEXT: "col": 1,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "line": 66,
-// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "offset": 1670,
+// CHECK-NEXT: "line": 66,
+// CHECK-NEXT: "col": 1,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
-// CHECK-NEXT: "name": "TestObjCBoxed",
+// CHECK-NEXT: },
+// CHECK-NEXT: "name": "TestObjCBoxed",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void ()"
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "CompoundStmt",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CompoundStmt",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "line": 64,
-// CHECK-NEXT: "col": 22,
+// CHECK-NEXT: "offset": 1656,
+// CHECK-NEXT: "line": 64,
+// CHECK-NEXT: "col": 22,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "line": 66,
-// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "offset": 1670,
+// CHECK-NEXT: "line": 66,
+// CHECK-NEXT: "col": 1,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCBoxedExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCBoxedExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "line": 65,
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1660,
+// CHECK-NEXT: "line": 65,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 10,
+// CHECK-NEXT: "offset": 1667,
+// CHECK-NEXT: "col": 10,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSNumber *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "selector": "numberWithInt:",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "selector": "numberWithInt:",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ParenExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParenExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 4,
+// CHECK-NEXT: "offset": 1661,
+// CHECK-NEXT: "col": 4,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 10,
+// CHECK-NEXT: "offset": 1667,
+// CHECK-NEXT: "col": 10,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "BinaryOperator",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "BinaryOperator",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 5,
+// CHECK-NEXT: "offset": 1662,
+// CHECK-NEXT: "col": 5,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 9,
+// CHECK-NEXT: "offset": 1666,
+// CHECK-NEXT: "col": 9,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "opcode": "+",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "opcode": "+",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 5,
+// CHECK-NEXT: "offset": 1662,
+// CHECK-NEXT: "col": 5,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 5,
+// CHECK-NEXT: "offset": 1662,
+// CHECK-NEXT: "col": 5,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "value": "1"
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 9,
+// CHECK-NEXT: "offset": 1666,
+// CHECK-NEXT: "col": 9,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 9,
+// CHECK-NEXT: "offset": 1666,
+// CHECK-NEXT: "col": 9,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "value": "1"
// CHECK-NEXT: }
// CHECK-NEXT: ]
@@ -538,104 +582,116 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: }
-// CHECK: "kind": "FunctionDecl",
+// CHECK: "kind": "FunctionDecl",
// CHECK-NEXT: "loc": {
-// CHECK-NEXT: "file": "{{.*}}",
-// CHECK-NEXT: "line": 68,
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 1678,
+// CHECK-NEXT: "file": "{{.*}}",
+// CHECK-NEXT: "line": 68,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 16
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "offset": 1673,
+// CHECK-NEXT: "col": 1,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "line": 70,
-// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "offset": 1729,
+// CHECK-NEXT: "line": 70,
+// CHECK-NEXT: "col": 1,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
-// CHECK-NEXT: "name": "TestObjCSelector",
+// CHECK-NEXT: },
+// CHECK-NEXT: "name": "TestObjCSelector",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void ()"
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "CompoundStmt",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CompoundStmt",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "line": 68,
-// CHECK-NEXT: "col": 25,
+// CHECK-NEXT: "offset": 1697,
+// CHECK-NEXT: "line": 68,
+// CHECK-NEXT: "col": 25,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "line": 70,
-// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "offset": 1729,
+// CHECK-NEXT: "line": 70,
+// CHECK-NEXT: "col": 1,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "DeclStmt",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclStmt",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "line": 69,
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1701,
+// CHECK-NEXT: "line": 69,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 29,
+// CHECK-NEXT: "offset": 1727,
+// CHECK-NEXT: "col": 29,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "VarDecl",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "VarDecl",
// CHECK-NEXT: "loc": {
-// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "offset": 1705,
+// CHECK-NEXT: "col": 7,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1701,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 28,
+// CHECK-NEXT: "offset": 1726,
+// CHECK-NEXT: "col": 28,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
-// CHECK-NEXT: "name": "s",
+// CHECK-NEXT: },
+// CHECK-NEXT: "name": "s",
// CHECK-NEXT: "type": {
-// CHECK-NEXT: "desugaredQualType": "SEL *",
-// CHECK-NEXT: "qualType": "SEL",
+// CHECK-NEXT: "desugaredQualType": "SEL *",
+// CHECK-NEXT: "qualType": "SEL",
// CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}"
-// CHECK-NEXT: },
-// CHECK-NEXT: "init": "c",
+// CHECK-NEXT: },
+// CHECK-NEXT: "init": "c",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCSelectorExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCSelectorExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "offset": 1709,
+// CHECK-NEXT: "col": 11,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 28,
+// CHECK-NEXT: "offset": 1726,
+// CHECK-NEXT: "col": 28,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
-// CHECK-NEXT: "desugaredQualType": "SEL *",
-// CHECK-NEXT: "qualType": "SEL",
+// CHECK-NEXT: "desugaredQualType": "SEL *",
+// CHECK-NEXT: "qualType": "SEL",
// CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "selector": "dealloc"
// CHECK-NEXT: }
// CHECK-NEXT: ]
@@ -648,164 +704,180 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: }
-// CHECK: "kind": "FunctionDecl",
+// CHECK: "kind": "FunctionDecl",
// CHECK-NEXT: "loc": {
-// CHECK-NEXT: "file": "{{.*}}",
-// CHECK-NEXT: "line": 72,
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 1737,
+// CHECK-NEXT: "file": "{{.*}}",
+// CHECK-NEXT: "line": 72,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 16
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "offset": 1732,
+// CHECK-NEXT: "col": 1,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "line": 74,
-// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "offset": 1809,
+// CHECK-NEXT: "line": 74,
+// CHECK-NEXT: "col": 1,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
-// CHECK-NEXT: "name": "TestObjCProtocol",
+// CHECK-NEXT: },
+// CHECK-NEXT: "name": "TestObjCProtocol",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void (id)"
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
// CHECK-NEXT: "loc": {
-// CHECK-NEXT: "line": 72,
-// CHECK-NEXT: "col": 26,
+// CHECK-NEXT: "offset": 1757,
+// CHECK-NEXT: "line": 72,
+// CHECK-NEXT: "col": 26,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 23,
+// CHECK-NEXT: "offset": 1754,
+// CHECK-NEXT: "col": 23,
// CHECK-NEXT: "tokLen": 2
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 26,
+// CHECK-NEXT: "offset": 1757,
+// CHECK-NEXT: "col": 26,
// CHECK-NEXT: "tokLen": 3
// CHECK-NEXT: }
-// CHECK-NEXT: },
-// CHECK-NEXT: "isUsed": true,
-// CHECK-NEXT: "name": "Obj",
+// CHECK-NEXT: },
+// CHECK-NEXT: "isUsed": true,
+// CHECK-NEXT: "name": "Obj",
// CHECK-NEXT: "type": {
-// CHECK-NEXT: "desugaredQualType": "id",
-// CHECK-NEXT: "qualType": "id",
+// CHECK-NEXT: "desugaredQualType": "id",
+// CHECK-NEXT: "qualType": "id",
// CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}"
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "CompoundStmt",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CompoundStmt",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 31,
+// CHECK-NEXT: "offset": 1762,
+// CHECK-NEXT: "col": 31,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "line": 74,
-// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "offset": 1809,
+// CHECK-NEXT: "line": 74,
+// CHECK-NEXT: "col": 1,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCMessageExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCMessageExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "line": 73,
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1766,
+// CHECK-NEXT: "line": 73,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 43,
+// CHECK-NEXT: "offset": 1806,
+// CHECK-NEXT: "col": 43,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "selector": "conformsToProtocol:",
-// CHECK-NEXT: "receiverKind": "instance",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "selector": "conformsToProtocol:",
+// CHECK-NEXT: "receiverKind": "instance",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 4,
+// CHECK-NEXT: "offset": 1767,
+// CHECK-NEXT: "col": 4,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 4,
+// CHECK-NEXT: "offset": 1767,
+// CHECK-NEXT: "col": 4,
// CHECK-NEXT: "tokLen": 3
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
-// CHECK-NEXT: "desugaredQualType": "id",
-// CHECK-NEXT: "qualType": "id",
+// CHECK-NEXT: "desugaredQualType": "id",
+// CHECK-NEXT: "qualType": "id",
// CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "LValueToRValue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "LValueToRValue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "DeclRefExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclRefExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 4,
+// CHECK-NEXT: "offset": 1767,
+// CHECK-NEXT: "col": 4,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 4,
+// CHECK-NEXT: "offset": 1767,
+// CHECK-NEXT: "col": 4,
// CHECK-NEXT: "tokLen": 3
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
-// CHECK-NEXT: "desugaredQualType": "id",
-// CHECK-NEXT: "qualType": "id",
+// CHECK-NEXT: "desugaredQualType": "id",
+// CHECK-NEXT: "qualType": "id",
// CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "referencedDecl": {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ParmVarDecl",
-// CHECK-NEXT: "name": "Obj",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "name": "Obj",
// CHECK-NEXT: "type": {
-// CHECK-NEXT: "desugaredQualType": "id",
-// CHECK-NEXT: "qualType": "id",
+// CHECK-NEXT: "desugaredQualType": "id",
+// CHECK-NEXT: "qualType": "id",
// CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}"
// CHECK-NEXT: }
// CHECK-NEXT: }
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCProtocolExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCProtocolExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 27,
+// CHECK-NEXT: "offset": 1790,
+// CHECK-NEXT: "col": 27,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 42,
+// CHECK-NEXT: "offset": 1805,
+// CHECK-NEXT: "col": 42,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "Protocol *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "protocol": {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCProtocolDecl",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCProtocolDecl",
// CHECK-NEXT: "name": "Proto"
// CHECK-NEXT: }
// CHECK-NEXT: }
@@ -817,189 +889,209 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: }
-// CHECK: "kind": "FunctionDecl",
+// CHECK: "kind": "FunctionDecl",
// CHECK-NEXT: "loc": {
-// CHECK-NEXT: "file": "{{.*}}",
-// CHECK-NEXT: "line": 76,
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 1817,
+// CHECK-NEXT: "file": "{{.*}}",
+// CHECK-NEXT: "line": 76,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 19
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "offset": 1812,
+// CHECK-NEXT: "col": 1,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "line": 79,
-// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "offset": 1884,
+// CHECK-NEXT: "line": 79,
+// CHECK-NEXT: "col": 1,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
-// CHECK-NEXT: "name": "TestObjCPropertyRef",
+// CHECK-NEXT: },
+// CHECK-NEXT: "name": "TestObjCPropertyRef",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void (J *)"
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
// CHECK-NEXT: "loc": {
-// CHECK-NEXT: "line": 76,
-// CHECK-NEXT: "col": 29,
+// CHECK-NEXT: "offset": 1840,
+// CHECK-NEXT: "line": 76,
+// CHECK-NEXT: "col": 29,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 26,
+// CHECK-NEXT: "offset": 1837,
+// CHECK-NEXT: "col": 26,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 29,
+// CHECK-NEXT: "offset": 1840,
+// CHECK-NEXT: "col": 29,
// CHECK-NEXT: "tokLen": 3
// CHECK-NEXT: }
-// CHECK-NEXT: },
-// CHECK-NEXT: "isUsed": true,
-// CHECK-NEXT: "name": "Obj",
+// CHECK-NEXT: },
+// CHECK-NEXT: "isUsed": true,
+// CHECK-NEXT: "name": "Obj",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "J *"
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "CompoundStmt",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CompoundStmt",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 34,
+// CHECK-NEXT: "offset": 1845,
+// CHECK-NEXT: "col": 34,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "line": 79,
-// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "offset": 1884,
+// CHECK-NEXT: "line": 79,
+// CHECK-NEXT: "col": 1,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "PseudoObjectExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "PseudoObjectExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "line": 77,
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1849,
+// CHECK-NEXT: "line": 77,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "offset": 1860,
+// CHECK-NEXT: "col": 14,
// CHECK-NEXT: "tokLen": 2
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "unsigned int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "BinaryOperator",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "BinaryOperator",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1849,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "offset": 1860,
+// CHECK-NEXT: "col": 14,
// CHECK-NEXT: "tokLen": 2
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "opcode": "=",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "opcode": "=",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCPropertyRefExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCPropertyRefExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1849,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "offset": 1853,
+// CHECK-NEXT: "col": 7,
// CHECK-NEXT: "tokLen": 4
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "<pseudo-object type>"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
-// CHECK-NEXT: "propertyKind": "explicit",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: "propertyKind": "explicit",
// CHECK-NEXT: "property": {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCPropertyDecl",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCPropertyDecl",
// CHECK-NEXT: "name": "prop"
-// CHECK-NEXT: },
-// CHECK-NEXT: "isMessagingSetter": true,
+// CHECK-NEXT: },
+// CHECK-NEXT: "isMessagingSetter": true,
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1849,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1849,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "J *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1849,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1849,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "J *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "LValueToRValue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "LValueToRValue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "DeclRefExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclRefExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1849,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1849,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "J *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "referencedDecl": {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ParmVarDecl",
-// CHECK-NEXT: "name": "Obj",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "name": "Obj",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "J *"
// CHECK-NEXT: }
@@ -1010,106 +1102,116 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "offset": 1860,
+// CHECK-NEXT: "col": 14,
// CHECK-NEXT: "tokLen": 2
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "offset": 1860,
+// CHECK-NEXT: "col": 14,
// CHECK-NEXT: "tokLen": 2
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "offset": 1860,
+// CHECK-NEXT: "col": 14,
// CHECK-NEXT: "tokLen": 2
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "offset": 1860,
+// CHECK-NEXT: "col": 14,
// CHECK-NEXT: "tokLen": 2
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "value": "12"
// CHECK-NEXT: }
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1849,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1849,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "J *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1849,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1849,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "J *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "LValueToRValue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "LValueToRValue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "DeclRefExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclRefExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1849,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1849,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "J *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "referencedDecl": {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ParmVarDecl",
-// CHECK-NEXT: "name": "Obj",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "name": "Obj",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "J *"
// CHECK-NEXT: }
@@ -1118,118 +1220,130 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "offset": 1860,
+// CHECK-NEXT: "col": 14,
// CHECK-NEXT: "tokLen": 2
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "offset": 1860,
+// CHECK-NEXT: "col": 14,
// CHECK-NEXT: "tokLen": 2
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "offset": 1860,
+// CHECK-NEXT: "col": 14,
// CHECK-NEXT: "tokLen": 2
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "offset": 1860,
+// CHECK-NEXT: "col": 14,
// CHECK-NEXT: "tokLen": 2
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "value": "12"
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "offset": 1860,
+// CHECK-NEXT: "col": 14,
// CHECK-NEXT: "tokLen": 2
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "offset": 1860,
+// CHECK-NEXT: "col": 14,
// CHECK-NEXT: "tokLen": 2
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "unsigned int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "offset": 1860,
+// CHECK-NEXT: "col": 14,
// CHECK-NEXT: "tokLen": 2
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "offset": 1860,
+// CHECK-NEXT: "col": 14,
// CHECK-NEXT: "tokLen": 2
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "unsigned int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "IntegralCast",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "IntegralCast",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "offset": 1860,
+// CHECK-NEXT: "col": 14,
// CHECK-NEXT: "tokLen": 2
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "offset": 1860,
+// CHECK-NEXT: "col": 14,
// CHECK-NEXT: "tokLen": 2
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "offset": 1860,
+// CHECK-NEXT: "col": 14,
// CHECK-NEXT: "tokLen": 2
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "offset": 1860,
+// CHECK-NEXT: "col": 14,
// CHECK-NEXT: "tokLen": 2
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "value": "12"
// CHECK-NEXT: }
// CHECK-NEXT: ]
@@ -1237,85 +1351,93 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCMessageExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCMessageExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "offset": 1853,
+// CHECK-NEXT: "col": 7,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "offset": 1853,
+// CHECK-NEXT: "col": 7,
// CHECK-NEXT: "tokLen": 4
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "selector": "setProp:",
-// CHECK-NEXT: "receiverKind": "instance",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "selector": "setProp:",
+// CHECK-NEXT: "receiverKind": "instance",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1849,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1849,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "J *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1849,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1849,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "J *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "LValueToRValue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "LValueToRValue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "DeclRefExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclRefExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1849,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1849,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "J *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "referencedDecl": {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ParmVarDecl",
-// CHECK-NEXT: "name": "Obj",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "name": "Obj",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "J *"
// CHECK-NEXT: }
@@ -1324,79 +1446,87 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "offset": 1860,
+// CHECK-NEXT: "col": 14,
// CHECK-NEXT: "tokLen": 2
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "offset": 1860,
+// CHECK-NEXT: "col": 14,
// CHECK-NEXT: "tokLen": 2
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "unsigned int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "offset": 1860,
+// CHECK-NEXT: "col": 14,
// CHECK-NEXT: "tokLen": 2
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "offset": 1860,
+// CHECK-NEXT: "col": 14,
// CHECK-NEXT: "tokLen": 2
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "unsigned int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "IntegralCast",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "IntegralCast",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "offset": 1860,
+// CHECK-NEXT: "col": 14,
// CHECK-NEXT: "tokLen": 2
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "offset": 1860,
+// CHECK-NEXT: "col": 14,
// CHECK-NEXT: "tokLen": 2
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "offset": 1860,
+// CHECK-NEXT: "col": 14,
// CHECK-NEXT: "tokLen": 2
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 14,
+// CHECK-NEXT: "offset": 1860,
+// CHECK-NEXT: "col": 14,
// CHECK-NEXT: "tokLen": 2
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "value": "12"
// CHECK-NEXT: }
// CHECK-NEXT: ]
@@ -1408,165 +1538,182 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "DeclStmt",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclStmt",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "line": 78,
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1866,
+// CHECK-NEXT: "line": 78,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 19,
+// CHECK-NEXT: "offset": 1882,
+// CHECK-NEXT: "col": 19,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "VarDecl",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "VarDecl",
// CHECK-NEXT: "loc": {
-// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "offset": 1870,
+// CHECK-NEXT: "col": 7,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 1866,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 15,
+// CHECK-NEXT: "offset": 1878,
+// CHECK-NEXT: "col": 15,
// CHECK-NEXT: "tokLen": 4
// CHECK-NEXT: }
-// CHECK-NEXT: },
-// CHECK-NEXT: "name": "i",
+// CHECK-NEXT: },
+// CHECK-NEXT: "name": "i",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "init": "c",
+// CHECK-NEXT: },
+// CHECK-NEXT: "init": "c",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "offset": 1874,
+// CHECK-NEXT: "col": 11,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 15,
+// CHECK-NEXT: "offset": 1878,
+// CHECK-NEXT: "col": 15,
// CHECK-NEXT: "tokLen": 4
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "IntegralCast",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "IntegralCast",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "PseudoObjectExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "PseudoObjectExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "offset": 1874,
+// CHECK-NEXT: "col": 11,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 15,
+// CHECK-NEXT: "offset": 1878,
+// CHECK-NEXT: "col": 15,
// CHECK-NEXT: "tokLen": 4
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "unsigned int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCPropertyRefExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCPropertyRefExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "offset": 1874,
+// CHECK-NEXT: "col": 11,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 15,
+// CHECK-NEXT: "offset": 1878,
+// CHECK-NEXT: "col": 15,
// CHECK-NEXT: "tokLen": 4
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "<pseudo-object type>"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
-// CHECK-NEXT: "propertyKind": "explicit",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: "propertyKind": "explicit",
// CHECK-NEXT: "property": {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCPropertyDecl",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCPropertyDecl",
// CHECK-NEXT: "name": "prop"
-// CHECK-NEXT: },
-// CHECK-NEXT: "isMessagingGetter": true,
+// CHECK-NEXT: },
+// CHECK-NEXT: "isMessagingGetter": true,
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "offset": 1874,
+// CHECK-NEXT: "col": 11,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "offset": 1874,
+// CHECK-NEXT: "col": 11,
// CHECK-NEXT: "tokLen": 3
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "J *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "offset": 1874,
+// CHECK-NEXT: "col": 11,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "offset": 1874,
+// CHECK-NEXT: "col": 11,
// CHECK-NEXT: "tokLen": 3
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "J *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "LValueToRValue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "LValueToRValue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "DeclRefExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclRefExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "offset": 1874,
+// CHECK-NEXT: "col": 11,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "offset": 1874,
+// CHECK-NEXT: "col": 11,
// CHECK-NEXT: "tokLen": 3
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "J *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "referencedDecl": {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ParmVarDecl",
-// CHECK-NEXT: "name": "Obj",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "name": "Obj",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "J *"
// CHECK-NEXT: }
@@ -1577,65 +1724,71 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "offset": 1874,
+// CHECK-NEXT: "col": 11,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "offset": 1874,
+// CHECK-NEXT: "col": 11,
// CHECK-NEXT: "tokLen": 3
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "J *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "offset": 1874,
+// CHECK-NEXT: "col": 11,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "offset": 1874,
+// CHECK-NEXT: "col": 11,
// CHECK-NEXT: "tokLen": 3
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "J *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "LValueToRValue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "LValueToRValue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "DeclRefExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclRefExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "offset": 1874,
+// CHECK-NEXT: "col": 11,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "offset": 1874,
+// CHECK-NEXT: "col": 11,
// CHECK-NEXT: "tokLen": 3
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "J *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "referencedDecl": {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ParmVarDecl",
-// CHECK-NEXT: "name": "Obj",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "name": "Obj",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "J *"
// CHECK-NEXT: }
@@ -1644,85 +1797,93 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCMessageExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCMessageExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 15,
+// CHECK-NEXT: "offset": 1878,
+// CHECK-NEXT: "col": 15,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 15,
+// CHECK-NEXT: "offset": 1878,
+// CHECK-NEXT: "col": 15,
// CHECK-NEXT: "tokLen": 4
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "unsigned int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "selector": "prop",
-// CHECK-NEXT: "receiverKind": "instance",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "selector": "prop",
+// CHECK-NEXT: "receiverKind": "instance",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "offset": 1874,
+// CHECK-NEXT: "col": 11,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "offset": 1874,
+// CHECK-NEXT: "col": 11,
// CHECK-NEXT: "tokLen": 3
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "J *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "offset": 1874,
+// CHECK-NEXT: "col": 11,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "offset": 1874,
+// CHECK-NEXT: "col": 11,
// CHECK-NEXT: "tokLen": 3
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "J *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "LValueToRValue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "LValueToRValue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "DeclRefExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclRefExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "offset": 1874,
+// CHECK-NEXT: "col": 11,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "offset": 1874,
+// CHECK-NEXT: "col": 11,
// CHECK-NEXT: "tokLen": 3
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "J *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "referencedDecl": {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ParmVarDecl",
-// CHECK-NEXT: "name": "Obj",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "name": "Obj",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "J *"
// CHECK-NEXT: }
@@ -1748,208 +1909,231 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: }
-// CHECK: "kind": "FunctionDecl",
+// CHECK: "kind": "FunctionDecl",
// CHECK-NEXT: "loc": {
-// CHECK-NEXT: "file": "{{.*}}",
-// CHECK-NEXT: "line": 81,
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 1892,
+// CHECK-NEXT: "file": "{{.*}}",
+// CHECK-NEXT: "line": 81,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 20
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "offset": 1887,
+// CHECK-NEXT: "col": 1,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "line": 87,
-// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "offset": 2052,
+// CHECK-NEXT: "line": 87,
+// CHECK-NEXT: "col": 1,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
-// CHECK-NEXT: "name": "TestObjCSubscriptRef",
+// CHECK-NEXT: },
+// CHECK-NEXT: "name": "TestObjCSubscriptRef",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void (NSMutableArray *, NSMutableDictionary *)"
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
// CHECK-NEXT: "loc": {
-// CHECK-NEXT: "line": 81,
-// CHECK-NEXT: "col": 43,
+// CHECK-NEXT: "offset": 1929,
+// CHECK-NEXT: "line": 81,
+// CHECK-NEXT: "col": 43,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 27,
+// CHECK-NEXT: "offset": 1913,
+// CHECK-NEXT: "col": 27,
// CHECK-NEXT: "tokLen": 14
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 43,
+// CHECK-NEXT: "offset": 1929,
+// CHECK-NEXT: "col": 43,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
-// CHECK-NEXT: "isUsed": true,
-// CHECK-NEXT: "name": "Array",
+// CHECK-NEXT: },
+// CHECK-NEXT: "isUsed": true,
+// CHECK-NEXT: "name": "Array",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableArray *"
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
// CHECK-NEXT: "loc": {
-// CHECK-NEXT: "col": 71,
+// CHECK-NEXT: "offset": 1957,
+// CHECK-NEXT: "col": 71,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 50,
+// CHECK-NEXT: "offset": 1936,
+// CHECK-NEXT: "col": 50,
// CHECK-NEXT: "tokLen": 19
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 71,
+// CHECK-NEXT: "offset": 1957,
+// CHECK-NEXT: "col": 71,
// CHECK-NEXT: "tokLen": 4
// CHECK-NEXT: }
-// CHECK-NEXT: },
-// CHECK-NEXT: "isUsed": true,
-// CHECK-NEXT: "name": "Dict",
+// CHECK-NEXT: },
+// CHECK-NEXT: "isUsed": true,
+// CHECK-NEXT: "name": "Dict",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableDictionary *"
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "CompoundStmt",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CompoundStmt",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 77,
+// CHECK-NEXT: "offset": 1963,
+// CHECK-NEXT: "col": 77,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "line": 87,
-// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "offset": 2052,
+// CHECK-NEXT: "line": 87,
+// CHECK-NEXT: "col": 1,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "PseudoObjectExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "PseudoObjectExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "line": 82,
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 1966,
+// CHECK-NEXT: "line": 82,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 20,
+// CHECK-NEXT: "offset": 1984,
+// CHECK-NEXT: "col": 20,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
-// CHECK-NEXT: "desugaredQualType": "id",
-// CHECK-NEXT: "qualType": "id",
+// CHECK-NEXT: "desugaredQualType": "id",
+// CHECK-NEXT: "qualType": "id",
// CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "BinaryOperator",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "BinaryOperator",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 1966,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 20,
+// CHECK-NEXT: "offset": 1984,
+// CHECK-NEXT: "col": 20,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "opcode": "=",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "opcode": "=",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCSubscriptRefExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCSubscriptRefExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 1966,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 9,
+// CHECK-NEXT: "offset": 1973,
+// CHECK-NEXT: "col": 9,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "<pseudo-object type>"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
-// CHECK-NEXT: "subscriptKind": "array",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: "subscriptKind": "array",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 1966,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 1966,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableArray *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 1966,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 1966,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableArray *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "LValueToRValue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "LValueToRValue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "DeclRefExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclRefExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 1966,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 1966,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableArray *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "referencedDecl": {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ParmVarDecl",
-// CHECK-NEXT: "name": "Array",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "name": "Array",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableArray *"
// CHECK-NEXT: }
@@ -1958,102 +2142,112 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "offset": 1972,
+// CHECK-NEXT: "col": 8,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "offset": 1972,
+// CHECK-NEXT: "col": 8,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "offset": 1972,
+// CHECK-NEXT: "col": 8,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "offset": 1972,
+// CHECK-NEXT: "col": 8,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "value": "0"
// CHECK-NEXT: }
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 13,
+// CHECK-NEXT: "offset": 1977,
+// CHECK-NEXT: "col": 13,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 20,
+// CHECK-NEXT: "offset": 1984,
+// CHECK-NEXT: "col": 20,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "CStyleCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CStyleCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 13,
+// CHECK-NEXT: "offset": 1977,
+// CHECK-NEXT: "col": 13,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 20,
+// CHECK-NEXT: "offset": 1984,
+// CHECK-NEXT: "col": 20,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "NullToPointer",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "NullToPointer",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 20,
+// CHECK-NEXT: "offset": 1984,
+// CHECK-NEXT: "col": 20,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 20,
+// CHECK-NEXT: "offset": 1984,
+// CHECK-NEXT: "col": 20,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "value": "0"
// CHECK-NEXT: }
// CHECK-NEXT: ]
@@ -2061,65 +2255,71 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 1966,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 1966,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableArray *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 1966,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 1966,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableArray *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "LValueToRValue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "LValueToRValue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "DeclRefExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclRefExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 1966,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 1966,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableArray *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "referencedDecl": {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ParmVarDecl",
-// CHECK-NEXT: "name": "Array",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "name": "Array",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableArray *"
// CHECK-NEXT: }
@@ -2128,201 +2328,221 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "offset": 1972,
+// CHECK-NEXT: "col": 8,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "offset": 1972,
+// CHECK-NEXT: "col": 8,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "offset": 1972,
+// CHECK-NEXT: "col": 8,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "offset": 1972,
+// CHECK-NEXT: "col": 8,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "value": "0"
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 13,
+// CHECK-NEXT: "offset": 1977,
+// CHECK-NEXT: "col": 13,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 20,
+// CHECK-NEXT: "offset": 1984,
+// CHECK-NEXT: "col": 20,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "CStyleCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CStyleCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 13,
+// CHECK-NEXT: "offset": 1977,
+// CHECK-NEXT: "col": 13,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 20,
+// CHECK-NEXT: "offset": 1984,
+// CHECK-NEXT: "col": 20,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "NullToPointer",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "NullToPointer",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 20,
+// CHECK-NEXT: "offset": 1984,
+// CHECK-NEXT: "col": 20,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 20,
+// CHECK-NEXT: "offset": 1984,
+// CHECK-NEXT: "col": 20,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "value": "0"
// CHECK-NEXT: }
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 13,
+// CHECK-NEXT: "offset": 1977,
+// CHECK-NEXT: "col": 13,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 20,
+// CHECK-NEXT: "offset": 1984,
+// CHECK-NEXT: "col": 20,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
-// CHECK-NEXT: "desugaredQualType": "id",
-// CHECK-NEXT: "qualType": "id",
+// CHECK-NEXT: "desugaredQualType": "id",
+// CHECK-NEXT: "qualType": "id",
// CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 13,
+// CHECK-NEXT: "offset": 1977,
+// CHECK-NEXT: "col": 13,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 20,
+// CHECK-NEXT: "offset": 1984,
+// CHECK-NEXT: "col": 20,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
-// CHECK-NEXT: "desugaredQualType": "id",
-// CHECK-NEXT: "qualType": "id",
+// CHECK-NEXT: "desugaredQualType": "id",
+// CHECK-NEXT: "qualType": "id",
// CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "NullToPointer",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "NullToPointer",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 13,
+// CHECK-NEXT: "offset": 1977,
+// CHECK-NEXT: "col": 13,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 20,
+// CHECK-NEXT: "offset": 1984,
+// CHECK-NEXT: "col": 20,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "CStyleCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CStyleCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 13,
+// CHECK-NEXT: "offset": 1977,
+// CHECK-NEXT: "col": 13,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 20,
+// CHECK-NEXT: "offset": 1984,
+// CHECK-NEXT: "col": 20,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "NullToPointer",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "NullToPointer",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 20,
+// CHECK-NEXT: "offset": 1984,
+// CHECK-NEXT: "col": 20,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 20,
+// CHECK-NEXT: "offset": 1984,
+// CHECK-NEXT: "col": 20,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "value": "0"
// CHECK-NEXT: }
// CHECK-NEXT: ]
@@ -2332,85 +2552,93 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCMessageExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCMessageExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 1966,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 1966,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "selector": "setObject:atIndexedSubscript:",
-// CHECK-NEXT: "receiverKind": "instance",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "selector": "setObject:atIndexedSubscript:",
+// CHECK-NEXT: "receiverKind": "instance",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 1966,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 1966,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableArray *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 1966,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 1966,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableArray *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "LValueToRValue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "LValueToRValue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "DeclRefExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclRefExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 1966,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 1966,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableArray *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "referencedDecl": {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ParmVarDecl",
-// CHECK-NEXT: "name": "Array",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "name": "Array",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableArray *"
// CHECK-NEXT: }
@@ -2419,102 +2647,112 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 13,
+// CHECK-NEXT: "offset": 1977,
+// CHECK-NEXT: "col": 13,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 20,
+// CHECK-NEXT: "offset": 1984,
+// CHECK-NEXT: "col": 20,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
-// CHECK-NEXT: "desugaredQualType": "id",
-// CHECK-NEXT: "qualType": "id",
+// CHECK-NEXT: "desugaredQualType": "id",
+// CHECK-NEXT: "qualType": "id",
// CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 13,
+// CHECK-NEXT: "offset": 1977,
+// CHECK-NEXT: "col": 13,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 20,
+// CHECK-NEXT: "offset": 1984,
+// CHECK-NEXT: "col": 20,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
-// CHECK-NEXT: "desugaredQualType": "id",
-// CHECK-NEXT: "qualType": "id",
+// CHECK-NEXT: "desugaredQualType": "id",
+// CHECK-NEXT: "qualType": "id",
// CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "NullToPointer",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "NullToPointer",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 13,
+// CHECK-NEXT: "offset": 1977,
+// CHECK-NEXT: "col": 13,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 20,
+// CHECK-NEXT: "offset": 1984,
+// CHECK-NEXT: "col": 20,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "CStyleCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CStyleCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 13,
+// CHECK-NEXT: "offset": 1977,
+// CHECK-NEXT: "col": 13,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 20,
+// CHECK-NEXT: "offset": 1984,
+// CHECK-NEXT: "col": 20,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "NullToPointer",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "NullToPointer",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 20,
+// CHECK-NEXT: "offset": 1984,
+// CHECK-NEXT: "col": 20,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 20,
+// CHECK-NEXT: "offset": 1984,
+// CHECK-NEXT: "col": 20,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "value": "0"
// CHECK-NEXT: }
// CHECK-NEXT: ]
@@ -2524,42 +2762,46 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "offset": 1972,
+// CHECK-NEXT: "col": 8,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "offset": 1972,
+// CHECK-NEXT: "col": 8,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "offset": 1972,
+// CHECK-NEXT: "col": 8,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "offset": 1972,
+// CHECK-NEXT: "col": 8,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "value": "0"
// CHECK-NEXT: }
// CHECK-NEXT: ]
@@ -2567,145 +2809,160 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "DeclStmt",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclStmt",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "line": 83,
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 1988,
+// CHECK-NEXT: "line": 83,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 2
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 17,
+// CHECK-NEXT: "offset": 2003,
+// CHECK-NEXT: "col": 17,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "VarDecl",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "VarDecl",
// CHECK-NEXT: "loc": {
-// CHECK-NEXT: "col": 5,
+// CHECK-NEXT: "offset": 1991,
+// CHECK-NEXT: "col": 5,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 1988,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 2
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 16,
+// CHECK-NEXT: "offset": 2002,
+// CHECK-NEXT: "col": 16,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
-// CHECK-NEXT: "isUsed": true,
-// CHECK-NEXT: "name": "i",
+// CHECK-NEXT: },
+// CHECK-NEXT: "isUsed": true,
+// CHECK-NEXT: "name": "i",
// CHECK-NEXT: "type": {
-// CHECK-NEXT: "desugaredQualType": "id",
-// CHECK-NEXT: "qualType": "id",
+// CHECK-NEXT: "desugaredQualType": "id",
+// CHECK-NEXT: "qualType": "id",
// CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}"
-// CHECK-NEXT: },
-// CHECK-NEXT: "init": "c",
+// CHECK-NEXT: },
+// CHECK-NEXT: "init": "c",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "PseudoObjectExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "PseudoObjectExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 9,
+// CHECK-NEXT: "offset": 1995,
+// CHECK-NEXT: "col": 9,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 16,
+// CHECK-NEXT: "offset": 2002,
+// CHECK-NEXT: "col": 16,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
-// CHECK-NEXT: "desugaredQualType": "id",
-// CHECK-NEXT: "qualType": "id",
+// CHECK-NEXT: "desugaredQualType": "id",
+// CHECK-NEXT: "qualType": "id",
// CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCSubscriptRefExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCSubscriptRefExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 9,
+// CHECK-NEXT: "offset": 1995,
+// CHECK-NEXT: "col": 9,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 16,
+// CHECK-NEXT: "offset": 2002,
+// CHECK-NEXT: "col": 16,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "<pseudo-object type>"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
-// CHECK-NEXT: "subscriptKind": "array",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: "subscriptKind": "array",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 9,
+// CHECK-NEXT: "offset": 1995,
+// CHECK-NEXT: "col": 9,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 9,
+// CHECK-NEXT: "offset": 1995,
+// CHECK-NEXT: "col": 9,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableArray *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 9,
+// CHECK-NEXT: "offset": 1995,
+// CHECK-NEXT: "col": 9,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 9,
+// CHECK-NEXT: "offset": 1995,
+// CHECK-NEXT: "col": 9,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableArray *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "LValueToRValue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "LValueToRValue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "DeclRefExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclRefExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 9,
+// CHECK-NEXT: "offset": 1995,
+// CHECK-NEXT: "col": 9,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 9,
+// CHECK-NEXT: "offset": 1995,
+// CHECK-NEXT: "col": 9,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableArray *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "referencedDecl": {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ParmVarDecl",
-// CHECK-NEXT: "name": "Array",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "name": "Array",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableArray *"
// CHECK-NEXT: }
@@ -2714,106 +2971,116 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 15,
+// CHECK-NEXT: "offset": 2001,
+// CHECK-NEXT: "col": 15,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 15,
+// CHECK-NEXT: "offset": 2001,
+// CHECK-NEXT: "col": 15,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 15,
+// CHECK-NEXT: "offset": 2001,
+// CHECK-NEXT: "col": 15,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 15,
+// CHECK-NEXT: "offset": 2001,
+// CHECK-NEXT: "col": 15,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "value": "0"
// CHECK-NEXT: }
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 9,
+// CHECK-NEXT: "offset": 1995,
+// CHECK-NEXT: "col": 9,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 9,
+// CHECK-NEXT: "offset": 1995,
+// CHECK-NEXT: "col": 9,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableArray *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 9,
+// CHECK-NEXT: "offset": 1995,
+// CHECK-NEXT: "col": 9,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 9,
+// CHECK-NEXT: "offset": 1995,
+// CHECK-NEXT: "col": 9,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableArray *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "LValueToRValue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "LValueToRValue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "DeclRefExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclRefExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 9,
+// CHECK-NEXT: "offset": 1995,
+// CHECK-NEXT: "col": 9,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 9,
+// CHECK-NEXT: "offset": 1995,
+// CHECK-NEXT: "col": 9,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableArray *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "referencedDecl": {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ParmVarDecl",
-// CHECK-NEXT: "name": "Array",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "name": "Array",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableArray *"
// CHECK-NEXT: }
@@ -2822,126 +3089,138 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 15,
+// CHECK-NEXT: "offset": 2001,
+// CHECK-NEXT: "col": 15,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 15,
+// CHECK-NEXT: "offset": 2001,
+// CHECK-NEXT: "col": 15,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 15,
+// CHECK-NEXT: "offset": 2001,
+// CHECK-NEXT: "col": 15,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 15,
+// CHECK-NEXT: "offset": 2001,
+// CHECK-NEXT: "col": 15,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "value": "0"
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCMessageExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCMessageExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 9,
+// CHECK-NEXT: "offset": 1995,
+// CHECK-NEXT: "col": 9,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 9,
+// CHECK-NEXT: "offset": 1995,
+// CHECK-NEXT: "col": 9,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
-// CHECK-NEXT: "desugaredQualType": "id",
-// CHECK-NEXT: "qualType": "id",
+// CHECK-NEXT: "desugaredQualType": "id",
+// CHECK-NEXT: "qualType": "id",
// CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "selector": "objectAtIndexedSubscript:",
-// CHECK-NEXT: "receiverKind": "instance",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "selector": "objectAtIndexedSubscript:",
+// CHECK-NEXT: "receiverKind": "instance",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 9,
+// CHECK-NEXT: "offset": 1995,
+// CHECK-NEXT: "col": 9,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 9,
+// CHECK-NEXT: "offset": 1995,
+// CHECK-NEXT: "col": 9,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableArray *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 9,
+// CHECK-NEXT: "offset": 1995,
+// CHECK-NEXT: "col": 9,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 9,
+// CHECK-NEXT: "offset": 1995,
+// CHECK-NEXT: "col": 9,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableArray *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "LValueToRValue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "LValueToRValue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "DeclRefExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclRefExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 9,
+// CHECK-NEXT: "offset": 1995,
+// CHECK-NEXT: "col": 9,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 9,
+// CHECK-NEXT: "offset": 1995,
+// CHECK-NEXT: "col": 9,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableArray *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "referencedDecl": {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ParmVarDecl",
-// CHECK-NEXT: "name": "Array",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "name": "Array",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableArray *"
// CHECK-NEXT: }
@@ -2950,42 +3229,46 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 15,
+// CHECK-NEXT: "offset": 2001,
+// CHECK-NEXT: "col": 15,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 15,
+// CHECK-NEXT: "offset": 2001,
+// CHECK-NEXT: "col": 15,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 15,
+// CHECK-NEXT: "offset": 2001,
+// CHECK-NEXT: "col": 15,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 15,
+// CHECK-NEXT: "offset": 2001,
+// CHECK-NEXT: "col": 15,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "value": "0"
// CHECK-NEXT: }
// CHECK-NEXT: ]
@@ -2997,124 +3280,136 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "PseudoObjectExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "PseudoObjectExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "line": 85,
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 2008,
+// CHECK-NEXT: "line": 85,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 24,
+// CHECK-NEXT: "offset": 2030,
+// CHECK-NEXT: "col": 24,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
-// CHECK-NEXT: "desugaredQualType": "id",
-// CHECK-NEXT: "qualType": "id",
+// CHECK-NEXT: "desugaredQualType": "id",
+// CHECK-NEXT: "qualType": "id",
// CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "BinaryOperator",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "BinaryOperator",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 2008,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 24,
+// CHECK-NEXT: "offset": 2030,
+// CHECK-NEXT: "col": 24,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "opcode": "=",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "opcode": "=",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCSubscriptRefExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCSubscriptRefExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 2008,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 13,
+// CHECK-NEXT: "offset": 2019,
+// CHECK-NEXT: "col": 13,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "<pseudo-object type>"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
-// CHECK-NEXT: "subscriptKind": "dictionary",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: "subscriptKind": "dictionary",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 2008,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 2008,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 4
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableDictionary *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 2008,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 2008,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 4
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableDictionary *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "LValueToRValue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "LValueToRValue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "DeclRefExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclRefExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 2008,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 2008,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 4
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableDictionary *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "referencedDecl": {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ParmVarDecl",
-// CHECK-NEXT: "name": "Dict",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "name": "Dict",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableDictionary *"
// CHECK-NEXT: }
@@ -3123,60 +3418,66 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "offset": 2013,
+// CHECK-NEXT: "col": 7,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "offset": 2014,
+// CHECK-NEXT: "col": 8,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSString *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCStringLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCStringLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "offset": 2013,
+// CHECK-NEXT: "col": 7,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "offset": 2014,
+// CHECK-NEXT: "col": 8,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSString *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "StringLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "StringLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "offset": 2014,
+// CHECK-NEXT: "col": 8,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "offset": 2014,
+// CHECK-NEXT: "col": 8,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "char [4]"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "value": "\"key\""
// CHECK-NEXT: }
// CHECK-NEXT: ]
@@ -3184,61 +3485,67 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 17,
+// CHECK-NEXT: "offset": 2023,
+// CHECK-NEXT: "col": 17,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 24,
+// CHECK-NEXT: "offset": 2030,
+// CHECK-NEXT: "col": 24,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "CStyleCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CStyleCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 17,
+// CHECK-NEXT: "offset": 2023,
+// CHECK-NEXT: "col": 17,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 24,
+// CHECK-NEXT: "offset": 2030,
+// CHECK-NEXT: "col": 24,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "NullToPointer",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "NullToPointer",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 24,
+// CHECK-NEXT: "offset": 2030,
+// CHECK-NEXT: "col": 24,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 24,
+// CHECK-NEXT: "offset": 2030,
+// CHECK-NEXT: "col": 24,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "value": "0"
// CHECK-NEXT: }
// CHECK-NEXT: ]
@@ -3246,65 +3553,71 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 2008,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 2008,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 4
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableDictionary *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 2008,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 2008,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 4
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableDictionary *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "LValueToRValue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "LValueToRValue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "DeclRefExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclRefExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 2008,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 2008,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 4
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableDictionary *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "referencedDecl": {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ParmVarDecl",
-// CHECK-NEXT: "name": "Dict",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "name": "Dict",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableDictionary *"
// CHECK-NEXT: }
@@ -3313,221 +3626,243 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "offset": 2013,
+// CHECK-NEXT: "col": 7,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "offset": 2014,
+// CHECK-NEXT: "col": 8,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSString *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCStringLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCStringLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "offset": 2013,
+// CHECK-NEXT: "col": 7,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "offset": 2014,
+// CHECK-NEXT: "col": 8,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSString *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "StringLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "StringLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "offset": 2014,
+// CHECK-NEXT: "col": 8,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "offset": 2014,
+// CHECK-NEXT: "col": 8,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "char [4]"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "value": "\"key\""
// CHECK-NEXT: }
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 17,
+// CHECK-NEXT: "offset": 2023,
+// CHECK-NEXT: "col": 17,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 24,
+// CHECK-NEXT: "offset": 2030,
+// CHECK-NEXT: "col": 24,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "CStyleCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CStyleCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 17,
+// CHECK-NEXT: "offset": 2023,
+// CHECK-NEXT: "col": 17,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 24,
+// CHECK-NEXT: "offset": 2030,
+// CHECK-NEXT: "col": 24,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "NullToPointer",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "NullToPointer",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 24,
+// CHECK-NEXT: "offset": 2030,
+// CHECK-NEXT: "col": 24,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 24,
+// CHECK-NEXT: "offset": 2030,
+// CHECK-NEXT: "col": 24,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "value": "0"
// CHECK-NEXT: }
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 17,
+// CHECK-NEXT: "offset": 2023,
+// CHECK-NEXT: "col": 17,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 24,
+// CHECK-NEXT: "offset": 2030,
+// CHECK-NEXT: "col": 24,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
-// CHECK-NEXT: "desugaredQualType": "id",
-// CHECK-NEXT: "qualType": "id",
+// CHECK-NEXT: "desugaredQualType": "id",
+// CHECK-NEXT: "qualType": "id",
// CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 17,
+// CHECK-NEXT: "offset": 2023,
+// CHECK-NEXT: "col": 17,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 24,
+// CHECK-NEXT: "offset": 2030,
+// CHECK-NEXT: "col": 24,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
-// CHECK-NEXT: "desugaredQualType": "id",
-// CHECK-NEXT: "qualType": "id",
+// CHECK-NEXT: "desugaredQualType": "id",
+// CHECK-NEXT: "qualType": "id",
// CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "NullToPointer",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "NullToPointer",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 17,
+// CHECK-NEXT: "offset": 2023,
+// CHECK-NEXT: "col": 17,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 24,
+// CHECK-NEXT: "offset": 2030,
+// CHECK-NEXT: "col": 24,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "CStyleCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CStyleCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 17,
+// CHECK-NEXT: "offset": 2023,
+// CHECK-NEXT: "col": 17,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 24,
+// CHECK-NEXT: "offset": 2030,
+// CHECK-NEXT: "col": 24,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "NullToPointer",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "NullToPointer",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 24,
+// CHECK-NEXT: "offset": 2030,
+// CHECK-NEXT: "col": 24,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 24,
+// CHECK-NEXT: "offset": 2030,
+// CHECK-NEXT: "col": 24,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "value": "0"
// CHECK-NEXT: }
// CHECK-NEXT: ]
@@ -3537,85 +3872,93 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCMessageExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCMessageExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 2008,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 2008,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 4
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "selector": "setObject:forKeyedSubscript:",
-// CHECK-NEXT: "receiverKind": "instance",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "selector": "setObject:forKeyedSubscript:",
+// CHECK-NEXT: "receiverKind": "instance",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 2008,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 2008,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 4
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableDictionary *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 2008,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 2008,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 4
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableDictionary *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "LValueToRValue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "LValueToRValue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "DeclRefExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclRefExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 2008,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 2008,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 4
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableDictionary *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "referencedDecl": {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ParmVarDecl",
-// CHECK-NEXT: "name": "Dict",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "name": "Dict",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableDictionary *"
// CHECK-NEXT: }
@@ -3624,102 +3967,112 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 17,
+// CHECK-NEXT: "offset": 2023,
+// CHECK-NEXT: "col": 17,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 24,
+// CHECK-NEXT: "offset": 2030,
+// CHECK-NEXT: "col": 24,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
-// CHECK-NEXT: "desugaredQualType": "id",
-// CHECK-NEXT: "qualType": "id",
+// CHECK-NEXT: "desugaredQualType": "id",
+// CHECK-NEXT: "qualType": "id",
// CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 17,
+// CHECK-NEXT: "offset": 2023,
+// CHECK-NEXT: "col": 17,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 24,
+// CHECK-NEXT: "offset": 2030,
+// CHECK-NEXT: "col": 24,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
-// CHECK-NEXT: "desugaredQualType": "id",
-// CHECK-NEXT: "qualType": "id",
+// CHECK-NEXT: "desugaredQualType": "id",
+// CHECK-NEXT: "qualType": "id",
// CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "NullToPointer",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "NullToPointer",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 17,
+// CHECK-NEXT: "offset": 2023,
+// CHECK-NEXT: "col": 17,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 24,
+// CHECK-NEXT: "offset": 2030,
+// CHECK-NEXT: "col": 24,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "CStyleCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CStyleCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 17,
+// CHECK-NEXT: "offset": 2023,
+// CHECK-NEXT: "col": 17,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 24,
+// CHECK-NEXT: "offset": 2030,
+// CHECK-NEXT: "col": 24,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "NullToPointer",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "NullToPointer",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 24,
+// CHECK-NEXT: "offset": 2030,
+// CHECK-NEXT: "col": 24,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 24,
+// CHECK-NEXT: "offset": 2030,
+// CHECK-NEXT: "col": 24,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "value": "0"
// CHECK-NEXT: }
// CHECK-NEXT: ]
@@ -3729,81 +4082,89 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "offset": 2013,
+// CHECK-NEXT: "col": 7,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "offset": 2014,
+// CHECK-NEXT: "col": 8,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
-// CHECK-NEXT: "desugaredQualType": "id",
-// CHECK-NEXT: "qualType": "id",
+// CHECK-NEXT: "desugaredQualType": "id",
+// CHECK-NEXT: "qualType": "id",
// CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "BitCast",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "BitCast",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "offset": 2013,
+// CHECK-NEXT: "col": 7,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "offset": 2014,
+// CHECK-NEXT: "col": 8,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSString *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCStringLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCStringLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 7,
+// CHECK-NEXT: "offset": 2013,
+// CHECK-NEXT: "col": 7,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "offset": 2014,
+// CHECK-NEXT: "col": 8,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSString *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "StringLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "StringLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "offset": 2014,
+// CHECK-NEXT: "col": 8,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "offset": 2014,
+// CHECK-NEXT: "col": 8,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "char [4]"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "value": "\"key\""
// CHECK-NEXT: }
// CHECK-NEXT: ]
@@ -3815,156 +4176,170 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "BinaryOperator",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "BinaryOperator",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "line": 86,
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 2034,
+// CHECK-NEXT: "line": 86,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 17,
+// CHECK-NEXT: "offset": 2049,
+// CHECK-NEXT: "col": 17,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
-// CHECK-NEXT: "desugaredQualType": "id",
-// CHECK-NEXT: "qualType": "id",
+// CHECK-NEXT: "desugaredQualType": "id",
+// CHECK-NEXT: "qualType": "id",
// CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "opcode": "=",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "opcode": "=",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "DeclRefExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclRefExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 2034,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 2,
+// CHECK-NEXT: "offset": 2034,
+// CHECK-NEXT: "col": 2,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
-// CHECK-NEXT: "desugaredQualType": "id",
-// CHECK-NEXT: "qualType": "id",
+// CHECK-NEXT: "desugaredQualType": "id",
+// CHECK-NEXT: "qualType": "id",
// CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "referencedDecl": {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "VarDecl",
-// CHECK-NEXT: "name": "i",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "VarDecl",
+// CHECK-NEXT: "name": "i",
// CHECK-NEXT: "type": {
-// CHECK-NEXT: "desugaredQualType": "id",
-// CHECK-NEXT: "qualType": "id",
+// CHECK-NEXT: "desugaredQualType": "id",
+// CHECK-NEXT: "qualType": "id",
// CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}"
// CHECK-NEXT: }
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "PseudoObjectExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "PseudoObjectExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 2038,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 17,
+// CHECK-NEXT: "offset": 2049,
+// CHECK-NEXT: "col": 17,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
-// CHECK-NEXT: "desugaredQualType": "id",
-// CHECK-NEXT: "qualType": "id",
+// CHECK-NEXT: "desugaredQualType": "id",
+// CHECK-NEXT: "qualType": "id",
// CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCSubscriptRefExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCSubscriptRefExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 2038,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 17,
+// CHECK-NEXT: "offset": 2049,
+// CHECK-NEXT: "col": 17,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "<pseudo-object type>"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
-// CHECK-NEXT: "subscriptKind": "dictionary",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: "subscriptKind": "dictionary",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 2038,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 2038,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 4
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableDictionary *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 2038,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 2038,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 4
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableDictionary *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "LValueToRValue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "LValueToRValue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "DeclRefExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclRefExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 2038,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 2038,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 4
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableDictionary *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "referencedDecl": {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ParmVarDecl",
-// CHECK-NEXT: "name": "Dict",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "name": "Dict",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableDictionary *"
// CHECK-NEXT: }
@@ -3973,60 +4348,66 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "offset": 2043,
+// CHECK-NEXT: "col": 11,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 12,
+// CHECK-NEXT: "offset": 2044,
+// CHECK-NEXT: "col": 12,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSString *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCStringLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCStringLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "offset": 2043,
+// CHECK-NEXT: "col": 11,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 12,
+// CHECK-NEXT: "offset": 2044,
+// CHECK-NEXT: "col": 12,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSString *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "StringLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "StringLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 12,
+// CHECK-NEXT: "offset": 2044,
+// CHECK-NEXT: "col": 12,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 12,
+// CHECK-NEXT: "offset": 2044,
+// CHECK-NEXT: "col": 12,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "char [4]"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "value": "\"key\""
// CHECK-NEXT: }
// CHECK-NEXT: ]
@@ -4034,65 +4415,71 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 2038,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 2038,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 4
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableDictionary *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 2038,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 2038,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 4
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableDictionary *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "LValueToRValue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "LValueToRValue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "DeclRefExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclRefExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 2038,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 2038,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 4
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableDictionary *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "referencedDecl": {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ParmVarDecl",
-// CHECK-NEXT: "name": "Dict",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "name": "Dict",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableDictionary *"
// CHECK-NEXT: }
@@ -4101,146 +4488,160 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "offset": 2043,
+// CHECK-NEXT: "col": 11,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 12,
+// CHECK-NEXT: "offset": 2044,
+// CHECK-NEXT: "col": 12,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSString *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCStringLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCStringLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "offset": 2043,
+// CHECK-NEXT: "col": 11,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 12,
+// CHECK-NEXT: "offset": 2044,
+// CHECK-NEXT: "col": 12,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSString *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "StringLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "StringLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 12,
+// CHECK-NEXT: "offset": 2044,
+// CHECK-NEXT: "col": 12,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 12,
+// CHECK-NEXT: "offset": 2044,
+// CHECK-NEXT: "col": 12,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "char [4]"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "value": "\"key\""
// CHECK-NEXT: }
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCMessageExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCMessageExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 2038,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 2038,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 4
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
-// CHECK-NEXT: "desugaredQualType": "id",
-// CHECK-NEXT: "qualType": "id",
+// CHECK-NEXT: "desugaredQualType": "id",
+// CHECK-NEXT: "qualType": "id",
// CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "selector": "objectForKeyedSubscript:",
-// CHECK-NEXT: "receiverKind": "instance",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "selector": "objectForKeyedSubscript:",
+// CHECK-NEXT: "receiverKind": "instance",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 2038,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 2038,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 4
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableDictionary *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 2038,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 2038,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 4
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableDictionary *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "LValueToRValue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "LValueToRValue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "DeclRefExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclRefExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 2038,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 2038,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 4
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableDictionary *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "referencedDecl": {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ParmVarDecl",
-// CHECK-NEXT: "name": "Dict",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "name": "Dict",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSMutableDictionary *"
// CHECK-NEXT: }
@@ -4249,81 +4650,89 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "offset": 2043,
+// CHECK-NEXT: "col": 11,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 12,
+// CHECK-NEXT: "offset": 2044,
+// CHECK-NEXT: "col": 12,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
-// CHECK-NEXT: "desugaredQualType": "id",
-// CHECK-NEXT: "qualType": "id",
+// CHECK-NEXT: "desugaredQualType": "id",
+// CHECK-NEXT: "qualType": "id",
// CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "BitCast",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "BitCast",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "OpaqueValueExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "OpaqueValueExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "offset": 2043,
+// CHECK-NEXT: "col": 11,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 12,
+// CHECK-NEXT: "offset": 2044,
+// CHECK-NEXT: "col": 12,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSString *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCStringLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCStringLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 11,
+// CHECK-NEXT: "offset": 2043,
+// CHECK-NEXT: "col": 11,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 12,
+// CHECK-NEXT: "offset": 2044,
+// CHECK-NEXT: "col": 12,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "NSString *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "StringLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "StringLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 12,
+// CHECK-NEXT: "offset": 2044,
+// CHECK-NEXT: "col": 12,
// CHECK-NEXT: "tokLen": 5
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 12,
+// CHECK-NEXT: "offset": 2044,
+// CHECK-NEXT: "col": 12,
// CHECK-NEXT: "tokLen": 5
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "char [4]"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "value": "\"key\""
// CHECK-NEXT: }
// CHECK-NEXT: ]
@@ -4344,155 +4753,171 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: }
-// CHECK: "kind": "FunctionDecl",
+// CHECK: "kind": "FunctionDecl",
// CHECK-NEXT: "loc": {
-// CHECK-NEXT: "file": "{{.*}}",
-// CHECK-NEXT: "line": 89,
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 2060,
+// CHECK-NEXT: "file": "{{.*}}",
+// CHECK-NEXT: "line": 89,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 15
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "offset": 2055,
+// CHECK-NEXT: "col": 1,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "line": 91,
-// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "offset": 2105,
+// CHECK-NEXT: "line": 91,
+// CHECK-NEXT: "col": 1,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
-// CHECK-NEXT: "name": "TestObjCIVarRef",
+// CHECK-NEXT: },
+// CHECK-NEXT: "name": "TestObjCIVarRef",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void (I *)"
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
// CHECK-NEXT: "loc": {
-// CHECK-NEXT: "line": 89,
-// CHECK-NEXT: "col": 25,
+// CHECK-NEXT: "offset": 2079,
+// CHECK-NEXT: "line": 89,
+// CHECK-NEXT: "col": 25,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 22,
+// CHECK-NEXT: "offset": 2076,
+// CHECK-NEXT: "col": 22,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 25,
+// CHECK-NEXT: "offset": 2079,
+// CHECK-NEXT: "col": 25,
// CHECK-NEXT: "tokLen": 3
// CHECK-NEXT: }
-// CHECK-NEXT: },
-// CHECK-NEXT: "isUsed": true,
-// CHECK-NEXT: "name": "Ptr",
+// CHECK-NEXT: },
+// CHECK-NEXT: "isUsed": true,
+// CHECK-NEXT: "name": "Ptr",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "I *"
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "CompoundStmt",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CompoundStmt",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 30,
+// CHECK-NEXT: "offset": 2084,
+// CHECK-NEXT: "col": 30,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "line": 91,
-// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "offset": 2105,
+// CHECK-NEXT: "line": 91,
+// CHECK-NEXT: "col": 1,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "BinaryOperator",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "BinaryOperator",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "line": 90,
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 2088,
+// CHECK-NEXT: "line": 90,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 17,
+// CHECK-NEXT: "offset": 2102,
+// CHECK-NEXT: "col": 17,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "opcode": "=",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "opcode": "=",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCIvarRefExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCIvarRefExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 2088,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 8,
+// CHECK-NEXT: "offset": 2093,
+// CHECK-NEXT: "col": 8,
// CHECK-NEXT: "tokLen": 6
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "decl": {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCIvarDecl",
-// CHECK-NEXT: "name": "public",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCIvarDecl",
+// CHECK-NEXT: "name": "public",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
// CHECK-NEXT: }
-// CHECK-NEXT: },
-// CHECK-NEXT: "isArrow": true,
+// CHECK-NEXT: },
+// CHECK-NEXT: "isArrow": true,
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ImplicitCastExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ImplicitCastExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 2088,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 2088,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "I *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
-// CHECK-NEXT: "castKind": "LValueToRValue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: "castKind": "LValueToRValue",
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "DeclRefExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "DeclRefExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 2088,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 2088,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 3
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "I *"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "lvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "lvalue",
// CHECK-NEXT: "referencedDecl": {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ParmVarDecl",
-// CHECK-NEXT: "name": "Ptr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ParmVarDecl",
+// CHECK-NEXT: "name": "Ptr",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "I *"
// CHECK-NEXT: }
@@ -4501,24 +4926,26 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: ]
// CHECK-NEXT: }
// CHECK-NEXT: ]
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "IntegerLiteral",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "IntegerLiteral",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 17,
+// CHECK-NEXT: "offset": 2102,
+// CHECK-NEXT: "col": 17,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 17,
+// CHECK-NEXT: "offset": 2102,
+// CHECK-NEXT: "col": 17,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "int"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "value": "0"
// CHECK-NEXT: }
// CHECK-NEXT: ]
@@ -4529,87 +4956,96 @@ void TestObjCBoolLiteral() {
// CHECK-NEXT: }
-// CHECK: "kind": "FunctionDecl",
+// CHECK: "kind": "FunctionDecl",
// CHECK-NEXT: "loc": {
-// CHECK-NEXT: "file": "{{.*}}",
-// CHECK-NEXT: "line": 93,
-// CHECK-NEXT: "col": 6,
+// CHECK-NEXT: "offset": 2113,
+// CHECK-NEXT: "file": "{{.*}}",
+// CHECK-NEXT: "line": 93,
+// CHECK-NEXT: "col": 6,
// CHECK-NEXT: "tokLen": 19
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "offset": 2108,
+// CHECK-NEXT: "col": 1,
// CHECK-NEXT: "tokLen": 4
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "line": 96,
-// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "offset": 2164,
+// CHECK-NEXT: "line": 96,
+// CHECK-NEXT: "col": 1,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
-// CHECK-NEXT: "name": "TestObjCBoolLiteral",
+// CHECK-NEXT: },
+// CHECK-NEXT: "name": "TestObjCBoolLiteral",
// CHECK-NEXT: "type": {
// CHECK-NEXT: "qualType": "void ()"
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "CompoundStmt",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "CompoundStmt",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "line": 93,
-// CHECK-NEXT: "col": 28,
+// CHECK-NEXT: "offset": 2135,
+// CHECK-NEXT: "line": 93,
+// CHECK-NEXT: "col": 28,
// CHECK-NEXT: "tokLen": 1
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "line": 96,
-// CHECK-NEXT: "col": 1,
+// CHECK-NEXT: "offset": 2164,
+// CHECK-NEXT: "line": 96,
+// CHECK-NEXT: "col": 1,
// CHECK-NEXT: "tokLen": 1
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCBoolLiteralExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCBoolLiteralExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "line": 94,
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 2139,
+// CHECK-NEXT: "line": 94,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 10
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 2139,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 10
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
-// CHECK-NEXT: "desugaredQualType": "signed char",
-// CHECK-NEXT: "qualType": "BOOL",
+// CHECK-NEXT: "desugaredQualType": "signed char",
+// CHECK-NEXT: "qualType": "BOOL",
// CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "value": "__objc_yes"
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: {
-// CHECK-NEXT: "id": "0x{{.*}}",
-// CHECK-NEXT: "kind": "ObjCBoolLiteralExpr",
+// CHECK-NEXT: "id": "0x{{.*}}",
+// CHECK-NEXT: "kind": "ObjCBoolLiteralExpr",
// CHECK-NEXT: "range": {
// CHECK-NEXT: "begin": {
-// CHECK-NEXT: "line": 95,
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 2153,
+// CHECK-NEXT: "line": 95,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 9
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "end": {
-// CHECK-NEXT: "col": 3,
+// CHECK-NEXT: "offset": 2153,
+// CHECK-NEXT: "col": 3,
// CHECK-NEXT: "tokLen": 9
// CHECK-NEXT: }
-// CHECK-NEXT: },
+// CHECK-NEXT: },
// CHECK-NEXT: "type": {
-// CHECK-NEXT: "desugaredQualType": "signed char",
-// CHECK-NEXT: "qualType": "BOOL",
+// CHECK-NEXT: "desugaredQualType": "signed char",
+// CHECK-NEXT: "qualType": "BOOL",
// CHECK-NEXT: "typeAliasDeclId": "0x{{.*}}"
-// CHECK-NEXT: },
-// CHECK-NEXT: "valueCategory": "rvalue",
+// CHECK-NEXT: },
+// CHECK-NEXT: "valueCategory": "rvalue",
// CHECK-NEXT: "value": "__objc_no"
// CHECK-NEXT: }
// CHECK-NEXT: ]