diff Python/dtoa.c @ 58459:b40a5a568e76 legacy-trunk

dtoa.c fix from upstream that fixes incorrectly rounded results for certain subnormals that are also halfway cases.
author Mark Dickinson <dickinsm@gmail.com>
date Sat, 23 Jan 2010 21:25:53 +0000
parents d77c947ff7db
children 5cea27275af1
line wrap: on
line diff
--- a/Python/dtoa.c	Sat Jan 23 20:48:56 2010 +0000
+++ b/Python/dtoa.c	Sat Jan 23 21:25:53 2010 +0000
@@ -2084,9 +2084,9 @@
             if (!odd)
                 break;
             if (dsign)
-                dval(&rv) += ulp(&rv);
+                dval(&rv) += sulp(&rv, &bc);
             else {
-                dval(&rv) -= ulp(&rv);
+                dval(&rv) -= sulp(&rv, &bc);
                 if (!dval(&rv)) {
                     if (bc.nd >nd)
                         break;