[Lldb-commits] [PATCH] D59537: Instantiate 'std' templates explicitly in the expression evaluator
    Balázs Kéri via Phabricator via lldb-commits 
    lldb-commits at lists.llvm.org
       
    Tue Mar 19 04:39:10 PDT 2019
    
    
  
balazske added inline comments.
================
Comment at: lldb/source/Symbol/StdModuleHandler.cpp:220
+    case TemplateArgument::Type: {
+      QualType our_type = m_importer.Import(arg.getAsType());
+      imported_args.push_back(TemplateArgument(our_type));
----------------
For long-term (but it should be not so long) the `ASTImporter::Import_New` should be used (later the Import_New will become the Import). By using the existing Import_New the code will be prepared for this change. For this to work the error handling (ignore error, return it from Import or something else) must be implemented here.
================
Comment at: lldb/source/Symbol/StdModuleHandler.cpp:221
+      QualType our_type = m_importer.Import(arg.getAsType());
+      imported_args.push_back(TemplateArgument(our_type));
+      break;
----------------
I do not know if it is possible that the type to be imported here can have back-references to the template object that is currently imported (for example a vector of vectors?). If yes this case may not work correctly.
Repository:
  rLLDB LLDB
CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D59537/new/
https://reviews.llvm.org/D59537
    
    
More information about the lldb-commits
mailing list