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)11 void _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