Ada: Fix assertion failure with iterator in container aggregate
[gcc.git] / gcc / testsuite / g++.dg / cpp2a / abbrev-fn2.C
blob902382651b893d0f3f943b22d9871babb7e89f90
1 // PR c++/117778
2 // { dg-do run { target c++20 } }
4 int
5 f (auto fp())
7   return fp ();
10 int
11 g (auto fp() -> auto)
13   return fp ();
16 int
17 h (auto (*fp)() -> auto)
19   return fp ();
22 auto
23 fa (auto fp()) -> auto
25   return fp ();
28 auto
29 ga (auto fp() -> auto) -> auto
31   return fp ();
34 auto
35 ha (auto (*fp)() -> auto) -> auto
37   return fp ();
40 int bar() { return 42; }
42 int
43 main ()
45   if (f (bar) != 42 || g (bar) != 42 || h (bar) != 42)
46     __builtin_abort ();
47   if (fa (bar) != 42 || ga (bar) != 42 || ha (bar) != 42)
48     __builtin_abort ();