martong added inline comments.

================
Comment at: lldb/source/Symbol/StdModuleHandler.cpp:242
+    // Instantiate the template.
+    found_decl = ClassTemplateSpecializationDecl::Create(
+        m_sema->getASTContext(),
----------------
Is there any guarantee that the before any subsequent 
clang::ASTImporter::Import call this newly created node is registered as 
imported (via ASTImporter::MapImported)?

The reason why I am asking this is because we have to enforce in 
clang::ASTImporter that after every Decl is created then immediately it is 
registered as an imported Decl, see `ASTImporter::GetImportedOrCreateDecl`. 
This we we make sure that no subsequent import calls will create the same node 
again.
The cycles in the AST are handled properly only this way.

This is one reason which makes me worried about exposing the import mechanism 
via `ImportInternal`.  Would it be working if `GetImportedOrCreateDecl` was 
virtual and overridden here?


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D59537/new/

https://reviews.llvm.org/D59537



_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to