1# tests int constant folding in compiler
2
3# positive
4print(+1)
5print(+100)
6
7# negation
8print(-1)
9print(-(-1))
10
11# 1's complement
12print(~0)
13print(~1)
14print(~-1)
15
16# addition
17print(1 + 2)
18
19# subtraction
20print(1 - 2)
21print(2 - 1)
22
23# multiplication
24print(1 * 2)
25print(123 * 456)
26
27# floor div and modulo
28print(123 // 7, 123 % 7)
29print(-123 // 7, -123 % 7)
30print(123 // -7, 123 % -7)
31print(-123 // -7, -123 % -7)
32
33# power
34print(2 ** 3)
35print(3 ** 4)
36
37# won't fold so an exception can be raised at runtime
38try:
39    1 << -1
40except ValueError:
41    print('ValueError')
42