summaryrefslogtreecommitdiff
path: root/tests/basics/int_big_lshift.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/basics/int_big_lshift.py')
-rw-r--r--tests/basics/int_big_lshift.py17
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/basics/int_big_lshift.py b/tests/basics/int_big_lshift.py
new file mode 100644
index 000000000..af1d97504
--- /dev/null
+++ b/tests/basics/int_big_lshift.py
@@ -0,0 +1,17 @@
+# tests transition from small to large int representation by left-shift operation
+for i in range(1, 17):
+ for shift in range(70):
+ print(i, '<<', shift, '=', i << shift)
+
+# test bit-shifting negative integers
+for i in range(8):
+ print(-100000000000000000000000000000 << i)
+ print(-100000000000000000000000000001 << i)
+ print(-100000000000000000000000000002 << i)
+ print(-100000000000000000000000000003 << i)
+ print(-100000000000000000000000000004 << i)
+ print(-100000000000000000000000000000 >> i)
+ print(-100000000000000000000000000001 >> i)
+ print(-100000000000000000000000000002 >> i)
+ print(-100000000000000000000000000003 >> i)
+ print(-100000000000000000000000000004 >> i)