Ada: Fix assertion failure with iterator in container aggregate
[gcc.git] / gcc / testsuite / g++.dg / cpp1y / lambda-generic-117778.C
blobf377e3acc912a687dfe8ddc08f8960e6e16694ae
1 // PR c++/117778
2 // { dg-do compile { target c++14 } }
4 auto l1 = [](auto (*fp)() -> auto) { return fp; };
5 auto l2 = [](auto fp() -> auto) { return fp; };
6 auto l3 = [](auto fp()) { return fp; };
7 auto l4 = [](auto (*fp)()) { return fp; };
8 auto l5 = [](auto fp() -> auto) -> auto { return fp; };
9 auto l6 = [](auto fp(auto fp2()) -> auto) -> auto { return fp; }; // { dg-error ".auto. parameter not permitted" }
10 auto l7 = [](auto fp(auto fp2() -> auto) -> auto) -> auto { return fp; }; // { dg-error ".auto. parameter not permitted" }
11 auto l8 = [](int fp(auto fp2())) { return fp; }; // { dg-error ".auto. parameter not permitted" }
12 auto l9 = [](auto fp(auto fp2() -> auto) -> auto) { return fp; }; // { dg-error ".auto. parameter not permitted" }