Commit Graph

130 Commits

Author SHA1 Message Date
Mark Dickinson
388122d43b Issue #9337: Make float.__str__ identical to float.__repr__.
(And similarly for complex numbers.)
2010-08-04 20:56:28 +00:00
Mark Dickinson
dc787d2055 Issue #8188: Introduce a new scheme for computing hashes of numbers
(instances of int, float, complex, decimal.Decimal and
fractions.Fraction) that makes it easy to maintain the invariant that
hash(x) == hash(y) whenever x and y have equal value.
2010-05-23 13:33:13 +00:00
Mark Dickinson
cc6a982de8 Issue #8748: Fix two issues with comparisons between complex and integer
objects.  (1) The comparison could incorrectly return True in some cases
(2**53+1 == complex(2**53) == 2**53), breaking transivity of equality.
(2) The comparison raised an OverflowError for large integers, leading
to unpredictable exceptions when combining integers and complex objects
in sets or dicts.

Patch by Meador Inge.
2010-05-21 14:55:26 +00:00
Antoine Pitrou
f95a1b3c53 Recorded merge of revisions 81029 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r81029 | antoine.pitrou | 2010-05-09 16:46:46 +0200 (dim., 09 mai 2010) | 3 lines

  Untabify C files. Will watch buildbots.
........
2010-05-09 15:52:27 +00:00
Mark Dickinson
f673f0c40c Issue #7845: Make 1j.__le__(2j) return NotImplemented rather than raising TypeError. 2010-03-13 09:48:39 +00:00
Ezio Melotti
50363262b2 Merged revisions 78319 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r78319 | ezio.melotti | 2010-02-22 18:30:58 +0200 (Mon, 22 Feb 2010) | 1 line

  #7482: clarify error message in case of division by zero of float and complex numbers.
........
2010-02-22 16:34:50 +00:00
Benjamin Peterson
aea4428fdc Merged revisions 77292-77293 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r77292 | benjamin.peterson | 2010-01-03 18:43:01 -0600 (Sun, 03 Jan 2010) | 1 line

  do correct lookup of the __complex__ method
........
  r77293 | benjamin.peterson | 2010-01-03 19:00:47 -0600 (Sun, 03 Jan 2010) | 1 line

  factor out __complex__ lookup code to fix another case
........
2010-01-04 01:10:28 +00:00
Mark Dickinson
a4962cb694 Merged revisions 76561 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r76561 | mark.dickinson | 2009-11-28 12:30:36 +0000 (Sat, 28 Nov 2009) | 5 lines

  Include ieeefp.h (when available) in pyport.h instead of individually in
  Objects/floatobject.c and Objects/complexobject.c.  This should silence
  compiler warnings about implicit declaration of the 'finite' function
  on Solaris.
........
2009-11-28 12:35:42 +00:00
Mark Dickinson
1daebdf82c Make sure memory is freed on error in complex_subtype_from_string. 2009-10-26 22:05:06 +00:00
Mark Dickinson
f972488213 Remove length limitation on string arguments to complex() 2009-10-26 21:51:18 +00:00
Skip Montanaro
ba1e0f46ab Issue 7147 - remove ability to attempt to build Python without complex number support (was broken anyway) 2009-10-18 14:25:35 +00:00
Mark Dickinson
6b1e43b7bc Issue #5829: complex('1e500') shouldn't raise OverflowError 2009-05-20 18:41:04 +00:00
Mark Dickinson
578cc749ab Merged revisions 72718 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r72718 | mark.dickinson | 2009-05-17 11:38:30 +0100 (Sun, 17 May 2009) | 4 lines

  Issue #6044: remove confusing wording from complex -> integer and
  complex -> float conversion error messages.
........
2009-05-17 10:40:10 +00:00
Eric Smith
63376228a3 Issue #5920: Changed format.__float__ and complex.__float__ to use a precision of 12 when using the empty presentation type. This more closely matches str()'s behavior and reduces surprises when adding alignment flags to an empty format string. Patch by Mark Dickinson. 2009-05-05 14:04:18 +00:00
Mark Dickinson
aa77d26009 Merged revisions 72253 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r72253 | mark.dickinson | 2009-05-03 21:59:48 +0100 (Sun, 03 May 2009) | 2 lines

  Eliminate some locale-dependent calls to isspace and tolower.
........
2009-05-03 21:07:13 +00:00
Mark Dickinson
725bfd8489 Issue #5914: Add new C-API function PyOS_string_to_double, to complement
PyOS_double_to_string, and deprecate PyOS_ascii_strtod and PyOS_ascii_atof.
2009-05-03 20:33:40 +00:00
Eric Smith
58a42244cf Issue #1588: Add complex.__format__. 2009-04-30 01:00:33 +00:00
Mark Dickinson
35f1c9470a Merged revisions 71963 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r71963 | mark.dickinson | 2009-04-26 15:00:08 +0100 (Sun, 26 Apr 2009) | 2 lines

  Reset errno before both calls to PyOS_ascii_strtod, not just one.
........
2009-04-26 14:11:18 +00:00
Mark Dickinson
de8a710849 Merged revisions 71869 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r71869 | mark.dickinson | 2009-04-25 10:47:00 +0100 (Sat, 25 Apr 2009) | 2 lines

  Fix typo in complex parsing code;  expand tests.
........
2009-04-25 10:11:40 +00:00
Mark Dickinson
6649fa42f8 Make sure that complex parsing code and corresponding tests
match for 2.7 and 3.1, and that 3.1 continues to
accept complex('j') and complex('4-j')
2009-04-24 13:25:20 +00:00
Mark Dickinson
ad476dab09 Issue #5816: Simplify code for parsing and printing of complex numbers.
nans and infs are no longer given special treatment; as a result,
repr(complex(z)) recovers z for any complex number z.
2009-04-23 19:14:16 +00:00
Eric Smith
0923d1d8d7 The other half of Issue #1580: use short float repr where possible.
Addresses the float -> string conversion, using David Gay's code which
was added in Mark Dickinson's checkin r71663.

Also addresses these, which are intertwined with the short repr
changes:

- Issue #5772: format(1e100, '<') produces '1e+100', not '1.0e+100'
- Issue #5515: 'n' formatting with commas no longer works poorly
    with leading zeros.
- PEP 378 Format Specifier for Thousands Separator: implemented
    for floats.
2009-04-16 20:16:10 +00:00
Mark Dickinson
e94c679df0 Issue #1717: rename tp_compare to tp_reserved. I'll change the
type of tp_compare in a separate commit, for ease of reversion
should things go wrong.
2009-02-02 20:36:42 +00:00
Mark Dickinson
8055afd019 Issue #4910, patch 3/3: rename nb_long to nb_reserved 2009-01-17 10:04:45 +00:00
Mark Dickinson
cce2f217d4 Issue 4910, patch 2 of (probably) 3: pave the way for renaming of
nb_long:  remove last remaining use of nb_long
(in the struct module) from the core, set nb_long slots on all builtin
and extension types to 0, and remove uses of __long__ in test_complex
and test_binop.

Reviewed by Benjamin Peterson.
2009-01-15 19:32:23 +00:00