================ @@ -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() || ---------------- wjristow wrote:
> Do you remember why `isInlineSpecified()` was used rather than `isInlined()`? No, I don't recall. I've reviewed the relevant internal ticket, and I don't see any reason in the notes there for it, either. Most likely it was just a mistake I made back in 2015. So I think it makes sense to change it to use `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