about summary refs log tree commit diff
path: root/math/libm-test.inc
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2014-03-28 20:53:32 +0000
committerJoseph Myers <joseph@codesourcery.com>2014-03-28 20:53:32 +0000
commit289e0779571a36a8f30ae0408b4902bb7f2ab92e (patch)
treeb958fb51b0657f12d0571e4d82c2069a2929570f /math/libm-test.inc
parent277ae3f186eb9158219aacf20199cdd02ad133e7 (diff)
downloadglibc-289e0779571a36a8f30ae0408b4902bb7f2ab92e.tar.gz
glibc-289e0779571a36a8f30ae0408b4902bb7f2ab92e.tar.xz
glibc-289e0779571a36a8f30ae0408b4902bb7f2ab92e.zip
Fix clog10 (-0 +/- 0i) (bug 16362).
This patch fixes the imaginary part of clog10 (-0 +/- 0i), which
should be +/-pi / log(10) by analogy with clog (the functions were
wrongly returning a result with imaginary part +/-pi, same as for
clog, and the tests matched the incorrect result, though both
functions and tests were correct for the similar case of clog10 (-inf
+/- 0i)).  Tested x86_64 and x86.

	[BZ #16362]
	* math/s_clog10.c (M_PI_LOG10E): New macro.
	(__clog10): Use M_PI_LOG10E instead of M_PI when real and
	imaginary parts are 0.
	* math/s_clog10f.c (M_PI_LOG10Ef): New macro.
	(__clog10f): Use M_PI_LOG10Ef instead of M_PI when real and
	imaginary parts are 0.
	* math/s_clog10l.c (M_PI_LOG10El): New macro.
	(__clog10l): Use M_PI_LOG10El instead of M_PIl when real and
	imaginary parts are 0.
	* math/libm-test.inc (clog10_test_data): Update expected results
	for when real and imaginary parts are 0.
Diffstat (limited to 'math/libm-test.inc')
-rw-r--r--math/libm-test.inc4
1 files changed, 2 insertions, 2 deletions
diff --git a/math/libm-test.inc b/math/libm-test.inc
index 9c4c2bfb75..cefcb9682a 100644
--- a/math/libm-test.inc
+++ b/math/libm-test.inc
@@ -6130,8 +6130,8 @@ clog_test (void)
 
 static const struct test_c_c_data clog10_test_data[] =
   {
-    TEST_c_c (clog10, minus_zero, 0, minus_infty, M_PIl, DIVIDE_BY_ZERO_EXCEPTION),
-    TEST_c_c (clog10, minus_zero, minus_zero, minus_infty, -M_PIl, DIVIDE_BY_ZERO_EXCEPTION),
+    TEST_c_c (clog10, minus_zero, 0, minus_infty, M_PI_LOG10El, DIVIDE_BY_ZERO_EXCEPTION),
+    TEST_c_c (clog10, minus_zero, minus_zero, minus_infty, -M_PI_LOG10El, DIVIDE_BY_ZERO_EXCEPTION),
 
     TEST_c_c (clog10, 0, 0, minus_infty, 0.0, DIVIDE_BY_ZERO_EXCEPTION),
     TEST_c_c (clog10, 0, minus_zero, minus_infty, minus_zero, DIVIDE_BY_ZERO_EXCEPTION),