summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@gmail.com>2011-07-06 20:57:55 -0400
committerUlrich Drepper <drepper@gmail.com>2011-07-06 20:57:55 -0400
commit9895c8bc62759a2d7abf95654fb2aefe5677a930 (patch)
tree8ded35a6ac3313127aded751360465ba49a26c69
parent56d4baf3bd18619983bbc9826ad4296a8067efc1 (diff)
Change error code for underflows in strtod
-rw-r--r--ChangeLog5
-rw-r--r--NEWS4
-rw-r--r--stdlib/strtod_l.c4
3 files changed, 9 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index 38149a6f36..547cd4edcf 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2011-06-22 Marek Polacek <mpolacek@redhat.com>
+
+ [BZ #9696]
+ * stdlib/strtod_l.c (round_and_return): Set ERANGE instead of EDOM.
+
2011-07-06 Ulrich Drepper <drepper@gmail.com>
* inet/getnetgrent_r.c (internal_getnetgrent_r): Fix check for known
diff --git a/NEWS b/NEWS
index 72e71767b0..1e1e220ab6 100644
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,4 @@
-GNU C Library NEWS -- history of user-visible changes. 2011-6-28
+GNU C Library NEWS -- history of user-visible changes. 2011-7-6
Copyright (C) 1992-2009, 2010, 2011 Free Software Foundation, Inc.
See the end for copying conditions.
@@ -9,7 +9,7 @@ Version 2.15
* The following bugs are resolved with this release:
- 12874, 12885, 12907, 12935
+ 9696, 12874, 12885, 12907, 12935
* New program pldd to list loaded object of a process
Implemented by Ulrich Drepper.
diff --git a/stdlib/strtod_l.c b/stdlib/strtod_l.c
index 537d1fbc61..b3380fdba3 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 <drepper@cygnus.com>, 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;
}