Nico, the tests for ASTImporter (currently, test/ASTMerge) are currently set up to do an AST merge and check that certain errors occur. I don’t believe they actually go and code-gen, which would have caught this.
I think investing in better ASTImporter testing is a great goal, but right now LLDB is actually the most comprehensive validation suite for the ASTImporter I’m aware of. Sean > On Mar 2, 2016, at 11:04 PM, Nico Weber <tha...@chromium.org> wrote: > > Is it possible to test this? > > On Mar 2, 2016 6:26 PM, "Sean Callanan via cfe-commits" > <cfe-commits@lists.llvm.org <mailto:cfe-commits@lists.llvm.org>> wrote: > Author: spyffe > Date: Wed Mar 2 20:22:05 2016 > New Revision: 262576 > > URL: http://llvm.org/viewvc/llvm-project?rev=262576&view=rev > <http://llvm.org/viewvc/llvm-project?rev=262576&view=rev> > Log: > Caught and fixed a typo in r262572. > > I should have checked and imported D's in-class initializer. > Instead I accidentally used ToField's in-class initializer, > which is always NULL so ToField will never get one. > > <rdar://problem/24943405> > > Modified: > cfe/trunk/lib/AST/ASTImporter.cpp > > Modified: cfe/trunk/lib/AST/ASTImporter.cpp > URL: > http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/AST/ASTImporter.cpp?rev=262576&r1=262575&r2=262576&view=diff > > <http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/AST/ASTImporter.cpp?rev=262576&r1=262575&r2=262576&view=diff> > ============================================================================== > --- cfe/trunk/lib/AST/ASTImporter.cpp (original) > +++ cfe/trunk/lib/AST/ASTImporter.cpp Wed Mar 2 20:22:05 2016 > @@ -3038,7 +3038,7 @@ Decl *ASTNodeImporter::VisitFieldDecl(Fi > D->getInClassInitStyle()); > ToField->setAccess(D->getAccess()); > ToField->setLexicalDeclContext(LexicalDC); > - if (Expr *FromInitializer = ToField->getInClassInitializer()) { > + if (Expr *FromInitializer = D->getInClassInitializer()) { > Expr *ToInitializer = Importer.Import(FromInitializer); > if (ToInitializer) > ToField->setInClassInitializer(ToInitializer); > > > _______________________________________________ > cfe-commits mailing list > cfe-commits@lists.llvm.org <mailto:cfe-commits@lists.llvm.org> > http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits > <http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits>
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits