| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
| |
per C++ [expr.prim.lambda]p6.
llvm-svn: 150236
|
| |
|
|
|
|
|
| |
the variables captured by a lambda to the fields that store the
captured values. To be used in IRgen.
llvm-svn: 150235
|
| |
|
|
|
|
|
|
|
| |
[expr.prim.lambda]p4, including the current suggested resolution of
core isue 975, which allows multiple return statements so long as the
types match. ExtWarn when user code is actually making use of this
extension.
llvm-svn: 150168
|
| |
|
|
|
|
|
|
|
|
|
| |
function call operator (to the lambda class). This allows us to IRgen
calls to simple (non-capturing) lambdas, e.g.,
[](int i, int j) -> int { return i + j; }(1, 2)
Eli will be providing test cases as he brings up more IRgen.
llvm-svn: 150166
|
| |
|
|
|
|
| |
and rapidly becoming untrue.
llvm-svn: 150165
|
| |
|
|
|
|
|
| |
unevaluated operands. Be certain that we're marking everything
referenced within a capture initializer as odr-used.
llvm-svn: 150163
|
| |
|
|
|
|
| |
are constructed in different ways
llvm-svn: 150136
|
| |
|
|
|
|
| |
finalize it
llvm-svn: 150130
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Complete the lambda class when we finish the lambda expression
(previously, it was left in the "being completed" state)
- Actually return the LambdaExpr object and bind to the resulting
temporary when needed.
- Detect when cleanups are needed while capturing a variable into a
lambda (e.g., due to default arguments in the copy constructor), and
make sure those cleanups apply for the whole of the lambda
expression.
llvm-svn: 150123
|
|
|
file. No functionality change.
llvm-svn: 150089
|