================ @@ -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() || ---------------- efriedma-quic wrote:
"isInlineSpecified()" specifically refers to the keyword. `isInlined()` is what the C++ standard calls an "inlined function", and it includes some other stuff: constexpr functions, and functions where the body is written inside the class definition. 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