about summary refs log tree commit diff
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2000-03-27 23:57:43 +0000
committerRoland McGrath <roland@gnu.org>2000-03-27 23:57:43 +0000
commit65b4f10b8945da6e664058e1eabb90e41d887286 (patch)
tree9188dfbbc5b62d9f340bbf83d4c574cd5a0c4ec7
parent58dc1d49686da5b13a8e63f86fecf025b532572e (diff)
downloadglibc-65b4f10b8945da6e664058e1eabb90e41d887286.tar.gz
glibc-65b4f10b8945da6e664058e1eabb90e41d887286.tar.xz
glibc-65b4f10b8945da6e664058e1eabb90e41d887286.zip
* include/shlib-compat.h (SHLIB_COMPAT): Make the test handle the
	obsoleting version not being defined at all, in which case the
	result is always true.
-rw-r--r--ChangeLog4
-rw-r--r--include/shlib-compat.h3
2 files changed, 6 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 76391807f2..5654308636 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2000-03-27  Roland McGrath  <roland@baalperazim.frob.com>
 
+	* include/shlib-compat.h (SHLIB_COMPAT): Make the test handle the
+	obsoleting version not being defined at all, in which case the
+	result is always true.
+
 	* Makeconfig (preprocess-versions): New canned sequence for running
 	cpp on shlib-versions and the like.
 	(soversions.i): Use it.
diff --git a/include/shlib-compat.h b/include/shlib-compat.h
index 7f66cbead5..a95c1e0806 100644
--- a/include/shlib-compat.h
+++ b/include/shlib-compat.h
@@ -44,7 +44,8 @@
    in the GLIBC_2.0 version and obsoleted in the GLIBC_2.2 version.  */
 
 # define SHLIB_COMPAT(lib, introduced, obsoleted) \
-  (ABI_##lib##_##introduced < ABI_##lib##_##obsoleted)
+  (!(ABI_##lib##_##obsoleted - 0) \
+   || ((ABI_##lib##_##introduced - 0) < (ABI_##lib##_##obsoleted - 0)))
 
 /* That header also defines symbols like `VERSION_libm_GLIBC_2_1' to
    the version set name to use for e.g. symbols first introduced into