/* * Test file for creating multiple alias for a symbol * * NOTE: linking with _old_ crti.o exposes _init and _fini as * global symbols, the newer versions don't. * * 0000000000000000 g F .init 0000000000000000 .hidden _init * 0000000000000000 g F .fini 0000000000000000 .hidden _fini * * This test is looking for those symbols which are not experted. * So it's linked with dummy crti.o to avoid false positives. * * gcc -std=c89 -shared -gctf -g -mtune=generic -march=x86-64 -fPIC \ * -nostartfiles -Wl,-soname=test3.so.1 -o test3.so test3.c crti.o * */ void __foo(void); void foo(void) __attribute__((weak, alias("__foo"))); void foo__(void) __attribute__((weak, alias("__foo"))); void __foo__(void) __attribute__((alias("__foo"))); void __foo(void) { }