[clang] [Clang] Better handle overload of explicit object member functions (PR #147498)

Erich Keane via cfe-commits cfe-commits at lists.llvm.org
Tue Jul 8 06:11:35 PDT 2025


================
@@ -1536,10 +1536,19 @@ static bool IsOverloadOrOverrideImpl(Sema &SemaRef, FunctionDecl *New,
                !F->isExplicitObjectMemberFunction();
       };
 
-      if (IsImplicitWithNoRefQual(Old) != IsImplicitWithNoRefQual(New) &&
-          CompareType(OldObjectType.getNonReferenceType(),
-                      NewObjectType.getNonReferenceType()))
-        return true;
+      if ((Old->getRefQualifier() != RQ_None ||
----------------
erichkeane wrote:

Perhaps too early in the morning, but this whole predicate (and the one below it) are both... rough :)  Is there a good way to make them more readable by extracting named variables or something?  

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


More information about the cfe-commits mailing list