Merged revisions 208012,208018-208019,208021,208023-208030,208033,208037,208040-20804...
[official-gcc.git] / main / gcc / testsuite / g++.dg / cpp0x / lambda / lambda-deduce.C
blobb0e2d9fbabe17c1d2898b26ebf8b12e3df7b3f4b
1 // { dg-do run { target c++11 } }
2 #include <cassert>
4 int main() {
5   [] {};
6   [] {} ();
7   [] () {};
8   [] () {} ();
9   [] () { return "lambda"; };
11   int i = 1, j = 2;
12   [&i, j] () { i = j; } ();
13   assert(i == 2);
14   assert(j == 2);
16   i = [] () { return 3; } ();
17   assert(i == 3);
19   int k = [&] () { return i; } ();
21   []{ return; };
23   int array[] = { 1, 2, 3 };
24   int* p = [&] () { return array; } ();
26   return 0;