Improvements to the ASTImporter to support LLDB top-level Clang expressions.
authorSean Callanan <scallanan@apple.com>
Mon, 28 Mar 2016 21:43:01 +0000 (21:43 +0000)
committerSean Callanan <scallanan@apple.com>
Mon, 28 Mar 2016 21:43:01 +0000 (21:43 +0000)
commit8bca996651fb0219f93ef0d0ad8d17198b9b4e2f
tree1985bec84c8e62030e81c2e65cd16982d405db09
parentcc1ac8d1253e867832e10398dfc36c3a621a616d
Improvements to the ASTImporter to support LLDB top-level Clang expressions.

The testcase for this is in LLDB, adeed by r264662.

This patch adds support for a variety of new expression types to the AST
importer, mostly related to C++.  It also adds support for importing lambdas
correctly, and adds support for importing the attributes attached to any Decl.

Finally, the patch adds a new templated function to ASTNodeImporter that imports
arbitrary arrays of importable things into a bump-allocated array attached to
getToContext().  This is a pattern we see at many places in ASTNodeImporter;
rather than do it slightly differently at each point, this function does it one
way.

<rdar://problem/22864976>

llvm-svn: 264669
clang/lib/AST/ASTImporter.cpp