forked from OSchip/llvm-project
14 lines
636 B
Diff
14 lines
636 B
Diff
Index: lib/AST/RecordLayoutBuilder.cpp
|
|
===================================================================
|
|
--- lib/AST/RecordLayoutBuilder.cpp (revision 152265)
|
|
+++ lib/AST/RecordLayoutBuilder.cpp (working copy)
|
|
@@ -2313,6 +2313,8 @@
|
|
ASTContext::getObjCLayout(const ObjCInterfaceDecl *D,
|
|
const ObjCImplementationDecl *Impl) const {
|
|
// Retrieve the definition
|
|
+ if (D->hasExternalLexicalStorage() && !D->getDefinition())
|
|
+ getExternalSource()->CompleteType(const_cast<ObjCInterfaceDecl*>(D));
|
|
D = D->getDefinition();
|
|
assert(D && D->isThisDeclarationADefinition() && "Invalid interface decl!");
|
|
|