3 # This file is part of NIT ( http://www.nitlanguage.org ).
4 # This program is public domain
6 # Task: Integer Overflow
7 # SEE: <rosettacode.org/wiki/Integer_overflow>
8 module integer_overflow
10 # Nit possed integers of 32-bit name Int32 and unsigned
12 # Nit does not recognize overflow.
14 print
"Signed 32-bit:"
15 print
( -(-2147483647i32
- 1i32
) )
16 print
2000000000i32
+ 2000000000i32
17 print
-2147483647i32
- 2147483647i32
18 print
46341i32
* 46341i32
19 #print( (-2147483647i32 - 1i32) / -1i32 )
21 print
"unsigned 32-bit:"
23 print
3000000000u32
+ 3000000000u32
24 print
2147483647u32
- 4294967295u32
25 print
65537u32
* 65537u32