r201810 - Enable MSRecordLayout in the presence of external sources.

Warren Hunt whunt at google.com
Thu Feb 20 12:14:29 PST 2014


Author: whunt
Date: Thu Feb 20 14:14:29 2014
New Revision: 201810

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

External sources shouldn't prevent the layout engine from using 
MSLayout.  If lldb were to support debugging in microsoft mode, some 
code will need to be added to MSRecordLayoutBuilder to handel external 
layouts.


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=201810&r1=201809&r2=201810&view=diff
==============================================================================
--- cfe/trunk/lib/AST/RecordLayoutBuilder.cpp (original)
+++ cfe/trunk/lib/AST/RecordLayoutBuilder.cpp Thu Feb 20 14:14:29 2014
@@ -2892,7 +2892,7 @@ ASTContext::getASTRecordLayout(const Rec
 
   const ASTRecordLayout *NewEntry = 0;
 
-  if (isMsLayout(D) && !D->getASTContext().getExternalSource()) {
+  if (isMsLayout(D)) {
     NewEntry = BuildMicrosoftASTRecordLayout(D);
   } else if (const CXXRecordDecl *RD = dyn_cast<CXXRecordDecl>(D)) {
     EmptySubobjectMap EmptySubobjects(*this, RD);





More information about the cfe-commits mailing list