From af6207d5391d434d6f2951da4c8f57d1f3a2a762 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Wed, 6 Jul 2011 20:57:55 -0400 Subject: [PATCH] Change error code for underflows in strtod (cherry picked from commit 9895c8bc62759a2d7abf95654fb2aefe5677a930) --- ChangeLog | 5 +++++ stdlib/strtod_l.c | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 534ac2c0941..b11f5ee012e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2011-06-22 Marek Polacek + + [BZ #9696] + * stdlib/strtod_l.c (round_and_return): Set ERANGE instead of EDOM. + 2011-06-30 Andreas Schwab * sysdeps/posix/getaddrinfo.c (gaih_inet): Make sure RES_USE_INET6 diff --git a/stdlib/strtod_l.c b/stdlib/strtod_l.c index 537d1fbc611..b3380fdba31 100644 --- a/stdlib/strtod_l.c +++ b/stdlib/strtod_l.c @@ -1,5 +1,5 @@ /* Convert string representing a number to float value, using given locale. - Copyright (C) 1997,1998,2002,2004,2005,2006,2007,2008,2009,2010 + Copyright (C) 1997,1998,2002,2004,2005,2006,2007,2008,2009,2010,2011 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 1997. @@ -185,7 +185,7 @@ round_and_return (mp_limb_t *retval, int exponent, int negative, if (shift > MANT_DIG) { - __set_errno (EDOM); + __set_errno (ERANGE); return 0.0; } -- 2.47.2