aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2012-02-07 10:09:13 +0000
committerDouglas Gregor <dgregor@apple.com>2012-02-07 10:09:13 +0000
commite31e606ff34aea7d248acb4fd3e23383860383e2 (patch)
tree3c7d70e325d2dc894a28b3435315719005a96dac /clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
parent8392a47174973c3ad8cc1c123364e28d4a4fad0b (diff)
downloadllvm-e31e606ff34aea7d248acb4fd3e23383860383e2.zip
llvm-e31e606ff34aea7d248acb4fd3e23383860383e2.tar.gz
llvm-e31e606ff34aea7d248acb4fd3e23383860383e2.tar.bz2
Introduce basic ASTs for lambda expressions. This covers:
- Capturing variables by-reference and by-copy within a lambda - The representation of lambda captures - The creation of the non-static data members in the lambda class that store the captured variables - The initialization of the non-static data members from the captured variables - Pretty-printing lambda expressions There are a number of FIXMEs, both explicit and implied, including: - Creating a field for a capture of 'this' - Improved diagnostics for initialization failures when capturing variables by copy - Dealing with temporaries created during said initialization - Template instantiation - AST (de-)serialization - Binding and returning the lambda expression; turning it into a proper temporary - Lots and lots of semantic constraints - Parameter pack captures llvm-svn: 149977
Diffstat (limited to 'clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions