mirror of
https://github.com/python/cpython.git
synced 2025-08-01 07:33:08 +00:00
On 64 bit systems, int literals that use less than 64 bits are now ints
rather than longs. This also fixes the test for eval(-sys.maxint - 1).
This commit is contained in:
parent
6ec6ab02c3
commit
28746aba9b
3 changed files with 29 additions and 0 deletions
|
@ -216,6 +216,21 @@ if 1:
|
|||
self.assertTrue(isinstance(eval("%s" % (-sys.maxint - 1)), int))
|
||||
self.assertTrue(isinstance(eval("%s" % (-sys.maxint - 2)), long))
|
||||
|
||||
if sys.maxint == 9223372036854775807:
|
||||
def test_32_63_bit_values(self):
|
||||
a = +4294967296 # 1 << 32
|
||||
b = -4294967296 # 1 << 32
|
||||
c = +281474976710656 # 1 << 48
|
||||
d = -281474976710656 # 1 << 48
|
||||
e = +4611686018427387904 # 1 << 62
|
||||
f = -4611686018427387904 # 1 << 62
|
||||
g = +9223372036854775807 # 1 << 63 - 1
|
||||
h = -9223372036854775807 # 1 << 63 - 1
|
||||
|
||||
for variable in self.test_32_63_bit_values.func_code.co_consts:
|
||||
if variable is not None:
|
||||
self.assertTrue(isinstance(variable, int))
|
||||
|
||||
def test_sequence_unpacking_error(self):
|
||||
# Verify sequence packing/unpacking with "or". SF bug #757818
|
||||
i,j = (1, -1) or (-1, 1)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue