about summary refs log tree commit diff
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.tar.gz
glibc-ebdf53a7fc8e6d6b68d2dfe2452c4149dc58e82a.tar.xz
glibc-ebdf53a7fc8e6d6b68d2dfe2452c4149dc58e82a.zip
* 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 d30ac674f0..7e41774179 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