[PATCH] D47057: [ASTImporter] Fix missing implict CXXRecordDecl in ClassTemplateSpecializationDecl

Aleksei Sidorin via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri May 18 11:36:11 PDT 2018


a.sidorin added inline comments.


================
Comment at: lib/AST/ASTImporter.cpp:1962
   TagDecl *Definition = D->getDefinition();
-  if (Definition && Definition != D) {
+  if (!D->isImplicit() && Definition && Definition != D) {
     Decl *ImportedDef = Importer.Import(Definition);
----------------
We are changing import if RecordDecl. Is it possible to add a test that doesn't require templates?
I tried and found that the implicit CXXRecordDecl of ClassTemplateSpecializationDecl is its redeclaration. That's not true for normal CXXRecordDecls, as I see, so this deserves a comment.


Repository:
  rC Clang

https://reviews.llvm.org/D47057





More information about the cfe-commits mailing list