about summary refs log tree commit diff
path: root/include/shlib-compat.h
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2006-10-07 19:45:55 +0000
committerUlrich Drepper <drepper@redhat.com>2006-10-07 19:45:55 +0000
commitc4f9fc3a99de138da440da307753ce73ed4c6747 (patch)
tree74b02713eab47dbfada8357c38f88dfa0248101e /include/shlib-compat.h
parentfeb87ad16d0eba1b2065c0f7e74f5f89a7fedc74 (diff)
downloadglibc-c4f9fc3a99de138da440da307753ce73ed4c6747.tar.gz
glibc-c4f9fc3a99de138da440da307753ce73ed4c6747.tar.xz
glibc-c4f9fc3a99de138da440da307753ce73ed4c6747.zip
* include/shlib-compat.h (SHLIB_COMPAT): Expand parameters before use.
	(versioned_symbol): Likewise.
	(compat_symbol): Likewise.
Diffstat (limited to 'include/shlib-compat.h')
-rw-r--r--include/shlib-compat.h16
1 files changed, 11 insertions, 5 deletions
diff --git a/include/shlib-compat.h b/include/shlib-compat.h
index 1e6d1782d9..79246dff25 100644
--- a/include/shlib-compat.h
+++ b/include/shlib-compat.h
@@ -1,5 +1,5 @@
 /* Macros for managing ABI-compatibility definitions using ELF symbol versions.
-   Copyright (C) 2000, 2002 Free Software Foundation, Inc.
+   Copyright (C) 2000, 2002, 2006 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -44,6 +44,8 @@
    in the GLIBC_2.0 version and obsoleted in the GLIBC_2.2 version.  */
 
 # define SHLIB_COMPAT(lib, introduced, obsoleted)			      \
+  _SHLIB_COMPAT (lib, introduced, obsoleted)
+# define _SHLIB_COMPAT(lib, introduced, obsoleted)			      \
   ((IS_IN_##lib - 0)							      \
    && (!(ABI_##lib##_##obsoleted - 0)					      \
        || ((ABI_##lib##_##introduced - 0) < (ABI_##lib##_##obsoleted - 0))))
@@ -62,13 +64,17 @@
    shlib-versions if that is newer.  */
 
 # define versioned_symbol(lib, local, symbol, version) \
-  versioned_symbol_1 (local, symbol, VERSION_##lib##_##version)
-# define versioned_symbol_1(local, symbol, name) \
+  versioned_symbol_1 (lib, local, symbol, version)
+# define versioned_symbol_1(lib, local, symbol, version) \
+  versioned_symbol_2 (local, symbol, VERSION_##lib##_##version)
+# define versioned_symbol_2(local, symbol, name) \
   default_symbol_version (local, symbol, name)
 
 # define compat_symbol(lib, local, symbol, version) \
-  compat_symbol_1 (local, symbol, VERSION_##lib##_##version)
-# define compat_symbol_1(local, symbol, name) \
+  compat_symbol_1 (lib, local, symbol, version)
+# define compat_symbol_1(lib, local, symbol, version) \
+  compat_symbol_2 (local, symbol, VERSION_##lib##_##version)
+# define compat_symbol_2(local, symbol, name) \
   symbol_version (local, symbol, name)
 
 #else