r201823 - Revert "Enable MSRecordLayout in the presence of external sources."

Reid Kleckner reid at kleckner.net
Thu Feb 20 15:07:29 PST 2014


Author: rnk
Date: Thu Feb 20 17:07:29 2014
New Revision: 201823

URL: http://llvm.org/viewvc/llvm-project?rev=201823&view=rev
Log:
Revert "Enable MSRecordLayout in the presence of external sources."

This reverts commit r201810.

It was failing these tests on my workstation:
    Clang :: CodeGen/override-layout.c
    Clang :: CodeGenCXX/override-layout.cpp
    Clang :: PCH/check-deserializations.cpp

Modified:
    cfe/trunk/lib/AST/RecordLayoutBuilder.cpp

Modified: cfe/trunk/lib/AST/RecordLayoutBuilder.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/AST/RecordLayoutBuilder.cpp?rev=201823&r1=201822&r2=201823&view=diff
==============================================================================
--- cfe/trunk/lib/AST/RecordLayoutBuilder.cpp (original)
+++ cfe/trunk/lib/AST/RecordLayoutBuilder.cpp Thu Feb 20 17:07:29 2014
@@ -2892,7 +2892,7 @@ ASTContext::getASTRecordLayout(const Rec
 
   const ASTRecordLayout *NewEntry = 0;
 
-  if (isMsLayout(D)) {
+  if (isMsLayout(D) && !D->getASTContext().getExternalSource()) {
     NewEntry = BuildMicrosoftASTRecordLayout(D);
   } else if (const CXXRecordDecl *RD = dyn_cast<CXXRecordDecl>(D)) {
     EmptySubobjectMap EmptySubobjects(*this, RD);





More information about the cfe-commits mailing list