[PATCH] D47450: [ASTImporter] Use InjectedClassNameType at import of templated record.
Rafael Stahl via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Mon May 28 07:23:09 PDT 2018
r.stahl added inline comments.
================
Comment at: lib/AST/ASTImporter.cpp:2139
+ CXXRecordDecl *Injected = nullptr;
+ for (NamedDecl *Found : D2CXX->noload_lookup(Name)) {
+ auto *Record = dyn_cast<CXXRecordDecl>(Found);
----------------
balazske wrote:
> r.stahl wrote:
> > The only thing I'm wondering is whether the Decls looked up here are always known to be already imported.
> These are in the 'To' context. It may be that the `Injected` is not found here, probably because not yet imported (in this case the import may be part of a not completed recursive process).
As far as I understand that corner case could be covered by doing the lookup on `DCXX` instead and then importing the injected decl. But then you wouldn't find it if it is only in the To context (if that is possible).
I mean if a user calls ImportDecl in another order specifically. But such a case is probably really artificial and I'm not sure if it's even makes sense or is already covered by ImportDeclParts.
It should be fine as it is.
Repository:
rC Clang
https://reviews.llvm.org/D47450
More information about the cfe-commits
mailing list