about summary refs log tree commit diff
diff options
context:
space:
mode:
authorChris Metcalf <cmetcalf@ezchip.com>2014-12-22 15:24:17 -0500
committerChris Metcalf <cmetcalf@ezchip.com>2014-12-22 15:24:17 -0500
commitb638f96a7607a279d5fd9b14fb49e02fa5151b5f (patch)
treeeb07baecbd8db75f948e2d8eea5109ff5fe68ce0
parent0dacd7a3b9401f7eb7160cf79231a4573773c5da (diff)
downloadglibc-b638f96a7607a279d5fd9b14fb49e02fa5151b5f.tar.gz
glibc-b638f96a7607a279d5fd9b14fb49e02fa5151b5f.tar.xz
glibc-b638f96a7607a279d5fd9b14fb49e02fa5151b5f.zip
Fix namespace conformance issue with Bessel functions.
[BZ #17747]
The y0/y1/yn and j0/j1/jn functions provided a strong_alias
to the "l"-suffixed variants when no long double support is
being compiled.  This breaks namespace conformance when the
basename versions conform but the l-suffixed ones don't.
Fixed by making them weak aliases instead.
-rw-r--r--ChangeLog6
-rw-r--r--math/w_j0.c4
-rw-r--r--math/w_j1.c4
-rw-r--r--math/w_jn.c4
4 files changed, 12 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index 77abebf478..383205bf51 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
 2014-12-22  Chris Metcalf  <cmetcalf@ezchip.com>
 
+	[BZ #17747]
+	* math/w_j0.c [defined NO_LONG_DOUBLE] (j0, y0): Convert strong
+	alias to weak alias for j0l, y0l.
+	* math/w_j1.c [defined NO_LONG_DOUBLE] (j1, y1): Likewise.
+	* math/w_jn.c [defined NO_LONG_DOUBLE] (jn, yn): Likewise.
+
 	[BZ #17746]
 	* sysdeps/tile/tilegx/strstr.c (STRSTR2): Remove implicit boolean
 	conversion.
diff --git a/math/w_j0.c b/math/w_j0.c
index f7d4f2b12e..92a834542a 100644
--- a/math/w_j0.c
+++ b/math/w_j0.c
@@ -33,7 +33,7 @@ j0 (double x)
   return __ieee754_j0 (x);
 }
 #ifdef NO_LONG_DOUBLE
-strong_alias (j0, j0l)
+weak_alias (j0, j0l)
 #endif
 
 
@@ -64,5 +64,5 @@ y0 (double x)
   return __ieee754_y0 (x);
 }
 #ifdef NO_LONG_DOUBLE
-strong_alias (y0, y0l)
+weak_alias (y0, y0l)
 #endif
diff --git a/math/w_j1.c b/math/w_j1.c
index 1665501f44..37c6d1f4b5 100644
--- a/math/w_j1.c
+++ b/math/w_j1.c
@@ -33,7 +33,7 @@ j1 (double x)
   return __ieee754_j1 (x);
 }
 #ifdef NO_LONG_DOUBLE
-strong_alias (j1, j1l)
+weak_alias (j1, j1l)
 #endif
 
 
@@ -64,5 +64,5 @@ y1 (double x)
   return __ieee754_y1 (x);
 }
 #ifdef NO_LONG_DOUBLE
-strong_alias (y1, y1l)
+weak_alias (y1, y1l)
 #endif
diff --git a/math/w_jn.c b/math/w_jn.c
index 993b33b610..56bd280b1e 100644
--- a/math/w_jn.c
+++ b/math/w_jn.c
@@ -33,7 +33,7 @@ jn (int n, double x)
   return __ieee754_jn (n, x);
 }
 #ifdef NO_LONG_DOUBLE
-strong_alias (jn, jnl)
+weak_alias (jn, jnl)
 #endif
 
 
@@ -64,5 +64,5 @@ yn (int n, double x)
   return __ieee754_yn (n, x);
 }
 #ifdef NO_LONG_DOUBLE
-strong_alias (yn, ynl)
+weak_alias (yn, ynl)
 #endif