aboutsummaryrefslogtreecommitdiff
path: root/tests/conformance/3-expressions/int_add_wrap.zc
blob: 8c4e0d2f7ee9431e273d05e1f83cd174395b2639 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// expect: -9223372036854775808/-9223372036854775808/9223372036854775807/9223372036854775807/-2/-2/3/3/
// spec 3.4.1
include rt;
void pn(int x) { rt.put_n(x); rt.put_c(10); }
fn main() {
	pn(9223372036854775807 + 1);
	{ int a = 9223372036854775807, b = 1; pn(a + b); }
	pn((-9223372036854775807 - 1) + -1);
	{ int a = (-9223372036854775807 - 1), b = -1; pn(a + b); }
	pn(9223372036854775807 + 9223372036854775807);
	{ int a = 9223372036854775807, b = 9223372036854775807; pn(a + b); }
	pn(1 + 2);
	{ int a = 1, b = 2; pn(a + b); }
	return 0;
}