1 /* { dg-require-linker-plugin "" } */ 2 /* { dg-extra-ld-options "-fuse-linker-plugin" } */ 3 #include <stdio.h> 4 5 #define ASMNAME(cname) ASMNAME2 (__USER_LABEL_PREFIX__, cname) 6 #define ASMNAME2(prefix, cname) STRING (prefix) cname 7 #define STRING(x) #x 8 9 extern __attribute__((visibility("hidden"))) void _moz_foo (void); 10 extern __typeof (_moz_foo) _moz_foo __asm__ (ASMNAME ("INT__foo")) __attribute__((__visibility__("hidden"))) ; _moz_foo(void)11void _moz_foo(void) 12 { 13 printf ("blah\n"); 14 } 15 extern __typeof (_moz_foo) EXT__foo __asm__(ASMNAME ("_moz_foo")) __attribute__((__alias__("" "INT__foo"))); 16