aboutsummaryrefslogtreecommitdiff
path: root/tests/conformance/4-statements/o3_function_sum.zc
blob: 37b3ef4b50791610be855cc204a3887747aa97ec (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
// expect: 10/
// spec 4.10.1 example: o3 changes speed, not meaning
include rt;
void pn(int x) { rt.put_n(x); rt.put_c(10); }
o3 int sum(fixed int[?] a) { int s = 0; for (int i = 0; i < len(a); i++) s += a[i]; return s; }
fn main() {
	fixed int[?] a = rt.new(fixed int[?], 4);
	for (int i = 0; i < 4; i++) a[i] = i + 1;
	pn(sum(a));
	rt.free(a);
	return 0;
}
// zc0: skip