This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
[PATCH] Fix namespace conformance issue with Bessel functions.
- From: Chris Metcalf <cmetcalf at ezchip dot com>
- To: libc-alpha at sourceware dot org, joseph at codesourcery dot com
- Date: Mon, 22 Dec 2014 15:24:17 -0500
- Subject: [PATCH] Fix namespace conformance issue with Bessel functions.
- Authentication-results: sourceware.org; auth=none
Joseph, does this look right?
[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 was
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.
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.
---
ChangeLog | 6 ++++++
math/w_j0.c | 4 ++--
math/w_j1.c | 4 ++--
math/w_jn.c | 4 ++--
4 files changed, 12 insertions(+), 6 deletions(-)
diff --git a/math/w_j0.c b/math/w_j0.c
index f7d4f2b..92a8345 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 1665501..37c6d1f 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 993b33b..56bd280 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
--
1.7.1