================ @@ -1309,6 +1309,16 @@ Sema::CheckOverload(Scope *S, FunctionDecl *New, const LookupResult &Old, return Ovl_Overload; } +template <typename AttrT> static bool hasExplicitAttr(const FunctionDecl *D) { + if (!D) + return false; + if (auto *A = D->getAttr<AttrT>()) + return !A->isImplicit(); + return false; +} +/// Assuming \p New is either an overload or override of \p Old. +/// \returns true if \p New is an overload of \p Old, +/// false if \p New is an override of \p Old. ---------------- cor3ntin wrote:
The comment is incorrect, `UseOverrideRules` decides we check for overloads vs overrides (and we return true if it is) https://github.com/llvm/llvm-project/pull/121986 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits