summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMark Dickinson <dickinsm@gmail.com>2009-10-20 13:40:25 (GMT)
committerMark Dickinson <dickinsm@gmail.com>2009-10-20 13:40:25 (GMT)
commit2d4fce2dfbf6d54167a38ed1eff2e49188ac2958 (patch)
tree04419e03420d4ef69160354f6734b360b8ba83b0
parent8b8650aa93f9d1e39a36ac68cac04a5f169328b9 (diff)
downloadcpython-2d4fce2dfbf6d54167a38ed1eff2e49188ac2958.zip
cpython-2d4fce2dfbf6d54167a38ed1eff2e49188ac2958.tar.gz
cpython-2d4fce2dfbf6d54167a38ed1eff2e49188ac2958.tar.bz2
Merged revisions 75562 via svnmerge from
svn+ssh://pythondev@www.python.org/python/branches/py3k ................ r75562 | mark.dickinson | 2009-10-20 14:38:04 +0100 (Tue, 20 Oct 2009) | 10 lines Merged revisions 75561 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r75561 | mark.dickinson | 2009-10-20 14:33:03 +0100 (Tue, 20 Oct 2009) | 3 lines Issue #7099: Decimal.is_normal should return True for all nonzero finite non-subnormal values, even those with exponent > Emax. ........ ................
-rw-r--r--Lib/decimal.py2
-rw-r--r--Lib/test/decimaltestdata/extra.decTest24
-rw-r--r--Misc/NEWS3
3 files changed, 16 insertions, 13 deletions
diff --git a/Lib/decimal.py b/Lib/decimal.py
index 62dcd40..b44c3f5 100644
--- a/Lib/decimal.py
+++ b/Lib/decimal.py
@@ -3000,7 +3000,7 @@ class Decimal(object):
return False
if context is None:
context = getcontext()
- return context.Emin <= self.adjusted() <= context.Emax
+ return context.Emin <= self.adjusted()
def is_qnan(self):
"""Return True if self is a quiet NaN; otherwise return False."""
diff --git a/Lib/test/decimaltestdata/extra.decTest b/Lib/test/decimaltestdata/extra.decTest
index 1d6ea37..15c1b52 100644
--- a/Lib/test/decimaltestdata/extra.decTest
+++ b/Lib/test/decimaltestdata/extra.decTest
@@ -1128,10 +1128,10 @@ bool0932 isnormal 1E+998 -> 1
bool0933 isnormal -1E+998 -> 1
bool0934 isnormal 1E+999 -> 1
bool0935 isnormal -1E+999 -> 1
-bool0936 isnormal 1E+1000 -> 0
-bool0937 isnormal -1E+1000 -> 0
-bool0938 isnormal 1E+2000 -> 0
-bool0939 isnormal -1E+2000 -> 0
+bool0936 isnormal 1E+1000 -> 1
+bool0937 isnormal -1E+1000 -> 1
+bool0938 isnormal 1E+2000 -> 1
+bool0939 isnormal -1E+2000 -> 1
bool0940 isnormal 9E-2000 -> 0
bool0941 isnormal -9E-2000 -> 0
bool0942 isnormal 9E-1008 -> 0
@@ -1178,10 +1178,10 @@ bool0982 isnormal 9E+998 -> 1
bool0983 isnormal -9E+998 -> 1
bool0984 isnormal 9E+999 -> 1
bool0985 isnormal -9E+999 -> 1
-bool0986 isnormal 9E+1000 -> 0
-bool0987 isnormal -9E+1000 -> 0
-bool0988 isnormal 9E+2000 -> 0
-bool0989 isnormal -9E+2000 -> 0
+bool0986 isnormal 9E+1000 -> 1
+bool0987 isnormal -9E+1000 -> 1
+bool0988 isnormal 9E+2000 -> 1
+bool0989 isnormal -9E+2000 -> 1
bool0990 isnormal 9.99999999E-2000 -> 0
bool0991 isnormal -9.99999999E-2000 -> 0
bool0992 isnormal 9.99999999E-1008 -> 0
@@ -1228,10 +1228,10 @@ bool1032 isnormal 9.99999999E+998 -> 1
bool1033 isnormal -9.99999999E+998 -> 1
bool1034 isnormal 9.99999999E+999 -> 1
bool1035 isnormal -9.99999999E+999 -> 1
-bool1036 isnormal 9.99999999E+1000 -> 0
-bool1037 isnormal -9.99999999E+1000 -> 0
-bool1038 isnormal 9.99999999E+2000 -> 0
-bool1039 isnormal -9.99999999E+2000 -> 0
+bool1036 isnormal 9.99999999E+1000 -> 1
+bool1037 isnormal -9.99999999E+1000 -> 1
+bool1038 isnormal 9.99999999E+2000 -> 1
+bool1039 isnormal -9.99999999E+2000 -> 1
bool1040 isnormal Infinity -> 0
bool1041 isnormal -Infinity -> 0
bool1042 isnormal NaN -> 0
diff --git a/Misc/NEWS b/Misc/NEWS
index 5d15820..9935088 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -30,6 +30,9 @@ Core and Builtins
Library
-------
+- Issue #7099: Decimal.is_normal now returns True for numbers with exponent
+ larger than emax.
+
- Issue #7080: locale.strxfrm() raises a MemoryError on 64-bit non-Windows
platforms, and assorted locale fixes by Derk Drukker.