[PATCH] D59485: [ASTImporter] Add an ImportInternal method to allow customizing Import behavior.

Raphael Isemann via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Mar 21 13:15:53 PDT 2019


teemperor updated this revision to Diff 191765.
teemperor retitled this revision from "[ASTImporter] Allow adding a import strategy to the ASTImporter" to "[ASTImporter] Add an ImportInternal method to allow customizing Import behavior.".
teemperor edited the summary of this revision.
teemperor added a comment.

So I replaced the whole Strategy/Shim thing with a simple `ImportInternal` method that we can overwrite and is also no longer public. That also gets rid of all the boilerplate code from the first patches and also makes the follow-up LLDB patch nicer.

@martong It's not related to lookup or anything like that, it's just that we don't have enough information in our debug info AST to allow people to use meta programming. The custom logic we have in LLDB looks into the std C++ module to fill out these gaps in the AST by hand when they are used in an expression.

The remark about the alternative being slow just means that fixing all the templates we have in our debug info AST seems like a costly approach. I'm also not sure how well it would work, as I never tried mixing a C++ module in an ASTContext that isn't currently being parsed by Clang.


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

https://reviews.llvm.org/D59485

Files:
  clang/include/clang/AST/ASTImporter.h
  clang/lib/AST/ASTImporter.cpp
  clang/unittests/AST/ASTImporterTest.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D59485.191765.patch
Type: text/x-patch
Size: 9005 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20190321/886b46b2/attachment-0001.bin>


More information about the cfe-commits mailing list