[clang] [clang-tools-extra] [clang] Include explicit object methods in overload suggestions (PR #154041)

Mythreya Kuricheti via cfe-commits cfe-commits at lists.llvm.org
Wed Aug 20 01:42:04 PDT 2025


================
@@ -1428,10 +1428,18 @@ void ResultBuilder::AddResult(Result R, DeclContext *CurContext,
 
   AdjustResultPriorityForDecl(R);
 
+  // Account for explicit object parameter
+  const auto getQualifiers = [&](const CXXMethodDecl *MethodDecl) {
+    if (MethodDecl->isExplicitObjectMemberFunction())
+      return MethodDecl->getFunctionObjectParameterType().getQualifiers();
+    else
+      return MethodDecl->getMethodQualifiers();
+  };
----------------
MythreyaK wrote:

I think changing `CXXMethodDecl::getMethodQualifiers()` would break [name mangling](https://github.com/llvm/llvm-project/blob/2dc0a5f3cd34b1d1300545e2176f908ac5de934b/clang/lib/AST/ItaniumMangle.cpp#L1809). 




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


More information about the cfe-commits mailing list