[clang] [clang] Fix PS "selective" DLL import/export of vtable & typeinfo (PR #92579)

Eli Friedman via cfe-commits cfe-commits at lists.llvm.org
Wed May 22 12:34:22 PDT 2024


================
@@ -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:

It's probably fine to merge as-is, sure; inline functions marked with import/export attributes should be pretty rare in any case.

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


More information about the cfe-commits mailing list