[clang] [Clang] Profile the NNS of UnresolvedUsingType correctly in concept hashing (PR #199617)

Corentin Jabot via cfe-commits cfe-commits at lists.llvm.org
Tue May 26 00:30:47 PDT 2026


================
@@ -399,6 +399,16 @@ class HashParameterMapping : public RecursiveASTVisitor<HashParameterMapping> {
     return true;
   }
 
+  bool TraverseUnresolvedUsingType(UnresolvedUsingType *T,
+                                   bool TraverseQualifier) {
+    // Sometimes the written type doesn't contain a qualifier which contains
+    // necessary template arguments, whereas the declaration does.
+    if (NestedNameSpecifier NNS = T->getDecl()->getQualifier();
+        TraverseQualifier && NNS)
+      return inherited::TraverseNestedNameSpecifier(NNS);
+    return true;
----------------
cor3ntin wrote:

we should probably call `inherited::TraverseUnresolvedUsingType` - which visits the type

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


More information about the cfe-commits mailing list