| /* Test gcov extern inline. */ |
| |
| /* { dg-do run { target native } } */ |
| /* { dg-options "-O2 -fprofile-arcs -ftest-coverage -fgnu89-inline" } */ |
| /* The following line arranges that Darwin has behavior like elf weak import. */ |
| /* { dg-additional-options "-flat_namespace -undefined suppress" { target *-*-darwin* } } */ |
| /* { dg-require-weak "" } */ |
| /* { dg-skip-if "undefined weak not supported" { { hppa*-*-hpux* } && { ! lp64 } } } */ |
| /* { dg-skip-if "undefined weak not supported" { powerpc-ibm-aix* } } */ |
| |
| extern int __attribute__ ((weak)) Foo (); |
| |
| extern __inline int Foo () |
| { |
| return 0; /* count(-) */ |
| } |
| |
| int (* __attribute__ ((noinline)) Bar ()) () |
| { |
| return Foo; /* count(1) */ |
| } |
| |
| int main () |
| { |
| return Bar () != 0; /* count(1) */ |
| } |
| |
| /* { dg-final { run-gcov { -a gcov-14.c } } } */ |