[Lldb-commits] [clang] [clang-tools-extra] [lldb] [clang] implement CWG1980 and CWG2064: instantiation-dependency improvements (PR #190495)

Oliver Hunt via lldb-commits lldb-commits at lists.llvm.org
Tue Apr 21 00:48:43 PDT 2026


================
@@ -7399,17 +7480,50 @@ TemplateName ASTContext::getCanonicalTemplateName(TemplateName Name,
       // Keep popping from the back any deault arguments which are the same.
       if (I == int(CanonArgs.size() - 1))
         CanonArgs.pop_back();
-      NonCanonical = true;
+      AnyChanged = true;
+    }
+    return AnyChanged ? getDeducedTemplateName(
+                            CanonUnderlying,
+                            /*DefaultArgs=*/{DefArgs.StartPos, CanonArgs})
+                      : Name;
+  }
+  case TemplateName::QualifiedTemplate: {
+    auto *S = Name.getAsQualifiedTemplateName();
+    TemplateName Underlying = S->getUnderlyingTemplate();
+    if (CanonKind == CanonicalizationKind::Structural) {
----------------
ojhunt wrote:

nit: no braces

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


More information about the lldb-commits mailing list