Add in support for initialising auto variables from lambda expressions
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/gsoc2009-matevz@13858 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
parent
e68d8024f5
commit
7ca8f025ad
2 changed files with 41 additions and 14 deletions
|
|
@ -36,6 +36,10 @@ auto lambda8 = [] (int x, int y) throw() -> int { return x+y; };
|
|||
auto lambda9 = [] (int x, int y) mutable throw() -> int { return x+y; };
|
||||
auto lambda10 = [] (int x, int y) throw(int) { return x+y; };
|
||||
auto lambda11 = [] (int x, int y) mutable throw(int) { return x+y; };
|
||||
auto lambda12 = [] (int a, int b) { return a + b; }(1, 2);
|
||||
auto lambda13 = [] (int a, int b) mutable { return a + b; }(1, 2);
|
||||
auto lambda14 = [] () throw () {};
|
||||
auto lambda15 = [] () mutable throw () {};
|
||||
|
||||
int runLambda1() {
|
||||
return lambda1(5,6);
|
||||
|
|
@ -70,11 +74,9 @@ int runLambdaInline() {
|
|||
struct LambdaStruct {
|
||||
static constexpr auto lambda_struct1 = [=]() { return thing;};
|
||||
};
|
||||
int(*lambda101notauto)(int, int) = [] (int a, int b) { return a + b; };
|
||||
auto lambda100 = [] { return thing;};
|
||||
int lambda101 = [] (int a, int b) { return a + b; }(1, 2);
|
||||
int lambda102 = [] (int a, int b) mutable { return a + b; }(1, 2);
|
||||
auto lambda103 = [] () throw () { /* does not throw */ };
|
||||
auto lambda104 = [] () mutable throw () { /* does not throw */ };
|
||||
void lambda_init(int = ([=]{ return 0; })());
|
||||
%}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue