diff options
author | Anders Carlsson <andersca@mac.com> | 2009-08-23 01:25:01 +0000 |
---|---|---|
committer | Anders Carlsson <andersca@mac.com> | 2009-08-23 01:25:01 +0000 |
commit | fc3eaa47fa2ef70ab21131005c328adda3020737 (patch) | |
tree | 777338d19e91e829f91ac7bcad654dab0647c2a1 /lib/CodeGen/CGExprConstant.cpp | |
parent | 341bdf8d565f5282779a0ffd2d2b77f3a38b735e (diff) |
More work towards zero-initializing structs that contain member pointers in constant expressions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79805 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/CGExprConstant.cpp')
-rw-r--r-- | lib/CodeGen/CGExprConstant.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/CodeGen/CGExprConstant.cpp b/lib/CodeGen/CGExprConstant.cpp index b3e0fef1ba..2770527eba 100644 --- a/lib/CodeGen/CGExprConstant.cpp +++ b/lib/CodeGen/CGExprConstant.cpp @@ -800,6 +800,14 @@ llvm::Constant *CodeGenModule::EmitNullConstant(QualType T) { return llvm::ConstantArray::get(ATy, Array); } } + + if (const RecordType *RT = T->getAs<RecordType>()) { + const CGRecordLayout *Layout = Types.getCGRecordLayout(RT->getDecl()); + if (Layout->containsMemberPointer()) { + assert(0 && "FIXME: No support for structs with member pointers yet!"); + } + + } // FIXME: Handle structs that contain member pointers. if (T->isMemberPointerType()) |