aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorGreg McGary <greg@mcgary.org>2000-06-27 17:05:42 +0000
committerGreg McGary <greg@mcgary.org>2000-06-27 17:05:42 +0000
commitebdf53a7fc8e6d6b68d2dfe2452c4149dc58e82a (patch)
tree857eb5411b6830a0eb9017d26e2957170554d7c0 /include
parent36e3c1195f2bb4c5011a40a85c526c249c6205e9 (diff)
downloadglibc-ebdf53a7fc8e6d6b68d2dfe2452c4149dc58e82a.zip
glibc-ebdf53a7fc8e6d6b68d2dfe2452c4149dc58e82a.tar.gz
glibc-ebdf53a7fc8e6d6b68d2dfe2452c4149dc58e82a.tar.bz2
* elf/dl-open.c (_dl_sysdep_start): Wrap weak_extern decl in BP_SYM ().
* include/libc-symbols.h (weak_extern): Add extra level of expansion. (symbol_version, default_symbol_version): Factor redundant definitions out of conditional. * linuxthreads/sysdeps/pthread/bits/libc-lock.h: Wrap BP_SYM () around weak extern declarations of pthread functions that have pointers in their return+arg signatures. 2000-06-27 Greg McGary <greg@mcgary.org> * elf/dl-open.c (_dl_sysdep_start): Wrap weak_extern decl in BP_SYM (). * include/libc-symbols.h (weak_extern): Add extra level of expansion. (symbol_version, default_symbol_version): Factor redundant definitions out of conditional. * linuxthreads/sysdeps/pthread/bits/libc-lock.h: Wrap BP_SYM () around weak extern declarations of pthread functions that have pointers in their return+arg signatures.
Diffstat (limited to 'include')
-rw-r--r--include/libc-symbols.h17
1 files changed, 7 insertions, 10 deletions
diff --git a/include/libc-symbols.h b/include/libc-symbols.h
index d30ac67..7e41774 100644
--- a/include/libc-symbols.h
+++ b/include/libc-symbols.h
@@ -97,10 +97,11 @@
extern __typeof (name) aliasname __attribute__ ((weak, alias (#name)));
/* Declare SYMBOL as weak undefined symbol (resolved to 0 if not defined). */
+# define weak_extern(symbol) _weak_extern (symbol)
# ifdef HAVE_ASM_WEAKEXT_DIRECTIVE
-# define weak_extern(symbol) asm (".weakext " __SYMBOL_PREFIX #symbol);
+# define _weak_extern(symbol) asm (".weakext " __SYMBOL_PREFIX #symbol);
# else
-# define weak_extern(symbol) asm (".weak " __SYMBOL_PREFIX #symbol);
+# define _weak_extern(symbol) asm (".weak " __SYMBOL_PREFIX #symbol);
# endif
# else
@@ -267,22 +268,18 @@
#endif /* Have GNU ld. */
#if DO_VERSIONING
-# ifdef __ASSEMBLER__
-# define symbol_version(real, name, version) \
+# define symbol_version(real, name, version) \
_symbol_version(real, name, version)
+# define default_symbol_version(real, name, version) \
+ _default_symbol_version(real, name, version)
+# ifdef __ASSEMBLER__
# define _symbol_version(real, name, version) \
.symver real, name##@##version
-# define default_symbol_version(real, name, version) \
- _default_symbol_version(real, name, version)
# define _default_symbol_version(real, name, version) \
.symver real, name##@##@##version
# else
-# define symbol_version(real, name, version) \
- _symbol_version(real, name, version)
# define _symbol_version(real, name, version) \
__asm__ (".symver " #real "," #name "@" #version)
-# define default_symbol_version(real, name, version) \
- _default_symbol_version(real, name, version)
# define _default_symbol_version(real, name, version) \
__asm__ (".symver " #real "," #name "@@" #version)
# endif