[clang] [clang][ASTDump] Dump value of structural TemplateArguments (PR #126937)

via cfe-commits cfe-commits at lists.llvm.org
Wed Feb 12 08:30:02 PST 2025


llvmbot wrote:


<!--LLVM PR SUMMARY COMMENT-->

@llvm/pr-subscribers-clang

Author: Michael Buch (Michael137)

<details>
<summary>Changes</summary>

`TemplateArgument::ArgKind::StructuralValue` was introduced in https://github.com/llvm/llvm-project/pull/78041

The AST dump for such template arguments would yield the following:
```
|-ClassTemplateSpecializationDecl
  `- TemplateArgument
```

With this patch we would dump as:
```
|-ClassTemplateSpecializationDecl
  `-TemplateArgument structural '1.000000e+00'
```

---

Patch is 155.45 KiB, truncated to 20.00 KiB below, full version: https://github.com/llvm/llvm-project/pull/126937.diff


3 Files Affected:

- (modified) clang/include/clang/AST/TextNodeDumper.h (+1) 
- (modified) clang/lib/AST/TextNodeDumper.cpp (+5) 
- (modified) clang/test/AST/ast-dump-templates.cpp (+679-671) 


``````````diff
diff --git a/clang/include/clang/AST/TextNodeDumper.h b/clang/include/clang/AST/TextNodeDumper.h
index bfd205ffb0d99..b0eff62bf9a9f 100644
--- a/clang/include/clang/AST/TextNodeDumper.h
+++ b/clang/include/clang/AST/TextNodeDumper.h
@@ -253,6 +253,7 @@ class TextNodeDumper
   void VisitTemplateExpansionTemplateArgument(const TemplateArgument &TA);
   void VisitExpressionTemplateArgument(const TemplateArgument &TA);
   void VisitPackTemplateArgument(const TemplateArgument &TA);
+  void VisitStructuralValueTemplateArgument(const TemplateArgument &TA);
 
   void VisitIfStmt(const IfStmt *Node);
   void VisitSwitchStmt(const SwitchStmt *Node);
diff --git a/clang/lib/AST/TextNodeDumper.cpp b/clang/lib/AST/TextNodeDumper.cpp
index 6da1f776b4b63..98f6e8a26ffb1 100644
--- a/clang/lib/AST/TextNodeDumper.cpp
+++ b/clang/lib/AST/TextNodeDumper.cpp
@@ -1226,6 +1226,11 @@ void TextNodeDumper::VisitIntegralTemplateArgument(const TemplateArgument &TA) {
   dumpTemplateArgument(TA);
 }
 
+void TextNodeDumper::VisitStructuralValueTemplateArgument(const TemplateArgument &TA) {
+  OS << " structural";
+  dumpTemplateArgument(TA);
+}
+
 void TextNodeDumper::dumpTemplateName(TemplateName TN, StringRef Label) {
   AddChild(Label, [=] {
     {
diff --git a/clang/test/AST/ast-dump-templates.cpp b/clang/test/AST/ast-dump-templates.cpp
index 86af8c50f3174..11b159b8a5304 100644
--- a/clang/test/AST/ast-dump-templates.cpp
+++ b/clang/test/AST/ast-dump-templates.cpp
@@ -3,6 +3,7 @@
 // RUN: FileCheck < %t %s -check-prefix=CHECK1
 // RUN: FileCheck < %t %s -check-prefix=CHECK2
 // RUN: %clang_cc1 -triple x86_64-unknown-unknown -std=c++17 -ast-dump %s | FileCheck --check-prefix=DUMP %s
+// RUN: %clang_cc1 -triple x86_64-unknown-unknown -std=c++20 -ast-dump -DCXX20=1 %s | FileCheck --check-prefix=DUMP-CPP20 %s
 
 // Test with serialization:
 // RUN: %clang_cc1 -triple x86_64-unknown-unknown -std=c++17 -emit-pch -o %t %s
@@ -100,6 +101,13 @@ void test() {
 // differently in this way.
 // CHECK1: {{^    }}template<> struct foo<1, 0 + 0L> {
 template struct foo<1, 0 + 0L>;
+
+#ifdef CXX20
+// DUMP-CPP20: TemplateArgument structural '1.{{.*}}'
+// DUMP-CPP20: TemplateArgument structural '-2.{{.*}}'
+template struct foo<1, 1.0f>;
+template struct foo<1, -2.0>;
+#endif // CXX20
 }
 
 namespace test5 {
@@ -294,22 +302,22 @@ namespace test7 {
 // JSON-NEXT:    "id": "0x{{.*}}",
 // JSON-NEXT:    "kind": "ClassTemplateDecl",
 // JSON-NEXT:    "loc": {
-// JSON-NEXT:     "offset": 812,
+// JSON-NEXT:     "offset": 937,
 // JSON-NEXT:     "file": "{{.*}}",
-// JSON-NEXT:     "line": 15,
+// JSON-NEXT:     "line": 16,
 // JSON-NEXT:     "col": 8,
 // JSON-NEXT:     "tokLen": 3
 // JSON-NEXT:    },
 // JSON-NEXT:    "range": {
 // JSON-NEXT:     "begin": {
-// JSON-NEXT:      "offset": 765,
-// JSON-NEXT:      "line": 14,
+// JSON-NEXT:      "offset": 890,
+// JSON-NEXT:      "line": 15,
 // JSON-NEXT:      "col": 1,
 // JSON-NEXT:      "tokLen": 8
 // JSON-NEXT:     },
 // JSON-NEXT:     "end": {
-// JSON-NEXT:      "offset": 879,
-// JSON-NEXT:      "line": 19,
+// JSON-NEXT:      "offset": 1004,
+// JSON-NEXT:      "line": 20,
 // JSON-NEXT:      "col": 1,
 // JSON-NEXT:      "tokLen": 1
 // JSON-NEXT:     }
@@ -320,19 +328,19 @@ namespace test7 {
 // JSON-NEXT:      "id": "0x{{.*}}",
 // JSON-NEXT:      "kind": "NonTypeTemplateParmDecl",
 // JSON-NEXT:      "loc": {
-// JSON-NEXT:       "offset": 779,
-// JSON-NEXT:       "line": 14,
+// JSON-NEXT:       "offset": 904,
+// JSON-NEXT:       "line": 15,
 // JSON-NEXT:       "col": 15,
 // JSON-NEXT:       "tokLen": 1
 // JSON-NEXT:      },
 // JSON-NEXT:      "range": {
 // JSON-NEXT:       "begin": {
-// JSON-NEXT:        "offset": 775,
+// JSON-NEXT:        "offset": 900,
 // JSON-NEXT:        "col": 11,
 // JSON-NEXT:        "tokLen": 3
 // JSON-NEXT:       },
 // JSON-NEXT:       "end": {
-// JSON-NEXT:        "offset": 779,
+// JSON-NEXT:        "offset": 904,
 // JSON-NEXT:        "col": 15,
 // JSON-NEXT:        "tokLen": 1
 // JSON-NEXT:       }
@@ -349,18 +357,18 @@ namespace test7 {
 // JSON-NEXT:      "id": "0x{{.*}}",
 // JSON-NEXT:      "kind": "TemplateTypeParmDecl",
 // JSON-NEXT:      "loc": {
-// JSON-NEXT:       "offset": 791,
+// JSON-NEXT:       "offset": 916,
 // JSON-NEXT:       "col": 27,
 // JSON-NEXT:       "tokLen": 1
 // JSON-NEXT:      },
 // JSON-NEXT:      "range": {
 // JSON-NEXT:       "begin": {
-// JSON-NEXT:        "offset": 782,
+// JSON-NEXT:        "offset": 907,
 // JSON-NEXT:        "col": 18,
 // JSON-NEXT:        "tokLen": 8
 // JSON-NEXT:       },
 // JSON-NEXT:       "end": {
-// JSON-NEXT:        "offset": 791,
+// JSON-NEXT:        "offset": 916,
 // JSON-NEXT:        "col": 27,
 // JSON-NEXT:        "tokLen": 1
 // JSON-NEXT:       }
@@ -375,18 +383,18 @@ namespace test7 {
 // JSON-NEXT:      "id": "0x{{.*}}",
 // JSON-NEXT:      "kind": "NonTypeTemplateParmDecl",
 // JSON-NEXT:      "loc": {
-// JSON-NEXT:       "offset": 798,
+// JSON-NEXT:       "offset": 923,
 // JSON-NEXT:       "col": 34,
 // JSON-NEXT:       "tokLen": 1
 // JSON-NEXT:      },
 // JSON-NEXT:      "range": {
 // JSON-NEXT:       "begin": {
-// JSON-NEXT:        "offset": 794,
+// JSON-NEXT:        "offset": 919,
 // JSON-NEXT:        "col": 30,
 // JSON-NEXT:        "tokLen": 3
 // JSON-NEXT:       },
 // JSON-NEXT:       "end": {
-// JSON-NEXT:        "offset": 802,
+// JSON-NEXT:        "offset": 927,
 // JSON-NEXT:        "col": 38,
 // JSON-NEXT:        "tokLen": 1
 // JSON-NEXT:       }
@@ -407,12 +415,12 @@ namespace test7 {
 // JSON-NEXT:        "kind": "TemplateArgument",
 // JSON-NEXT:        "range": {
 // JSON-NEXT:         "begin": {
-// JSON-NEXT:          "offset": 802,
+// JSON-NEXT:          "offset": 927,
 // JSON-NEXT:          "col": 38,
 // JSON-NEXT:          "tokLen": 1
 // JSON-NEXT:         },
 // JSON-NEXT:         "end": {
-// JSON-NEXT:          "offset": 802,
+// JSON-NEXT:          "offset": 927,
 // JSON-NEXT:          "col": 38,
 // JSON-NEXT:          "tokLen": 1
 // JSON-NEXT:         }
@@ -424,12 +432,12 @@ namespace test7 {
 // JSON-NEXT:          "kind": "IntegerLiteral",
 // JSON-NEXT:          "range": {
 // JSON-NEXT:           "begin": {
-// JSON-NEXT:            "offset": 802,
+// JSON-NEXT:            "offset": 927,
 // JSON-NEXT:            "col": 38,
 // JSON-NEXT:            "tokLen": 1
 // JSON-NEXT:           },
 // JSON-NEXT:           "end": {
-// JSON-NEXT:            "offset": 802,
+// JSON-NEXT:            "offset": 927,
 // JSON-NEXT:            "col": 38,
 // JSON-NEXT:            "tokLen": 1
 // JSON-NEXT:           }
@@ -448,20 +456,20 @@ namespace test7 {
 // JSON-NEXT:      "id": "0x{{.*}}",
 // JSON-NEXT:      "kind": "CXXRecordDecl",
 // JSON-NEXT:      "loc": {
-// JSON-NEXT:       "offset": 812,
-// JSON-NEXT:       "line": 15,
+// JSON-NEXT:       "offset": 937,
+// JSON-NEXT:       "line": 16,
 // JSON-NEXT:       "col": 8,
 // JSON-NEXT:       "tokLen": 3
 // JSON-NEXT:      },
 // JSON-NEXT:      "range": {
 // JSON-NEXT:       "begin": {
-// JSON-NEXT:        "offset": 805,
+// JSON-NEXT:        "offset": 930,
 // JSON-NEXT:        "col": 1,
 // JSON-NEXT:        "tokLen": 6
 // JSON-NEXT:       },
 // JSON-NEXT:       "end": {
-// JSON-NEXT:        "offset": 879,
-// JSON-NEXT:        "line": 19,
+// JSON-NEXT:        "offset": 1004,
+// JSON-NEXT:        "line": 20,
 // JSON-NEXT:        "col": 1,
 // JSON-NEXT:        "tokLen": 1
 // JSON-NEXT:       }
@@ -517,19 +525,19 @@ namespace test7 {
 // JSON-NEXT:        "id": "0x{{.*}}",
 // JSON-NEXT:        "kind": "CXXRecordDecl",
 // JSON-NEXT:        "loc": {
-// JSON-NEXT:         "offset": 812,
-// JSON-NEXT:         "line": 15,
+// JSON-NEXT:         "offset": 937,
+// JSON-NEXT:         "line": 16,
 // JSON-NEXT:         "col": 8,
 // JSON-NEXT:         "tokLen": 3
 // JSON-NEXT:        },
 // JSON-NEXT:        "range": {
 // JSON-NEXT:         "begin": {
-// JSON-NEXT:          "offset": 805,
+// JSON-NEXT:          "offset": 930,
 // JSON-NEXT:          "col": 1,
 // JSON-NEXT:          "tokLen": 6
 // JSON-NEXT:         },
 // JSON-NEXT:         "end": {
-// JSON-NEXT:          "offset": 812,
+// JSON-NEXT:          "offset": 937,
 // JSON-NEXT:          "col": 8,
 // JSON-NEXT:          "tokLen": 3
 // JSON-NEXT:         }
@@ -543,19 +551,19 @@ namespace test7 {
 // JSON-NEXT:        "id": "0x{{.*}}",
 // JSON-NEXT:        "kind": "FieldDecl",
 // JSON-NEXT:        "loc": {
-// JSON-NEXT:         "offset": 824,
-// JSON-NEXT:         "line": 16,
+// JSON-NEXT:         "offset": 949,
+// JSON-NEXT:         "line": 17,
 // JSON-NEXT:         "col": 7,
 // JSON-NEXT:         "tokLen": 8
 // JSON-NEXT:        },
 // JSON-NEXT:        "range": {
 // JSON-NEXT:         "begin": {
-// JSON-NEXT:          "offset": 820,
+// JSON-NEXT:          "offset": 945,
 // JSON-NEXT:          "col": 3,
 // JSON-NEXT:          "tokLen": 3
 // JSON-NEXT:         },
 // JSON-NEXT:         "end": {
-// JSON-NEXT:          "offset": 824,
+// JSON-NEXT:          "offset": 949,
 // JSON-NEXT:          "col": 7,
 // JSON-NEXT:          "tokLen": 8
 // JSON-NEXT:         }
@@ -569,19 +577,19 @@ namespace test7 {
 // JSON-NEXT:        "id": "0x{{.*}}",
 // JSON-NEXT:        "kind": "CXXConstructorDecl",
 // JSON-NEXT:        "loc": {
-// JSON-NEXT:         "offset": 836,
-// JSON-NEXT:         "line": 17,
+// JSON-NEXT:         "offset": 961,
+// JSON-NEXT:         "line": 18,
 // JSON-NEXT:         "col": 3,
 // JSON-NEXT:         "tokLen": 3
 // JSON-NEXT:        },
 // JSON-NEXT:        "range": {
 // JSON-NEXT:         "begin": {
-// JSON-NEXT:          "offset": 836,
+// JSON-NEXT:          "offset": 961,
 // JSON-NEXT:          "col": 3,
 // JSON-NEXT:          "tokLen": 3
 // JSON-NEXT:         },
 // JSON-NEXT:         "end": {
-// JSON-NEXT:          "offset": 843,
+// JSON-NEXT:          "offset": 968,
 // JSON-NEXT:          "col": 10,
 // JSON-NEXT:          "tokLen": 1
 // JSON-NEXT:         }
@@ -596,12 +604,12 @@ namespace test7 {
 // JSON-NEXT:          "kind": "CompoundStmt",
 // JSON-NEXT:          "range": {
 // JSON-NEXT:           "begin": {
-// JSON-NEXT:            "offset": 842,
+// JSON-NEXT:            "offset": 967,
 // JSON-NEXT:            "col": 9,
 // JSON-NEXT:            "tokLen": 1
 // JSON-NEXT:           },
 // JSON-NEXT:           "end": {
-// JSON-NEXT:            "offset": 843,
+// JSON-NEXT:            "offset": 968,
 // JSON-NEXT:            "col": 10,
 // JSON-NEXT:            "tokLen": 1
 // JSON-NEXT:           }
@@ -613,19 +621,19 @@ namespace test7 {
 // JSON-NEXT:        "id": "0x{{.*}}",
 // JSON-NEXT:        "kind": "CXXMethodDecl",
 // JSON-NEXT:        "loc": {
-// JSON-NEXT:         "offset": 849,
-// JSON-NEXT:         "line": 18,
+// JSON-NEXT:         "offset": 974,
+// JSON-NEXT:         "line": 19,
 // JSON-NEXT:         "col": 5,
 // JSON-NEXT:         "tokLen": 6
 // JSON-NEXT:        },
 // JSON-NEXT:        "range": {
 // JSON-NEXT:         "begin": {
-// JSON-NEXT:          "offset": 847,
+// JSON-NEXT:          "offset": 972,
 // JSON-NEXT:          "col": 3,
 // JSON-NEXT:          "tokLen": 1
 // JSON-NEXT:         },
 // JSON-NEXT:         "end": {
-// JSON-NEXT:          "offset": 877,
+// JSON-NEXT:          "offset": 1002,
 // JSON-NEXT:          "col": 33,
 // JSON-NEXT:          "tokLen": 1
 // JSON-NEXT:         }
@@ -640,12 +648,12 @@ namespace test7 {
 // JSON-NEXT:          "kind": "CompoundStmt",
 // JSON-NEXT:          "range": {
 // JSON-NEXT:           "begin": {
-// JSON-NEXT:            "offset": 858,
+// JSON-NEXT:            "offset": 983,
 // JSON-NEXT:            "col": 14,
 // JSON-NEXT:            "tokLen": 1
 // JSON-NEXT:           },
 // JSON-NEXT:           "end": {
-// JSON-NEXT:            "offset": 877,
+// JSON-NEXT:            "offset": 1002,
 // JSON-NEXT:            "col": 33,
 // JSON-NEXT:            "tokLen": 1
 // JSON-NEXT:           }
@@ -656,12 +664,12 @@ namespace test7 {
 // JSON-NEXT:            "kind": "ReturnStmt",
 // JSON-NEXT:            "range": {
 // JSON-NEXT:             "begin": {
-// JSON-NEXT:              "offset": 860,
+// JSON-NEXT:              "offset": 985,
 // JSON-NEXT:              "col": 16,
 // JSON-NEXT:              "tokLen": 6
 // JSON-NEXT:             },
 // JSON-NEXT:             "end": {
-// JSON-NEXT:              "offset": 874,
+// JSON-NEXT:              "offset": 999,
 // JSON-NEXT:              "col": 30,
 // JSON-NEXT:              "tokLen": 1
 // JSON-NEXT:             }
@@ -672,12 +680,12 @@ namespace test7 {
 // JSON-NEXT:              "kind": "CXXUnresolvedConstructExpr",
 // JSON-NEXT:              "range": {
 // JSON-NEXT:               "begin": {
-// JSON-NEXT:                "offset": 867,
+// JSON-NEXT:                "offset": 992,
 // JSON-NEXT:                "col": 23,
 // JSON-NEXT:                "tokLen": 1
 // JSON-NEXT:               },
 // JSON-NEXT:               "end": {
-// JSON-NEXT:                "offset": 874,
+// JSON-NEXT:                "offset": 999,
 // JSON-NEXT:                "col": 30,
 // JSON-NEXT:                "tokLen": 1
 // JSON-NEXT:               }
@@ -692,12 +700,12 @@ namespace test7 {
 // JSON-NEXT:                "kind": "BinaryOperator",
 // JSON-NEXT:                "range": {
 // JSON-NEXT:                 "begin": {
-// JSON-NEXT:                  "offset": 869,
+// JSON-NEXT:                  "offset": 994,
 // JSON-NEXT:                  "col": 25,
 // JSON-NEXT:                  "tokLen": 1
 // JSON-NEXT:                 },
 // JSON-NEXT:                 "end": {
-// JSON-NEXT:                  "offset": 873,
+// JSON-NEXT:                  "offset": 998,
 // JSON-NEXT:                  "col": 29,
 // JSON-NEXT:                  "tokLen": 1
 // JSON-NEXT:                 }
@@ -713,12 +721,12 @@ namespace test7 {
 // JSON-NEXT:                  "kind": "DeclRefExpr",
 // JSON-NEXT:                  "range": {
 // JSON-NEXT:                   "begin": {
-// JSON-NEXT:                    "offset": 869,
+// JSON-NEXT:                    "offset": 994,
 // JSON-NEXT:                    "col": 25,
 // JSON-NEXT:                    "tokLen": 1
 // JSON-NEXT:                   },
 // JSON-NEXT:                   "end": {
-// JSON-NEXT:                    "offset": 869,
+// JSON-NEXT:                    "offset": 994,
 // JSON-NEXT:                    "col": 25,
 // JSON-NEXT:                    "tokLen": 1
 // JSON-NEXT:                   }
@@ -741,12 +749,12 @@ namespace test7 {
 // JSON-NEXT:                  "kind": "DeclRefExpr",
 // JSON-NEXT:                  "range": {
 // JSON-NEXT:                   "begin": {
-// JSON-NEXT:                    "offset": 873,
+// JSON-NEXT:                    "offset": 998,
 // JSON-NEXT:                    "col": 29,
 // JSON-NEXT:                    "tokLen": 1
 // JSON-NEXT:                   },
 // JSON-NEXT:                   "end": {
-// JSON-NEXT:                    "offset": 873,
+// JSON-NEXT:                    "offset": 998,
 // JSON-NEXT:                    "col": 29,
 // JSON-NEXT:                    "tokLen": 1
 // JSON-NEXT:                   }
@@ -780,21 +788,21 @@ namespace test7 {
 // JSON-NEXT:      "id": "0x{{.*}}",
 // JSON-NEXT:      "kind": "ClassTemplateSpecializationDecl",
 // JSON-NEXT:      "loc": {
-// JSON-NEXT:       "offset": 812,
-// JSON-NEXT:       "line": 15,
+// JSON-NEXT:       "offset": 937,
+// JSON-NEXT:       "line": 16,
 // JSON-NEXT:       "col": 8,
 // JSON-NEXT:       "tokLen": 3
 // JSON-NEXT:      },
 // JSON-NEXT:      "range": {
 // JSON-NEXT:       "begin": {
-// JSON-NEXT:        "offset": 765,
-// JSON-NEXT:        "line": 14,
+// JSON-NEXT:        "offset": 890,
+// JSON-NEXT:        "line": 15,
 // JSON-NEXT:        "col": 1,
 // JSON-NEXT:        "tokLen": 8
 // JSON-NEXT:       },
 // JSON-NEXT:       "end": {
-// JSON-NEXT:        "offset": 879,
-// JSON-NEXT:        "line": 19,
+// JSON-NEXT:        "offset": 1004,
+// JSON-NEXT:        "line": 20,
 // JSON-NEXT:        "col": 1,
 // JSON-NEXT:        "tokLen": 1
 // JSON-NEXT:       }
@@ -871,19 +879,19 @@ namespace test7 {
 // JSON-NEXT:        "id": "0x{{.*}}",
 // JSON-NEXT:        "kind": "CXXRecordDecl",
 // JSON-NEXT:        "loc": {
-// JSON-NEXT:         "offset": 812,
-// JSON-NEXT:         "line": 15,
+// JSON-NEXT:         "offset": 937,
+// JSON-NEXT:         "line": 16,
 // JSON-NEXT:         "col": 8,
 // JSON-NEXT:         "tokLen": 3
 // JSON-NEXT:        },
 // JSON-NEXT:        "range": {
 // JSON-NEXT:         "begin": {
-// JSON-NEXT:          "offset": 805,
+// JSON-NEXT:          "offset": 930,
 // JSON-NEXT:          "col": 1,
 // JSON-NEXT:          "tokLen": 6
 // JSON-NEXT:         },
 // JSON-NEXT:         "end": {
-// JSON-NEXT:          "offset": 812,
+// JSON-NEXT:          "offset": 937,
 // JSON-NEXT:          "col": 8,
 // JSON-NEXT:          "tokLen": 3
 // JSON-NEXT:         }
@@ -896,19 +904,19 @@ namespace test7 {
 // JSON-NEXT:        "id": "0x{{.*}}",
 // JSON-NEXT:        "kind": "FieldDecl",
 // JSON-NEXT:        "loc": {
-// JSON-NEXT:         "offset": 824,
-// JSON-NEXT:         "line": 16,
+// JSON-NEXT:         "offset": 949,
+// JSON-NEXT:         "line": 17,
 // JSON-NEXT:         "col": 7,
 // JSON-NEXT:         "tokLen": 8
 // JSON-NEXT:        },
 // JSON-NEXT:        "range": {
 // JSON-NEXT:         "begin": {
-// JSON-NEXT:          "offset": 820,
+// JSON-NEXT:          "offset": 945,
 // JSON-NEXT:          "col": 3,
 // JSON-NEXT:          "tokLen": 3
 // JSON-NEXT:         },
 // JSON-NEXT:         "end": {
-// JSON-NEXT:          "offset": 824,
+// JSON-NEXT:          "offset": 949,
 // JSON-NEXT:          "col": 7,
 // JSON-NEXT:          "tokLen": 8
 // JSON-NEXT:         }
@@ -922,19 +930,19 @@ namespace test7 {
 // JSON-NEXT:        "id": "0x{{.*}}",
 // JSON-NEXT:        "kind": "CXXConstructorDecl",
 // JSON-NEXT:        "loc": {
-// JSON-NEXT:         "offset": 836,
-// JSON-NEXT:         "line": 17,
+// JSON-NEXT:         "offset": 961,
+// JSON-NEXT:         "line": 18,
 // JSON-NEXT:         "col": 3,
 // JSON-NEXT:         "tokLen": 3
 // JSON-NEXT:        },
 // JSON-NEXT:        "range": {
 // JSON-NEXT:         "begin": {
-// JSON-NEXT:          "offset": 836,
+// JSON-NEXT:          "offset": 961,
 // JSON-NEXT:          "col": 3,
 // JSON-NEXT:          "tokLen": 3
 // JSON-NEXT:         },
 // JSON-NEXT:         "end": {
-// JSON-NEXT:          "offset": 843,
+// JSON-NEXT:          "offset": 968,
 // JSON-NEXT:          "col": 10,
 // JSON-NEXT:          "tokLen": 1
 // JSON-NEXT:         }
@@ -951,12 +959,12 @@ namespace test7 {
 // JSON-NEXT:          "kind": "CompoundStmt",
 // JSON-NEXT:          "range": {
 // JSON-NEXT:           "begin": {
-// JSON-NEXT:            "offset": 842,
+// JSON-NEXT:            "offset": 967,
 // JSON-NEXT:            "col": 9,
 // JSON-NEXT:            "tokLen": 1
 // JSON-NEXT:           },
 // JSON-NEXT:           "end": {
-// JSON-NEXT:            "offset": 843,
+// JSON-NEXT:            "offset": 968,
 // JSON-NEXT:            "col": 10,
 // JSON-NEXT:            "tokLen": 1
 // JSON-NEXT:           }
@@ -968,19 +976,19 @@ namespace test7 {
 // JSON-NEXT:        "id": "0x{{.*}}",
 // JSON-NEXT:        "kind": "CXXMethodDecl",
 // JSON-NEXT:        "loc": {
-// JSON-NEXT:         "offset": 849,
-// JSON-NEXT:         "line": 18,
+// JSON-NEXT:         "offset": 974,
+// JSON-NEXT:         "line": 19,
 // JSON-NEXT:         "col": 5,
 // JSON-NEXT:         "tokLen": 6
 // JSON-NEXT:        },
 // JSON-NEXT:        "range": {
 // JSON-NEXT:         "begin": {
-// JSON-NEXT:          "offset": 847,
+// JSON-NEXT:          "offset": 972,
 // JSON-NEXT:          "col": 3,
 // JSON-NEXT:          "tokLen": 1
 // JSON-NEXT:         },
 // JSON-NEXT:         "end": {
-// JSON-NEXT:          "offset": 877,
+// JSON-NEXT:          "offset": 1002,
 // JSON-NEXT:          "col": 33,
 // JSON-NEXT:          "tokLen": 1
 // JSON-NEXT:         }
@@ -997,12 +1005,12 @@ namespace test7 {
 // JSON-NEXT:          "kind": "CompoundStmt",
 // JSON-NEXT:          "range": {
 // JSON-NEXT:           "begin": {
-// JSON-NEXT:            "offset": 858,
+// JSON-NEXT:            "offset": 983,
 // JSON-NEXT:            "col": 14,
 // JSON-NEXT:            "tokLen": 1
 // JSON-NEXT:           },
 // JSON-NEXT:           "end": {
-// JSON-...
[truncated]

``````````

</details>


https://github.com/llvm/llvm-project/pull/126937


More information about the cfe-commits mailing list