1 // PR c++/69078 2 // { dg-do run { target c++14 } } 3 // { dg-options "-Wall" } 4 5 struct Class { ClassClass6 Class(void (*_param)()) : data(_param) {} 7 void (*data)(); 8 }; 9 funUser(void (* test)(int))10void funUser(void (*test)(int)) { 11 test(60); 12 } 13 user(Class & c,int i)14void user(Class& c, int i) { 15 (void)i; 16 if (!c.data) __builtin_abort(); 17 } 18 probe()19void probe() {} 20 main()21int main() { 22 static Class instance = { probe }; 23 funUser([](auto... p) { 24 user(instance, p...); 25 }); 26 } 27