1 /* Test STT_GNU_IFUNC symbol reference in a shared library.  */
2 
3 extern int foo (void);
4 
5 typedef int (*foo_p) (void);
6 
7 extern foo_p get_foo_p (void);
8 extern foo_p get_foo (void);
9 
10 foo_p foo_ptr = foo;
11 
12 foo_p
get_foo_p(void)13 get_foo_p (void)
14 {
15   return foo_ptr;
16 }
17 
18 foo_p
get_foo(void)19 get_foo (void)
20 {
21   return foo;
22 }
23