diff options
Diffstat (limited to 'tests/basics/int_big_and.py')
-rw-r--r-- | tests/basics/int_big_and.py | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/tests/basics/int_big_and.py b/tests/basics/int_big_and.py new file mode 100644 index 0000000000..a48848dbf0 --- /dev/null +++ b/tests/basics/int_big_and.py @@ -0,0 +1,24 @@ +print(0 & (1 << 80)) +print(0 & (1 << 80) == 0) +print(bool(0 & (1 << 80))) + +a = 0xfffffffffffffffffffffffffffff +print(a & (1 << 80)) +print((a & (1 << 80)) >> 80) +print((a & (1 << 80)) >> 80 == 1) + +# test negative on rhs +a = 123456789012345678901234567890 +print(a & -1) +print(a & -2) +print(a & -2345678901234567890123456789) +print(a & (-a)) + +# test negative on lhs +a = 123456789012345678901234567890 +print(-1 & a) +print(-2 & a) +print(-2345678901234567890123456789 & a) +print((-a) & a) +print((-a) & 0xffffffff) +print((-a) & 0xffffffffffffffffffffffffffffffff) |