about summary refs log tree commit diff
diff options
context:
space:
mode:
authorGabriel F. T. Gomes <gabriel@inconstante.eti.br>2018-05-14 09:04:28 -0300
committerGabriel F. T. Gomes <gabriel@inconstante.eti.br>2018-05-24 13:12:39 -0300
commitfb0e10b8eb1ebb68c57d4551f7a95118f3c54837 (patch)
tree86c47782280f2ddf3719b64b4f19693e748bf4d2
parent43d4f3d5ad94e1fa5e56d7a7200d0e9f3d8e2f02 (diff)
downloadglibc-fb0e10b8eb1ebb68c57d4551f7a95118f3c54837.tar.gz
glibc-fb0e10b8eb1ebb68c57d4551f7a95118f3c54837.tar.xz
glibc-fb0e10b8eb1ebb68c57d4551f7a95118f3c54837.zip
Fix parameter type in C++ version of iseqsig (bug 23171)
The commit

  commit c85e54ac6cef0faed7b7ffc722f52523dec59bf5
  Author: Gabriel F. T. Gomes <gabriel@inconstante.eti.br>
  Date:   Fri Nov 3 10:44:36 2017 -0200

      Provide a C++ version of iseqsig (bug 22377)

mistakenly used double parameters in the long double version of iseqsig,
thus causing spurious conversions to double, as reported on bug 23171.

Tested for powerpc64le and x86_64.
-rw-r--r--ChangeLog6
-rw-r--r--math/math.h2
2 files changed, 7 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index e01136c6eb..4111d742c0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2018-05-24  Gabriel F. T. Gomes  <gabriel@inconstante.eti.br>
+
+	[BZ #23171]
+	* math/math.h [C++] (iseqsig): Fix parameter type for the long
+	double version.
+
 2018-05-23  Joseph Myers  <joseph@codesourcery.com>
 
 	* sysdeps/sh/Implies: Remove sh/soft-fp.
diff --git a/math/math.h b/math/math.h
index 87240336e0..ddee4e4083 100644
--- a/math/math.h
+++ b/math/math.h
@@ -1511,7 +1511,7 @@ template<> struct __iseqsig_type<double>
 
 template<> struct __iseqsig_type<long double>
 {
-  static int __call (double __x, double __y) throw ()
+  static int __call (long double __x, long double __y) throw ()
   {
 #  ifndef __NO_LONG_DOUBLE_MATH
     return __iseqsigl (__x, __y);