aboutsummaryrefslogtreecommitdiff
path: root/tests/conformance/3-expressions/int_mod_signs.zc
blob: 4ed0c6f66f65c28050aaf5f90d7ca866d95b3fc0 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// expect: 1/1/1/1/-1/-1/-1/-1/0/0/2/2/
// spec 3.4.2
include rt;
void pn(int x) { rt.put_n(x); rt.put_c(10); }
fn main() {
	pn(7 % 2);
	{ int a = 7, b = 2; pn(a % b); }
	pn(7 % -2);
	{ int a = 7, b = -2; pn(a % b); }
	pn(-7 % 2);
	{ int a = -7, b = 2; pn(a % b); }
	pn(-7 % -2);
	{ int a = -7, b = -2; pn(a % b); }
	pn(0 % 5);
	{ int a = 0, b = 5; pn(a % b); }
	pn(100 % 7);
	{ int a = 100, b = 7; pn(a % b); }
	return 0;
}