This patch changes the ASTImporter to propagate the implicit flag to
RecordDecls and FieldDecls (to hide the injected type name and anonymous
struct/union fields).
If required I could also extend this to all other decl types.
http://reviews.llvm.org/D6549
Files:
lib/AST/ASTImporter.cpp
Index: lib/AST/ASTImporter.cpp
===================================================================
--- lib/AST/ASTImporter.cpp
+++ lib/AST/ASTImporter.cpp
@@ -2581,6 +2581,7 @@
D2->setQualifierInfo(Importer.Import(D->getQualifierLoc()));
D2->setLexicalDeclContext(LexicalDC);
LexicalDC->addDeclInternal(D2);
+ D2->setImplicit(D->isImplicit());
if (D->isAnonymousStructOrUnion())
D2->setAnonymousStructOrUnion(true);
}
@@ -2974,6 +2975,7 @@
ToIndirectField->setAccess(D->getAccess());
ToIndirectField->setLexicalDeclContext(LexicalDC);
+ ToIndirectField->setImplicit(D->isImplicit());
Importer.Imported(D, ToIndirectField);
LexicalDC->addDeclInternal(ToIndirectField);
return ToIndirectField;
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits