1 extern "C" double sin (double);
2 typedef double UnaryFunType (double);
3 #pragma GCC diagnostic ignored "-Wreturn-type"
4 class A
5 {
6 public:
7   int hash ();
lookup(UnaryFunType p1)8   double lookup (UnaryFunType p1)
9     {
10       int a = hash ();
11       if (p1)
12 	return 0;
13     }
14 };
15 A b;
16 void
math_sin_impl()17 math_sin_impl ()
18 {
19   b.lookup (sin);
20 }
21