mirror of
https://github.com/python/cpython.git
synced 2025-08-31 05:58:33 +00:00
SF #660455 : patch by NNorwitz.
"Unsigned" (i.e., positive-looking, but really negative) hex/oct constants with a leading minus sign are once again properly negated. The micro-optimization for negated numeric constants did the wrong thing for such hex/oct constants. The patch avoids the optimization for all hex/oct constants. This needs to be backported to Python 2.2!
This commit is contained in:
parent
e71b9f830b
commit
66b1259dbc
3 changed files with 14 additions and 8 deletions
|
@ -133,9 +133,12 @@ expect_same("000000000000007", 7)
|
|||
expect_same("000000000000008.", 8.)
|
||||
expect_same("000000000000009.", 9.)
|
||||
|
||||
## # Verify treatment of unary minus on negative numbers SF bug #660455
|
||||
## import warnings
|
||||
## warnings.filterwarnings("ignore", "hex/oct constants", FutureWarning)
|
||||
## # XXX Of course the following test will have to be changed in Python 2.4
|
||||
## expect_same("0xffffffff", -1)
|
||||
## expect_same("-0xffffffff", 1)
|
||||
# Verify treatment of unary minus on negative numbers SF bug #660455
|
||||
import warnings
|
||||
warnings.filterwarnings("ignore", "hex/oct constants", FutureWarning)
|
||||
# XXX Of course the following test will have to be changed in Python 2.4
|
||||
# This test is in a <string> so the filterwarnings() can affect it
|
||||
exec """
|
||||
expect_same("0xffffffff", -1)
|
||||
expect_same("-0xffffffff", 1)
|
||||
"""
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue