diff options
author | David Majnemer <david.majnemer@gmail.com> | 2015-09-10 21:52:00 +0000 |
---|---|---|
committer | David Majnemer <david.majnemer@gmail.com> | 2015-09-10 21:52:00 +0000 |
commit | 9df56372e8eaaefc50a9ecae66a83e608d7a5eb6 (patch) | |
tree | fa4001b27f49f5c8fa09e3a0e39bf4d30753f4ad /clang/lib/CodeGen/MicrosoftCXXABI.cpp | |
parent | e0b44040aaa48a6f0b84ea18beffc7de33078731 (diff) | |
download | bcm5719-llvm-9df56372e8eaaefc50a9ecae66a83e608d7a5eb6.tar.gz bcm5719-llvm-9df56372e8eaaefc50a9ecae66a83e608d7a5eb6.zip |
[MS ABI] Make member pointers return true for isIncompleteType
The type of a member pointer is incomplete if it has no inheritance
model. This lets us reuse more general logic already embedded in clang.
llvm-svn: 247346
Diffstat (limited to 'clang/lib/CodeGen/MicrosoftCXXABI.cpp')
-rw-r--r-- | clang/lib/CodeGen/MicrosoftCXXABI.cpp | 11 |
1 files changed, 0 insertions, 11 deletions
diff --git a/clang/lib/CodeGen/MicrosoftCXXABI.cpp b/clang/lib/CodeGen/MicrosoftCXXABI.cpp index 5cefc72ed0c..a981dd6e6d2 100644 --- a/clang/lib/CodeGen/MicrosoftCXXABI.cpp +++ b/clang/lib/CodeGen/MicrosoftCXXABI.cpp @@ -594,17 +594,6 @@ public: return RD->hasAttr<MSInheritanceAttr>(); } - bool isTypeInfoCalculable(QualType Ty) const override { - if (!CGCXXABI::isTypeInfoCalculable(Ty)) - return false; - if (const auto *MPT = Ty->getAs<MemberPointerType>()) { - const CXXRecordDecl *RD = MPT->getMostRecentCXXRecordDecl(); - if (!RD->hasAttr<MSInheritanceAttr>()) - return false; - } - return true; - } - llvm::Constant *EmitNullMemberPointer(const MemberPointerType *MPT) override; llvm::Constant *EmitMemberDataPointer(const MemberPointerType *MPT, |