master
1export fn a() void {
2 for (0..10, 10..21) |i, j| {
3 _ = i;
4 _ = j;
5 }
6}
7export fn b() void {
8 const s1 = "hello";
9 const s2 = true;
10 for (s1, s2) |i, j| {
11 _ = i;
12 _ = j;
13 }
14}
15export fn c() void {
16 var buf: [10]u8 = undefined;
17 for (buf) |*byte| {
18 _ = byte;
19 }
20 _ = &buf;
21}
22export fn d() void {
23 const x: [*]const u8 = "hello";
24 const y: [*]const u8 = "world";
25 for (x, 0.., y) |x1, x2, x3| {
26 _ = x1;
27 _ = x2;
28 _ = x3;
29 }
30}
31export fn e() void {
32 for (123) |_| {}
33}
34
35// error
36//
37// :2:5: error: non-matching for loop lengths
38// :2:11: note: length 10 here
39// :2:19: note: length 11 here
40// :10:14: error: type 'bool' is not indexable and not a range
41// :10:14: note: for loop operand must be a range, array, slice, tuple, or vector
42// :17:16: error: pointer capture of non pointer type '[10]u8'
43// :17:10: note: consider using '&' here
44// :25:5: error: unbounded for loop
45// :25:10: note: type '[*]const u8' has no upper bound
46// :25:18: note: type '[*]const u8' has no upper bound
47// :32:10: error: type 'comptime_int' is not indexable and not a range
48// :32:10: note: for loop operand must be a range, array, slice, tuple, or vector