teemperor added inline comments.

================
Comment at: lldb/source/Symbol/ClangASTImporter.cpp:250
+/// imported while completing the original Decls).
+class DeportQueueScope : public ClangASTImporter::NewDeclListener {
+  ClangASTImporter::ImporterDelegateSP m_delegate;
----------------
martong wrote:
> The verb `deport` is pretty vague in this context for me. Actually, what this 
> class does is importing missing members and methods of classes. Perhaps a 
> better name could be `ImportMembersQueueScope` ?
> I still don't understand why is it needed to import the members in two steps 
> in LLDB: 1. import the class itself without members 2. import the members. So 
> perhaps we could have some documentation about that too here.
Renamed to point out that it's essentially just completing TagDecls (I didn't 
want to specify the members, that seems a bit vague).

And I wish I could document why we need to do this in two steps, but I didn't 
write that code so that's also a mystery to me :) When I'll figure this out 
I'll make a patch.


================
Comment at: lldb/source/Symbol/ClangASTImporter.cpp:324
+
+    NamedDecl *to_named_decl = dyn_cast<NamedDecl>(to);
+    // Check if we already deported this type.
----------------
martong wrote:
> Would it make sense to filter out those TagDecls which are already completed?
> E.g.:
> ```
> if (TagDecl *to_tag_decl = dyn_cast<TagDecl>(to))
>   if (to_tag_decl->isCompleteDefinition()) // skip tags which are already 
> completed
>     return;
> ```
> Or this would not work because there are cases when the tag is completed, but 
> the members are still missing? If that is the case could you please document 
> that here too?
Maybe, but that could make this patch non-NFC :) I can make this as a follow-up.


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

https://reviews.llvm.org/D61478



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

Reply via email to