================ @@ -1793,6 +1793,37 @@ void ItaniumCXXABI::EmitDestructorCall(CodeGenFunction &CGF, ThisTy, VTT, VTTTy, nullptr); } +// Check if any non-inline method has the specified attribute. +template <typename T> +static bool CXXRecordNonInlineHasAttr(const CXXRecordDecl *RD) { + for (const auto *D : RD->noload_decls()) { + if (const auto *FD = dyn_cast<FunctionDecl>(D)) { + if (FD->isInlineSpecified() || FD->doesThisDeclarationHaveABody() || ---------------- nga888 wrote:
Yes, I understand that they are not equivalent but the original code has used `isInlineSpecified()` for quite some time (has been downstream at Sony since 2015). Are you OK with this patch going in as is with a follow up to look into using `isInlined()`? https://github.com/llvm/llvm-project/pull/92579 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits