[clang] [Clang] Fix Microsoft ABI inheritance model when member pointer is used in a base specifier (PR #91990)
Mital Ashok via cfe-commits
cfe-commits at lists.llvm.org
Thu Jul 18 00:30:39 PDT 2024
================
@@ -215,6 +215,14 @@ struct NewUnspecified;
SingleTemplate<void (IncSingle::*)()> tmpl_single;
UnspecTemplate<void (NewUnspecified::*)()> tmpl_unspec;
+// Member pointers used in base specifiers force an unspecified inheritance model
+struct MemPtrInBase : UnspecTemplate<void (MemPtrInBase::*)()> {};
----------------
MitalAshok wrote:
It's not for simply naming the type for the template argument but `UnspecTemplate`'s definition does complete it by taking its `sizeof`, forcing the inheritance model to be assigned
https://github.com/llvm/llvm-project/pull/91990
More information about the cfe-commits
mailing list