/* { dg-do compile } */ struct T; typedef void F(void); F* aux(void (*x)()) { return x; } void make_mess (int); F* get_funloc (void (*x)(int), F* (*y)()) { return y(x); } F* foo () { return get_funloc (make_mess, aux); }