From c993af62347faf124e97b16801356d34322a216e Mon Sep 17 00:00:00 2001 From: flexicoding <97116715+flexicoding@users.noreply.github.com> Date: Sat, 18 Feb 2023 18:07:35 +0100 Subject: [PATCH 01/36] compiler_rt: remove unexported functions --- lib/compiler_rt/README.md | 4 ++++ lib/compiler_rt/gehf2.zig | 8 -------- 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/lib/compiler_rt/README.md b/lib/compiler_rt/README.md index a5d6bfdd6b..0590c33fde 100644 --- a/lib/compiler_rt/README.md +++ b/lib/compiler_rt/README.md @@ -260,6 +260,8 @@ Integer and Float Operations | ✓ | __gedf2 | f64 | f64 | i32 | .. | | ✓ | __getf2 | f128 | f128 | i32 | .. | | ✓ | __gexf2 | f80 | f80 | i32 | .. | +| ✓ | __aeabi_fcmpge | f32 | f32 | i32 | .. ARM | +| ✓ | __aeabi_dcmpge | f64 | f64 | i32 | .. ARM | | ✓ | __gekf2 | f128 | f128 | i32 | .. PPC | | ✓ | _Qp_fge |*f128 |*f128 | bool | .. SPARC | | ✓ | __lthf2 | f16 | f16 | i32 | `(a!=Nan) and (b!=Nan) and (a output<0` | @@ -285,6 +287,8 @@ Integer and Float Operations | ✓ | __gtdf2 | f64 | f64 | i32 | .. | | ✓ | __gttf2 | f128 | f128 | i32 | .. | | ✓ | __gtxf2 | f80 | f80 | i32 | .. | +| ✓ | __aeabi_fcmpgt | f32 | f32 | i32 | .. ARM | +| ✓ | __aeabi_dcmpgt | f64 | f64 | i32 | .. ARM | | ✓ | __gtkf2 | f128 | f128 | i32 | .. PPC | | ✓ | _Qp_fgt |*f128 |*f128 | bool | .. SPARC | | | | | | | **Float Arithmetic** | diff --git a/lib/compiler_rt/gehf2.zig b/lib/compiler_rt/gehf2.zig index e3df4d3087..6bea4e164a 100644 --- a/lib/compiler_rt/gehf2.zig +++ b/lib/compiler_rt/gehf2.zig @@ -21,11 +21,3 @@ pub fn __gehf2(a: f16, b: f16) callconv(.C) i32 { pub fn __gthf2(a: f16, b: f16) callconv(.C) i32 { return __gehf2(a, b); } - -fn __aeabi_fcmpge(a: f16, b: f16) callconv(.AAPCS) i32 { - return @boolToInt(comparef.cmpf2(f16, comparef.GE, a, b) != .Less); -} - -fn __aeabi_fcmpgt(a: f16, b: f16) callconv(.AAPCS) i32 { - return @boolToInt(comparef.cmpf2(f16, comparef.LE, a, b) == .Greater); -} From 07630eb696a4c7097fadf9e0261411d591a82038 Mon Sep 17 00:00:00 2001 From: Matt Knight Date: Sat, 18 Feb 2023 14:10:27 -0500 Subject: [PATCH 02/36] Value: implement writeToMemory for packed unions --- src/value.zig | 19 +++++++++++++++++++ test/behavior/comptime_memory.zig | 18 ++++++++++++++++++ 2 files changed, 37 insertions(+) diff --git a/src/value.zig b/src/value.zig index 306e31c0a7..98842a4ca7 100644 --- a/src/value.zig +++ b/src/value.zig @@ -1340,6 +1340,14 @@ pub const Value = extern union { const int = mod.global_error_set.get(val.castTag(.@"error").?.data.name).?; std.mem.writeInt(Int, buffer[0..@sizeOf(Int)], @intCast(Int, int), endian); }, + .Union => switch (ty.containerLayout()) { + .Auto => unreachable, + .Extern => @panic("TODO implement writeToMemory for extern unions"), + .Packed => { + const byte_count = (@intCast(usize, ty.bitSize(target)) + 7) / 8; + writeToPackedMemory(val, ty, mod, buffer[0..byte_count], 0); + }, + }, else => @panic("TODO implement writeToMemory for more types"), } } @@ -1430,6 +1438,17 @@ pub const Value = extern union { } }, }, + .Union => switch (ty.containerLayout()) { + .Auto => unreachable, // Sema is supposed to have emitted a compile error already + .Extern => unreachable, // Handled in non-packed writeToMemory + .Packed => { + const field_index = ty.unionTagFieldIndex(val.unionTag(), mod); + const field_type = ty.unionFields().values()[field_index.?].ty; + const field_val = val.fieldValue(field_type, field_index.?); + + field_val.writeToPackedMemory(field_type, mod, buffer, bit_offset); + }, + }, else => @panic("TODO implement writeToPackedMemory for more types"), } } diff --git a/test/behavior/comptime_memory.zig b/test/behavior/comptime_memory.zig index e08dad68f0..a4f9f2f7a9 100644 --- a/test/behavior/comptime_memory.zig +++ b/test/behavior/comptime_memory.zig @@ -394,3 +394,21 @@ test "accessing reinterpreted memory of parent object" { try testing.expect(b == expected); } } + +test "bitcast packed union to integer" { + const U = packed union { + x: u1, + y: u2, + }; + + comptime { + const a = U{ .x = 1 }; + const b = U{ .y = 2 }; + const cast_a = @bitCast(u2, a); + const cast_b = @bitCast(u2, b); + + // truncated because the upper bit is garbage memory that we don't care about + try testing.expectEqual(@as(u1, 1), @truncate(u1, cast_a)); + try testing.expectEqual(@as(u2, 2), cast_b); + } +} From a250af5a51fa3f7af6b7f13a9613c79e6cd94fc3 Mon Sep 17 00:00:00 2001 From: Edoardo Vacchi Date: Thu, 16 Feb 2023 18:16:31 +0100 Subject: [PATCH 03/36] wasi: add Preopens.findDir, update tests to preopen `/tmp' Signed-off-by: Edoardo Vacchi --- lib/std/Build/CompileStep.zig | 4 +- lib/std/fs/test.zig | 5 ++ lib/std/fs/wasi.zig | 108 ++++++++++++++++++++++++++++++++++ 3 files changed, 116 insertions(+), 1 deletion(-) diff --git a/lib/std/Build/CompileStep.zig b/lib/std/Build/CompileStep.zig index 1f145f8171..eeb7da1596 100644 --- a/lib/std/Build/CompileStep.zig +++ b/lib/std/Build/CompileStep.zig @@ -1555,7 +1555,9 @@ fn make(step: *Step) !void { try zig_args.append("--test-cmd"); try zig_args.append(bin_name); try zig_args.append("--test-cmd"); - try zig_args.append("--dir=."); + try zig_args.append("--mapdir=/::."); + try zig_args.append("--test-cmd"); + try zig_args.append("--mapdir=/tmp::/tmp"); try zig_args.append("--test-cmd-bin"); } else { try zig_args.append("--test-no-exec"); diff --git a/lib/std/fs/test.zig b/lib/std/fs/test.zig index 16458d7dc4..957fe4902f 100644 --- a/lib/std/fs/test.zig +++ b/lib/std/fs/test.zig @@ -13,6 +13,11 @@ const File = std.fs.File; const tmpDir = testing.tmpDir; const tmpIterableDir = testing.tmpIterableDir; +// ensure tests for fs/wasi.zig are run +comptime { + _ = std.fs.wasi; +} + test "Dir.readLink" { var tmp = tmpDir(.{}); defer tmp.cleanup(); diff --git a/lib/std/fs/wasi.zig b/lib/std/fs/wasi.zig index fa9de0dff1..a8b9fae2e9 100644 --- a/lib/std/fs/wasi.zig +++ b/lib/std/fs/wasi.zig @@ -9,6 +9,7 @@ const Allocator = mem.Allocator; const wasi = std.os.wasi; const fd_t = wasi.fd_t; const prestat_t = wasi.prestat_t; +const testing = std.testing; pub const Preopens = struct { // Indexed by file descriptor number. @@ -22,6 +23,30 @@ pub const Preopens = struct { } return null; } + + pub fn findDir(p: Preopens, full_path: []const u8, flags: std.fs.Dir.OpenDirOptions) std.fs.Dir.OpenError!std.fs.Dir { + if (p.names.len <= 2) + return std.fs.Dir.OpenError.BadPathName; // there are no preopens + + var prefix: []const u8 = ""; + var fd: usize = 0; + for (p.names) |preopen, i| { + if (i > 2 and wasiPathPrefixMatches(preopen, full_path)) { + if (preopen.len > prefix.len) { + prefix = preopen; + fd = i; + } + } + } + + // still no match + if (fd == 0) { + return std.fs.Dir.OpenError.FileNotFound; + } + const d = std.fs.Dir{ .fd = @intCast(os.fd_t, fd) }; + const rel = full_path[prefix.len + 1 .. full_path.len]; + return d.openDirWasi(rel, flags); + } }; pub fn preopensAlloc(gpa: Allocator) Allocator.Error!Preopens { @@ -54,3 +79,86 @@ pub fn preopensAlloc(gpa: Allocator) Allocator.Error!Preopens { names.appendAssumeCapacity(name); } } + +fn wasiPathPrefixMatches(prefix: []const u8, path: []const u8) bool { + if (path[0] != '/' and prefix.len == 0) + return true; + + if (path.len < prefix.len) + return false; + + if (prefix.len == 1) { + return prefix[0] == path[0]; + } + + if (!std.mem.eql(u8, path[0..prefix.len], prefix)) { + return false; + } + + return path.len == prefix.len or + path[prefix.len] == '/'; +} + +test "preopens" { + if (builtin.os.tag != .wasi) return error.SkipZigTest; + + // lifted from `testing` + const random_bytes_count = 12; + const buf_size = 256; + const path = "/tmp"; + const tmp_file_name = "file.txt"; + const nonsense = "nonsense"; + + var random_bytes: [random_bytes_count]u8 = undefined; + var buf: [buf_size]u8 = undefined; + + std.crypto.random.bytes(&random_bytes); + const sub_path = std.fs.base64_encoder.encode(&buf, &random_bytes); + + // find all preopens + const allocator = std.heap.page_allocator; + var wasi_preopens = try std.fs.wasi.preopensAlloc(allocator); + + // look for the exact "/tmp" preopen match + const fd = std.fs.wasi.Preopens.find(wasi_preopens, path) orelse unreachable; + const base_dir = std.fs.Dir{ .fd = fd }; + + var tmp_path = base_dir.makeOpenPath(sub_path, .{}) catch + @panic("unable to make tmp dir for testing: /tmp/"); + + defer tmp_path.close(); + defer tmp_path.deleteTree(sub_path) catch {}; + + // create a file under /tmp//file.txt with contents "nonsense" + try tmp_path.writeFile(tmp_file_name, nonsense); + + // now look for the file as a single path + var tmp_dir_path_buf: [buf_size]u8 = undefined; + const tmp_dir_path = try std.fmt.bufPrint(&tmp_dir_path_buf, "{s}/{s}", .{ path, sub_path }); + + // find "/tmp/" using `findDir()` + const tmp_file_dir = try wasi_preopens.findDir(tmp_dir_path, .{}); + + const text = try tmp_file_dir.readFile(tmp_file_name, &buf); + + // ensure the file contents match "nonsense" + try testing.expect(std.mem.eql(u8, nonsense, text)); +} + +test "wasiPathPrefixMatches" { + try testing.expect(wasiPathPrefixMatches("/", "/foo")); + try testing.expect(wasiPathPrefixMatches("/testcases", "/testcases/test.txt")); + try testing.expect(wasiPathPrefixMatches("", "foo")); + try testing.expect(wasiPathPrefixMatches("foo", "foo")); + try testing.expect(wasiPathPrefixMatches("foo", "foo/bar")); + try testing.expect(!wasiPathPrefixMatches("bar", "foo/bar")); + try testing.expect(!wasiPathPrefixMatches("bar", "foo")); + try testing.expect(wasiPathPrefixMatches("foo", "foo/bar")); + try testing.expect(!wasiPathPrefixMatches("fooo", "foo")); + try testing.expect(!wasiPathPrefixMatches("foo", "fooo")); + try testing.expect(!wasiPathPrefixMatches("foo/bar", "foo")); + try testing.expect(!wasiPathPrefixMatches("bar/foo", "foo")); + try testing.expect(wasiPathPrefixMatches("/foo", "/foo")); + try testing.expect(wasiPathPrefixMatches("/foo", "/foo")); + try testing.expect(wasiPathPrefixMatches("/foo", "/foo/")); +} From 4940afc434170966a9445b789374ba2a0f0318ab Mon Sep 17 00:00:00 2001 From: Edoardo Vacchi Date: Sat, 18 Feb 2023 22:29:11 +0100 Subject: [PATCH 04/36] skip when builtin.link_libc --- lib/std/fs/wasi.zig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/std/fs/wasi.zig b/lib/std/fs/wasi.zig index a8b9fae2e9..d62b4137d6 100644 --- a/lib/std/fs/wasi.zig +++ b/lib/std/fs/wasi.zig @@ -100,7 +100,7 @@ fn wasiPathPrefixMatches(prefix: []const u8, path: []const u8) bool { } test "preopens" { - if (builtin.os.tag != .wasi) return error.SkipZigTest; + if (builtin.os.tag != .wasi or builtin.link_libc) return error.SkipZigTest; // lifted from `testing` const random_bytes_count = 12; From 5e7b09ce9fbc95ec9fb9e277d262b9b5a5aa1917 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Sat, 18 Feb 2023 11:31:31 -0700 Subject: [PATCH 05/36] std.Build.RunStep: fix default caching logic RunStep is supposed to auto-detect whether the intend is for side-effects or for producing an output file. The auto-detection logic was incorrect, and this commit fixes it. I tested this manually locally. Automated testing will require a more significant investment in the test harness, which I will work on in a future enhancement. closes #14666 --- lib/std/Build/RunStep.zig | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/lib/std/Build/RunStep.zig b/lib/std/Build/RunStep.zig index 5bc271409a..d3f48e4e87 100644 --- a/lib/std/Build/RunStep.zig +++ b/lib/std/Build/RunStep.zig @@ -188,6 +188,10 @@ fn stdIoActionToBehavior(action: StdIoAction) std.ChildProcess.StdIo { } fn needOutputCheck(self: RunStep) bool { + switch (self.condition) { + .always => return false, + .output_outdated => {}, + } if (self.extra_file_dependencies.len > 0) return true; for (self.argv.items) |arg| switch (arg) { @@ -195,10 +199,7 @@ fn needOutputCheck(self: RunStep) bool { else => continue, }; - return switch (self.condition) { - .always => false, - .output_outdated => true, - }; + return false; } fn make(step: *Step) !void { From 1b7055b514955f1787937b2ef6097d2e0663da74 Mon Sep 17 00:00:00 2001 From: Veikka Tuominen Date: Mon, 30 Jan 2023 19:10:03 +0200 Subject: [PATCH 06/36] parse and render new for loop syntax --- lib/std/zig/Ast.zig | 117 +++++++++++++++++++--- lib/std/zig/Parse.zig | 193 +++++++++++++++++++++++++----------- lib/std/zig/parser_test.zig | 49 +++++++-- lib/std/zig/render.zig | 156 +++++++++++++++++++++++++---- 4 files changed, 410 insertions(+), 105 deletions(-) diff --git a/lib/std/zig/Ast.zig b/lib/std/zig/Ast.zig index 94cdcff4e7..42eb280966 100644 --- a/lib/std/zig/Ast.zig +++ b/lib/std/zig/Ast.zig @@ -386,6 +386,12 @@ pub fn renderError(tree: Ast, parse_error: Error, stream: anytype) !void { .expected_comma_after_switch_prong => { return stream.writeAll("expected ',' after switch prong"); }, + .expected_comma_after_for_operand => { + return stream.writeAll("expected ',' after for operand"); + }, + .expected_comma_after_capture => { + return stream.writeAll("expected ',' after for capture"); + }, .expected_initializer => { return stream.writeAll("expected field initializer"); }, @@ -420,6 +426,12 @@ pub fn renderError(tree: Ast, parse_error: Error, stream: anytype) !void { .var_const_decl => { return stream.writeAll("use 'var' or 'const' to declare variable"); }, + .extra_for_capture => { + return stream.writeAll("excess for captures"); + }, + .for_input_not_captured => { + return stream.writeAll("for input is not captured"); + }, .expected_token => { const found_tag = token_tags[parse_error.token + @boolToInt(parse_error.token_is_prev)]; @@ -568,6 +580,7 @@ pub fn firstToken(tree: Ast, node: Node.Index) TokenIndex { .call, .call_comma, .switch_range, + .for_range, .error_union, => n = datas[n].lhs, @@ -845,6 +858,12 @@ pub fn lastToken(tree: Ast, node: Node.Index) TokenIndex { .switch_range, => n = datas[n].rhs, + .for_range => if (datas[n].rhs != 0) { + n = datas[n].rhs; + } else { + return main_tokens[n] + end_offset; + }, + .field_access, .unwrap_optional, .grouped_expression, @@ -1263,11 +1282,15 @@ pub fn lastToken(tree: Ast, node: Node.Index) TokenIndex { assert(extra.else_expr != 0); n = extra.else_expr; }, - .@"if", .@"for" => { + .@"if" => { const extra = tree.extraData(datas[n].rhs, Node.If); assert(extra.else_expr != 0); n = extra.else_expr; }, + .@"for" => { + const extra = @bitCast(Node.For, datas[n].rhs); + n = tree.extra_data[datas[n].lhs + extra.inputs + @boolToInt(extra.has_else)]; + }, .@"suspend" => { if (datas[n].lhs != 0) { n = datas[n].lhs; @@ -1916,26 +1939,28 @@ pub fn whileFull(tree: Ast, node: Node.Index) full.While { }); } -pub fn forSimple(tree: Ast, node: Node.Index) full.While { - const data = tree.nodes.items(.data)[node]; - return tree.fullWhileComponents(.{ - .while_token = tree.nodes.items(.main_token)[node], - .cond_expr = data.lhs, - .cont_expr = 0, +pub fn forSimple(tree: Ast, node: Node.Index) full.For { + const data = &tree.nodes.items(.data)[node]; + const inputs: *[1]Node.Index = &data.lhs; + return tree.fullForComponents(.{ + .for_token = tree.nodes.items(.main_token)[node], + .inputs = inputs[0..1], .then_expr = data.rhs, .else_expr = 0, }); } -pub fn forFull(tree: Ast, node: Node.Index) full.While { +pub fn forFull(tree: Ast, node: Node.Index) full.For { const data = tree.nodes.items(.data)[node]; - const extra = tree.extraData(data.rhs, Node.If); - return tree.fullWhileComponents(.{ - .while_token = tree.nodes.items(.main_token)[node], - .cond_expr = data.lhs, - .cont_expr = 0, - .then_expr = extra.then_expr, - .else_expr = extra.else_expr, + const extra = @bitCast(Node.For, data.rhs); + const inputs = tree.extra_data[data.lhs..][0..extra.inputs]; + const then_expr = tree.extra_data[data.lhs + extra.inputs]; + const else_expr = if (extra.has_else) tree.extra_data[data.lhs + extra.inputs + 1] else 0; + return tree.fullForComponents(.{ + .for_token = tree.nodes.items(.main_token)[node], + .inputs = inputs, + .then_expr = then_expr, + .else_expr = else_expr, }); } @@ -2243,6 +2268,33 @@ fn fullWhileComponents(tree: Ast, info: full.While.Components) full.While { return result; } +fn fullForComponents(tree: Ast, info: full.For.Components) full.For { + const token_tags = tree.tokens.items(.tag); + var result: full.For = .{ + .ast = info, + .inline_token = null, + .label_token = null, + .payload_token = undefined, + .else_token = undefined, + }; + var tok_i = info.for_token - 1; + if (token_tags[tok_i] == .keyword_inline) { + result.inline_token = tok_i; + tok_i -= 1; + } + if (token_tags[tok_i] == .colon and + token_tags[tok_i - 1] == .identifier) + { + result.label_token = tok_i - 1; + } + const last_cond_token = tree.lastToken(info.inputs[info.inputs.len - 1]); + result.payload_token = last_cond_token + 3 + @boolToInt(token_tags[last_cond_token + 1] == .comma); + if (info.else_expr != 0) { + result.else_token = tree.lastToken(info.then_expr) + 1; + } + return result; +} + fn fullCallComponents(tree: Ast, info: full.Call.Components) full.Call { const token_tags = tree.tokens.items(.tag); var result: full.Call = .{ @@ -2279,6 +2331,12 @@ pub fn fullWhile(tree: Ast, node: Node.Index) ?full.While { .while_simple => tree.whileSimple(node), .while_cont => tree.whileCont(node), .@"while" => tree.whileFull(node), + else => null, + }; +} + +pub fn fullFor(tree: Ast, node: Node.Index) ?full.For { + return switch (tree.nodes.items(.tag)[node]) { .for_simple => tree.forSimple(node), .@"for" => tree.forFull(node), else => null, @@ -2453,6 +2511,22 @@ pub const full = struct { }; }; + pub const For = struct { + ast: Components, + inline_token: ?TokenIndex, + label_token: ?TokenIndex, + payload_token: TokenIndex, + /// Populated only if else_expr != 0. + else_token: TokenIndex, + + pub const Components = struct { + for_token: TokenIndex, + inputs: []const Node.Index, + then_expr: Node.Index, + else_expr: Node.Index, + }; + }; + pub const ContainerField = struct { comptime_token: ?TokenIndex, ast: Components, @@ -2795,6 +2869,8 @@ pub const Error = struct { expected_comma_after_param, expected_comma_after_initializer, expected_comma_after_switch_prong, + expected_comma_after_for_operand, + expected_comma_after_capture, expected_initializer, mismatched_binary_op_whitespace, invalid_ampersand_ampersand, @@ -2802,6 +2878,8 @@ pub const Error = struct { expected_var_const, wrong_equal_var_decl, var_const_decl, + extra_for_capture, + for_input_not_captured, zig_style_container, previous_field, @@ -3112,8 +3190,10 @@ pub const Node = struct { @"while", /// `for (lhs) rhs`. for_simple, - /// `for (lhs) a else b`. `if_list[rhs]`. + /// `for (lhs[0..inputs]) lhs[inputs + 1] else lhs[inputs + 2]`. `For[rhs]`. @"for", + /// `lhs..rhs`. + for_range, /// `if (lhs) rhs`. /// `if (lhs) |a| rhs`. if_simple, @@ -3369,6 +3449,11 @@ pub const Node = struct { then_expr: Index, }; + pub const For = packed struct(u32) { + inputs: u31, + has_else: bool, + }; + pub const FnProtoOne = struct { /// Populated if there is exactly 1 parameter. Otherwise there are 0 parameters. param: Index, diff --git a/lib/std/zig/Parse.zig b/lib/std/zig/Parse.zig index d498366b34..7ef884d22c 100644 --- a/lib/std/zig/Parse.zig +++ b/lib/std/zig/Parse.zig @@ -104,6 +104,8 @@ fn warnMsg(p: *Parse, msg: Ast.Error) error{OutOfMemory}!void { .expected_comma_after_param, .expected_comma_after_initializer, .expected_comma_after_switch_prong, + .expected_comma_after_for_operand, + .expected_comma_after_capture, .expected_semi_or_else, .expected_semi_or_lbrace, .expected_token, @@ -1149,22 +1151,18 @@ fn parseLoopStatement(p: *Parse) !Node.Index { return p.fail(.expected_inlinable); } -/// ForPrefix <- KEYWORD_for LPAREN Expr RPAREN PtrIndexPayload -/// /// ForStatement /// <- ForPrefix BlockExpr ( KEYWORD_else Statement )? /// / ForPrefix AssignExpr ( SEMICOLON / KEYWORD_else Statement ) fn parseForStatement(p: *Parse) !Node.Index { const for_token = p.eatToken(.keyword_for) orelse return null_node; - _ = try p.expectToken(.l_paren); - const array_expr = try p.expectExpr(); - _ = try p.expectToken(.r_paren); - const found_payload = try p.parsePtrIndexPayload(); - if (found_payload == 0) try p.warn(.expected_loop_payload); - // TODO propose to change the syntax so that semicolons are always required - // inside while statements, even if there is an `else`. + const scratch_top = p.scratch.items.len; + defer p.scratch.shrinkRetainingCapacity(scratch_top); + const inputs = try p.forPrefix(); + var else_required = false; + var seen_semicolon = false; const then_expr = blk: { const block_expr = try p.parseBlockExpr(); if (block_expr != 0) break :blk block_expr; @@ -1173,39 +1171,40 @@ fn parseForStatement(p: *Parse) !Node.Index { return p.fail(.expected_block_or_assignment); } if (p.eatToken(.semicolon)) |_| { - return p.addNode(.{ - .tag = .for_simple, - .main_token = for_token, - .data = .{ - .lhs = array_expr, - .rhs = assign_expr, - }, - }); + seen_semicolon = true; + break :blk assign_expr; } else_required = true; break :blk assign_expr; }; - _ = p.eatToken(.keyword_else) orelse { - if (else_required) { - try p.warn(.expected_semi_or_else); - } + var has_else = false; + if (!seen_semicolon and p.eatToken(.keyword_else) != null) { + try p.scratch.append(p.gpa, then_expr); + const else_stmt = try p.expectStatement(false); + try p.scratch.append(p.gpa, else_stmt); + has_else = true; + } else if (inputs == 1) { + if (else_required) try p.warn(.expected_semi_or_else); return p.addNode(.{ .tag = .for_simple, .main_token = for_token, .data = .{ - .lhs = array_expr, + .lhs = p.scratch.items[scratch_top], .rhs = then_expr, }, }); - }; + } else { + if (else_required) try p.warn(.expected_semi_or_else); + try p.scratch.append(p.gpa, then_expr); + } return p.addNode(.{ .tag = .@"for", .main_token = for_token, .data = .{ - .lhs = array_expr, - .rhs = try p.addExtra(Node.If{ - .then_expr = then_expr, - .else_expr = try p.expectStatement(false), + .lhs = (try p.listToSpan(p.scratch.items[scratch_top..])).start, + .rhs = @bitCast(u32, Node.For{ + .inputs = @intCast(u31, inputs), + .has_else = has_else, }), }, }); @@ -2056,42 +2055,118 @@ fn parseBlock(p: *Parse) !Node.Index { } } -/// ForPrefix <- KEYWORD_for LPAREN Expr RPAREN PtrIndexPayload -/// /// ForExpr <- ForPrefix Expr (KEYWORD_else Expr)? fn parseForExpr(p: *Parse) !Node.Index { const for_token = p.eatToken(.keyword_for) orelse return null_node; - _ = try p.expectToken(.l_paren); - const array_expr = try p.expectExpr(); - _ = try p.expectToken(.r_paren); - const found_payload = try p.parsePtrIndexPayload(); - if (found_payload == 0) try p.warn(.expected_loop_payload); + + const scratch_top = p.scratch.items.len; + defer p.scratch.shrinkRetainingCapacity(scratch_top); + const inputs = try p.forPrefix(); const then_expr = try p.expectExpr(); - _ = p.eatToken(.keyword_else) orelse { + var has_else = false; + if (p.eatToken(.keyword_else)) |_| { + try p.scratch.append(p.gpa, then_expr); + const else_expr = try p.expectExpr(); + try p.scratch.append(p.gpa, else_expr); + has_else = true; + } else if (inputs == 1) { return p.addNode(.{ .tag = .for_simple, .main_token = for_token, .data = .{ - .lhs = array_expr, + .lhs = p.scratch.items[scratch_top], .rhs = then_expr, }, }); - }; - const else_expr = try p.expectExpr(); + } else { + try p.scratch.append(p.gpa, then_expr); + } return p.addNode(.{ .tag = .@"for", .main_token = for_token, .data = .{ - .lhs = array_expr, - .rhs = try p.addExtra(Node.If{ - .then_expr = then_expr, - .else_expr = else_expr, + .lhs = (try p.listToSpan(p.scratch.items[scratch_top..])).start, + .rhs = @bitCast(u32, Node.For{ + .inputs = @intCast(u31, inputs), + .has_else = has_else, }), }, }); } +/// ForPrefix <- KEYWORD_for LPAREN ForInput (COMMA ForInput)* COMMA? RPAREN ForPayload +/// +/// ForInput <- Expr (DOT2 Expr?)? +/// +/// ForPayload <- PIPE ASTERISK? IDENTIFIER (COMMA ASTERISK? IDENTIFIER)* PIPE +fn forPrefix(p: *Parse) Error!usize { + const start = p.scratch.items.len; + _ = try p.expectToken(.l_paren); + + while (true) { + var input = try p.expectExpr(); + if (p.eatToken(.ellipsis2)) |ellipsis| { + input = try p.addNode(.{ + .tag = .for_range, + .main_token = ellipsis, + .data = .{ + .lhs = input, + .rhs = try p.parseExpr(), + }, + }); + } + + try p.scratch.append(p.gpa, input); + switch (p.token_tags[p.tok_i]) { + .comma => p.tok_i += 1, + .r_paren => { + p.tok_i += 1; + break; + }, + .colon, .r_brace, .r_bracket => return p.failExpected(.r_paren), + // Likely just a missing comma; give error but continue parsing. + else => try p.warn(.expected_comma_after_for_operand), + } + if (p.eatToken(.r_paren)) |_| break; + } + const inputs = p.scratch.items.len - start; + + _ = p.eatToken(.pipe) orelse { + try p.warn(.expected_loop_payload); + return inputs; + }; + + var warned_excess = false; + var captures: u32 = 0; + while (true) { + _ = p.eatToken(.asterisk); + const identifier = try p.expectToken(.identifier); + captures += 1; + if (captures > inputs and !warned_excess) { + try p.warnMsg(.{ .tag = .extra_for_capture, .token = identifier }); + warned_excess = true; + } + switch (p.token_tags[p.tok_i]) { + .comma => p.tok_i += 1, + .pipe => { + p.tok_i += 1; + break; + }, + // Likely just a missing comma; give error but continue parsing. + else => try p.warn(.expected_comma_after_capture), + } + if (p.eatToken(.pipe)) |_| break; + } + + if (captures < inputs) { + const index = p.scratch.items.len - captures; + const input = p.nodes.items(.main_token)[p.scratch.items[index]]; + try p.warnMsg(.{ .tag = .for_input_not_captured, .token = input }); + } + return inputs; +} + /// WhilePrefix <- KEYWORD_while LPAREN Expr RPAREN PtrPayload? WhileContinueExpr? /// /// WhileExpr <- WhilePrefix Expr (KEYWORD_else Payload? Expr)? @@ -2752,37 +2827,41 @@ fn expectPrimaryTypeExpr(p: *Parse) !Node.Index { return node; } -/// ForPrefix <- KEYWORD_for LPAREN Expr RPAREN PtrIndexPayload -/// /// ForTypeExpr <- ForPrefix TypeExpr (KEYWORD_else TypeExpr)? fn parseForTypeExpr(p: *Parse) !Node.Index { const for_token = p.eatToken(.keyword_for) orelse return null_node; - _ = try p.expectToken(.l_paren); - const array_expr = try p.expectExpr(); - _ = try p.expectToken(.r_paren); - const found_payload = try p.parsePtrIndexPayload(); - if (found_payload == 0) try p.warn(.expected_loop_payload); + + const scratch_top = p.scratch.items.len; + defer p.scratch.shrinkRetainingCapacity(scratch_top); + const inputs = try p.forPrefix(); const then_expr = try p.expectTypeExpr(); - _ = p.eatToken(.keyword_else) orelse { + var has_else = false; + if (p.eatToken(.keyword_else)) |_| { + try p.scratch.append(p.gpa, then_expr); + const else_expr = try p.expectTypeExpr(); + try p.scratch.append(p.gpa, else_expr); + has_else = true; + } else if (inputs == 1) { return p.addNode(.{ .tag = .for_simple, .main_token = for_token, .data = .{ - .lhs = array_expr, + .lhs = p.scratch.items[scratch_top], .rhs = then_expr, }, }); - }; - const else_expr = try p.expectTypeExpr(); + } else { + try p.scratch.append(p.gpa, then_expr); + } return p.addNode(.{ .tag = .@"for", .main_token = for_token, .data = .{ - .lhs = array_expr, - .rhs = try p.addExtra(Node.If{ - .then_expr = then_expr, - .else_expr = else_expr, + .lhs = (try p.listToSpan(p.scratch.items[scratch_top..])).start, + .rhs = @bitCast(u32, Node.For{ + .inputs = @intCast(u31, inputs), + .has_else = has_else, }), }, }); diff --git a/lib/std/zig/parser_test.zig b/lib/std/zig/parser_test.zig index 3c44322ccc..d24dedfeff 100644 --- a/lib/std/zig/parser_test.zig +++ b/lib/std/zig/parser_test.zig @@ -3457,11 +3457,11 @@ test "zig fmt: for" { \\ for (a) |*v| \\ continue; \\ - \\ for (a) |v, i| { + \\ for (a, 0..) |v, i| { \\ continue; \\ } \\ - \\ for (a) |v, i| + \\ for (a, 0..) |v, i| \\ continue; \\ \\ for (a) |b| switch (b) { @@ -3469,17 +3469,24 @@ test "zig fmt: for" { \\ d => {}, \\ }; \\ - \\ const res = for (a) |v, i| { + \\ const res = for (a, 0..) |v, i| { \\ break v; \\ } else { \\ unreachable; \\ }; \\ \\ var num: usize = 0; - \\ inline for (a) |v, i| { + \\ inline for (a, 0..1) |v, i| { \\ num += v; \\ num += i; \\ } + \\ + \\ for (a, b) | + \\ long_name, + \\ another_long_name, + \\ | { + \\ continue; + \\ } \\} \\ ); @@ -3499,6 +3506,26 @@ test "zig fmt: for" { \\} \\ ); + + try testTransform( + \\test "fix for" { + \\ for (a, b, c,) |long, another, third,| {} + \\} + \\ + , + \\test "fix for" { + \\ for ( + \\ a, + \\ b, + \\ c, + \\ ) | + \\ long, + \\ another, + \\ third, + \\ | {} + \\} + \\ + ); } test "zig fmt: for if" { @@ -4358,7 +4385,7 @@ test "zig fmt: hex literals with underscore separators" { try testTransform( \\pub fn orMask(a: [ 1_000 ]u64, b: [ 1_000] u64) [1_000]u64 { \\ var c: [1_000]u64 = [1]u64{ 0xFFFF_FFFF_FFFF_FFFF}**1_000; - \\ for (c [ 1_0 .. ]) |_, i| { + \\ for (c [ 1_0 .. ], 0..) |_, i| { \\ c[i] = (a[i] | b[i]) & 0xCCAA_CCAA_CCAA_CCAA; \\ } \\ return c; @@ -4368,7 +4395,7 @@ test "zig fmt: hex literals with underscore separators" { , \\pub fn orMask(a: [1_000]u64, b: [1_000]u64) [1_000]u64 { \\ var c: [1_000]u64 = [1]u64{0xFFFF_FFFF_FFFF_FFFF} ** 1_000; - \\ for (c[1_0..]) |_, i| { + \\ for (c[1_0..], 0..) |_, i| { \\ c[i] = (a[i] | b[i]) & 0xCCAA_CCAA_CCAA_CCAA; \\ } \\ return c; @@ -4880,10 +4907,10 @@ test "zig fmt: remove trailing whitespace after doc comment" { test "zig fmt: for loop with ptr payload and index" { try testCanonical( \\test { - \\ for (self.entries.items) |*item, i| {} - \\ for (self.entries.items) |*item, i| + \\ for (self.entries.items, 0..) |*item, i| {} + \\ for (self.entries.items, 0..) |*item, i| \\ a = b; - \\ for (self.entries.items) |*item, i| a = b; + \\ for (self.entries.items, 0..) |*item, i| a = b; \\} \\ ); @@ -5471,7 +5498,7 @@ test "zig fmt: canonicalize symbols (primitive types)" { \\ _ = @"void": { \\ break :@"void"; \\ }; - \\ for ("hi") |@"u3", @"i4"| { + \\ for ("hi", 0..) |@"u3", @"i4"| { \\ _ = @"u3"; \\ _ = @"i4"; \\ } @@ -5523,7 +5550,7 @@ test "zig fmt: canonicalize symbols (primitive types)" { \\ _ = void: { \\ break :void; \\ }; - \\ for ("hi") |@"u3", @"i4"| { + \\ for ("hi", 0..) |@"u3", @"i4"| { \\ _ = @"u3"; \\ _ = @"i4"; \\ } diff --git a/lib/std/zig/render.zig b/lib/std/zig/render.zig index 97bc85efac..0e8d3125ac 100644 --- a/lib/std/zig/render.zig +++ b/lib/std/zig/render.zig @@ -353,6 +353,16 @@ fn renderExpression(gpa: Allocator, ais: *Ais, tree: Ast, node: Ast.Node.Index, try renderToken(ais, tree, main_tokens[node], .none); return renderExpression(gpa, ais, tree, infix.rhs, space); }, + .for_range => { + const infix = datas[node]; + try renderExpression(gpa, ais, tree, infix.lhs, .none); + if (infix.rhs != 0) { + try renderToken(ais, tree, main_tokens[node], .none); + return renderExpression(gpa, ais, tree, infix.rhs, space); + } else { + return renderToken(ais, tree, main_tokens[node], space); + } + }, .add, .add_wrap, @@ -694,9 +704,11 @@ fn renderExpression(gpa: Allocator, ais: *Ais, tree: Ast, node: Ast.Node.Index, .while_simple, .while_cont, .@"while", + => return renderWhile(gpa, ais, tree, tree.fullWhile(node).?, space), + .for_simple, .@"for", - => return renderWhile(gpa, ais, tree, tree.fullWhile(node).?, space), + => return renderFor(gpa, ais, tree, tree.fullFor(node).?, space), .if_simple, .@"if", @@ -1054,10 +1066,9 @@ fn renderIf(gpa: Allocator, ais: *Ais, tree: Ast, if_node: Ast.full.If, space: S }, space); } -/// Note that this function is additionally used to render if and for expressions, with +/// Note that this function is additionally used to render if expressions, with /// respective values set to null. fn renderWhile(gpa: Allocator, ais: *Ais, tree: Ast, while_node: Ast.full.While, space: Space) Error!void { - const node_tags = tree.nodes.items(.tag); const token_tags = tree.tokens.items(.tag); if (while_node.label_token) |label| { @@ -1108,9 +1119,34 @@ fn renderWhile(gpa: Allocator, ais: *Ais, tree: Ast, while_node: Ast.full.While, last_prefix_token = tree.lastToken(while_node.ast.cont_expr) + 1; // rparen } - const then_expr_is_block = nodeIsBlock(node_tags[while_node.ast.then_expr]); + try renderThenElse( + gpa, + ais, + tree, + last_prefix_token, + while_node.ast.then_expr, + while_node.else_token, + while_node.error_token, + while_node.ast.else_expr, + space, + ); +} + +fn renderThenElse( + gpa: Allocator, + ais: *Ais, + tree: Ast, + last_prefix_token: Ast.TokenIndex, + then_expr: Ast.Node.Index, + else_token: Ast.TokenIndex, + maybe_error_token: ?Ast.TokenIndex, + else_expr: Ast.Node.Index, + space: Space, +) Error!void { + const node_tags = tree.nodes.items(.tag); + const then_expr_is_block = nodeIsBlock(node_tags[then_expr]); const indent_then_expr = !then_expr_is_block and - !tree.tokensOnSameLine(last_prefix_token, tree.firstToken(while_node.ast.then_expr)); + !tree.tokensOnSameLine(last_prefix_token, tree.firstToken(then_expr)); if (indent_then_expr or (then_expr_is_block and ais.isLineOverIndented())) { ais.pushIndentNextLine(); try renderToken(ais, tree, last_prefix_token, .newline); @@ -1119,45 +1155,115 @@ fn renderWhile(gpa: Allocator, ais: *Ais, tree: Ast, while_node: Ast.full.While, try renderToken(ais, tree, last_prefix_token, .space); } - if (while_node.ast.else_expr != 0) { + if (else_expr != 0) { if (indent_then_expr) { ais.pushIndent(); - try renderExpression(gpa, ais, tree, while_node.ast.then_expr, .newline); + try renderExpression(gpa, ais, tree, then_expr, .newline); ais.popIndent(); } else { - try renderExpression(gpa, ais, tree, while_node.ast.then_expr, .space); + try renderExpression(gpa, ais, tree, then_expr, .space); } - var last_else_token = while_node.else_token; + var last_else_token = else_token; - if (while_node.error_token) |error_token| { - try renderToken(ais, tree, while_node.else_token, .space); // else + if (maybe_error_token) |error_token| { + try renderToken(ais, tree, else_token, .space); // else try renderToken(ais, tree, error_token - 1, .none); // | try renderIdentifier(ais, tree, error_token, .none, .preserve_when_shadowing); // identifier last_else_token = error_token + 1; // | } const indent_else_expr = indent_then_expr and - !nodeIsBlock(node_tags[while_node.ast.else_expr]) and - !nodeIsIfForWhileSwitch(node_tags[while_node.ast.else_expr]); + !nodeIsBlock(node_tags[else_expr]) and + !nodeIsIfForWhileSwitch(node_tags[else_expr]); if (indent_else_expr) { ais.pushIndentNextLine(); try renderToken(ais, tree, last_else_token, .newline); ais.popIndent(); - try renderExpressionIndented(gpa, ais, tree, while_node.ast.else_expr, space); + try renderExpressionIndented(gpa, ais, tree, else_expr, space); } else { try renderToken(ais, tree, last_else_token, .space); - try renderExpression(gpa, ais, tree, while_node.ast.else_expr, space); + try renderExpression(gpa, ais, tree, else_expr, space); } } else { if (indent_then_expr) { - try renderExpressionIndented(gpa, ais, tree, while_node.ast.then_expr, space); + try renderExpressionIndented(gpa, ais, tree, then_expr, space); } else { - try renderExpression(gpa, ais, tree, while_node.ast.then_expr, space); + try renderExpression(gpa, ais, tree, then_expr, space); } } } +fn renderFor(gpa: Allocator, ais: *Ais, tree: Ast, for_node: Ast.full.For, space: Space) Error!void { + const token_tags = tree.tokens.items(.tag); + + if (for_node.label_token) |label| { + try renderIdentifier(ais, tree, label, .none, .eagerly_unquote); // label + try renderToken(ais, tree, label + 1, .space); // : + } + + if (for_node.inline_token) |inline_token| { + try renderToken(ais, tree, inline_token, .space); // inline + } + + try renderToken(ais, tree, for_node.ast.for_token, .space); // if/for/while + + const lparen = for_node.ast.for_token + 1; + try renderParamList(gpa, ais, tree, lparen, for_node.ast.inputs, .space); + + var cur = for_node.payload_token; + const pipe = std.mem.indexOfScalarPos(std.zig.Token.Tag, token_tags, cur, .pipe).?; + if (token_tags[pipe - 1] == .comma) { + ais.pushIndentNextLine(); + try renderToken(ais, tree, cur - 1, .newline); // | + while (true) { + if (token_tags[cur] == .asterisk) { + try renderToken(ais, tree, cur, .none); // * + cur += 1; + } + try renderIdentifier(ais, tree, cur, .none, .preserve_when_shadowing); // identifier + cur += 1; + if (token_tags[cur] == .comma) { + try renderToken(ais, tree, cur, .newline); // , + cur += 1; + } + if (token_tags[cur] == .pipe) { + break; + } + } + ais.popIndent(); + } else { + try renderToken(ais, tree, cur - 1, .none); // | + while (true) { + if (token_tags[cur] == .asterisk) { + try renderToken(ais, tree, cur, .none); // * + cur += 1; + } + try renderIdentifier(ais, tree, cur, .none, .preserve_when_shadowing); // identifier + cur += 1; + if (token_tags[cur] == .comma) { + try renderToken(ais, tree, cur, .space); // , + cur += 1; + } + if (token_tags[cur] == .pipe) { + break; + } + } + } + + try renderThenElse( + gpa, + ais, + tree, + cur, + for_node.ast.then_expr, + for_node.else_token, + null, + for_node.ast.else_expr, + space, + ); +} + fn renderContainerField( gpa: Allocator, ais: *Ais, @@ -2206,15 +2312,23 @@ fn renderCall( call: Ast.full.Call, space: Space, ) Error!void { - const token_tags = tree.tokens.items(.tag); - if (call.async_token) |async_token| { try renderToken(ais, tree, async_token, .space); } try renderExpression(gpa, ais, tree, call.ast.fn_expr, .none); + try renderParamList(gpa, ais, tree, call.ast.lparen, call.ast.params, space); +} + +fn renderParamList( + gpa: Allocator, + ais: *Ais, + tree: Ast, + lparen: Ast.TokenIndex, + params: []const Ast.Node.Index, + space: Space, +) Error!void { + const token_tags = tree.tokens.items(.tag); - const lparen = call.ast.lparen; - const params = call.ast.params; if (params.len == 0) { ais.pushIndentNextLine(); try renderToken(ais, tree, lparen, .none); From 6733e43d87d4fe7b9d89948ebb95a72515c44fee Mon Sep 17 00:00:00 2001 From: Veikka Tuominen Date: Wed, 1 Feb 2023 20:39:09 +0200 Subject: [PATCH 07/36] AstGen: work-in-progress multi-object for loops --- src/AstGen.zig | 217 +++++++++++++++++++++++++++++++------------------ 1 file changed, 140 insertions(+), 77 deletions(-) diff --git a/src/AstGen.zig b/src/AstGen.zig index 40eef32d4e..ee709a3fe2 100644 --- a/src/AstGen.zig +++ b/src/AstGen.zig @@ -518,6 +518,7 @@ fn lvalExpr(gz: *GenZir, scope: *Scope, node: Ast.Node.Index) InnerError!Zir.Ins .error_union, .merge_error_sets, .switch_range, + .for_range, .@"await", .bit_not, .negation, @@ -646,6 +647,8 @@ fn expr(gz: *GenZir, scope: *Scope, ri: ResultInfo, node: Ast.Node.Index) InnerE .asm_output => unreachable, // Handled in `asmExpr`. .asm_input => unreachable, // Handled in `asmExpr`. + .for_range => unreachable, // Handled in `forExpr`. + .assign => { try assign(gz, scope, node); return rvalue(gz, ri, .void_value, node); @@ -834,7 +837,7 @@ fn expr(gz: *GenZir, scope: *Scope, ri: ResultInfo, node: Ast.Node.Index) InnerE .@"while", => return whileExpr(gz, scope, ri.br(), node, tree.fullWhile(node).?, false), - .for_simple, .@"for" => return forExpr(gz, scope, ri.br(), node, tree.fullWhile(node).?, false), + .for_simple, .@"for" => return forExpr(gz, scope, ri.br(), node, tree.fullFor(node).?, false), .slice_open => { const lhs = try expr(gz, scope, .{ .rl = .ref }, node_datas[node].lhs); @@ -2342,7 +2345,7 @@ fn blockExprStmts(gz: *GenZir, parent_scope: *Scope, statements: []const Ast.Nod .@"while", => _ = try whileExpr(gz, scope, .{ .rl = .discard }, inner_node, tree.fullWhile(inner_node).?, true), .for_simple, - .@"for", => _ = try forExpr(gz, scope, .{ .rl = .discard }, inner_node, tree.fullWhile(inner_node).?, true), + .@"for", => _ = try forExpr(gz, scope, .{ .rl = .discard }, inner_node, tree.fullFor(inner_node).?, true), else => noreturn_src_node = try unusedResultExpr(gz, scope, inner_node), // zig fmt: on @@ -6282,7 +6285,7 @@ fn forExpr( scope: *Scope, ri: ResultInfo, node: Ast.Node.Index, - for_full: Ast.full.While, + for_full: Ast.full.For, is_statement: bool, ) InnerError!Zir.Inst.Ref { const astgen = parent_gz.astgen; @@ -6295,23 +6298,79 @@ fn forExpr( const is_inline = parent_gz.force_comptime or for_full.inline_token != null; const tree = astgen.tree; const token_tags = tree.tokens.items(.tag); + const node_tags = tree.nodes.items(.tag); + const node_data = tree.nodes.items(.data); - const payload_is_ref = if (for_full.payload_token) |payload_token| - token_tags[payload_token] == .asterisk - else - false; + // Check for unterminated ranges. + { + var unterminated: ?Ast.Node.Index = null; + for (for_full.ast.inputs) |input| { + if (node_tags[input] != .for_range) break; + if (node_data[input].rhs != 0) break; + unterminated = unterminated orelse input; + } else { + return astgen.failNode(unterminated.?, "unterminated for range", .{}); + } + } - try emitDbgNode(parent_gz, for_full.ast.cond_expr); + var lens = astgen.gpa.alloc(Zir.Inst.Ref, for_full.ast.inputs.len); + defer astgen.gpa.free(lens); + var indexables = astgen.gpa.alloc(Zir.Inst.Ref, for_full.ast.inputs.len); + defer astgen.gpa.free(indexables); + var counters = std.ArrayList(Zir.Inst.Ref).init(astgen.gpa); + defer counters.deinit(); - const cond_ri: ResultInfo = .{ .rl = if (payload_is_ref) .ref else .none }; - const array_ptr = try expr(parent_gz, scope, cond_ri, for_full.ast.cond_expr); - const len = try parent_gz.addUnNode(.indexable_ptr_len, array_ptr, for_full.ast.cond_expr); + const counter_alloc_tag: Zir.Inst.Tag = if (is_inline) .alloc_comptime_mut else .alloc; + + { + var payload = for_full.payload_token; + for (for_full.ast.inputs) |input, i| { + const payload_is_ref = token_tags[payload] == .asterisk; + const ident_tok = payload + @boolToInt(payload_is_ref); + + if (mem.eql(u8, tree.tokenSlice(ident_tok), "_") and payload_is_ref) { + return astgen.failTok(payload, "pointer modifier invalid on discard", .{}); + } + payload = ident_tok + @as(u32, 2); + + try emitDbgNode(parent_gz, input); + if (node_tags[input] == .for_range) { + if (payload_is_ref) { + return astgen.failTok(ident_tok, "cannot capture reference to range", .{}); + } + const counter_ptr = try parent_gz.addUnNode(counter_alloc_tag, .usize_type, node); + const start_val = try expr(parent_gz, scope, node_data[input].lhs, input); + _ = try parent_gz.addBin(.store, counter_ptr, start_val); + indexables[i] = counter_ptr; + try counters.append(counter_ptr); + + const end_node = node_data[input].rhs; + const end_val = if (end_node != 0) try expr(parent_gz, scope, node_data[input].rhs, input) else .none; + const range_len = try parent_gz.addPlNode(.for_range_len, input, Zir.Inst.Bin{ + .lhs = start_val, + .rhs = end_val, + }); + lens[i] = range_len; + } else { + const cond_ri: ResultInfo = .{ .rl = if (payload_is_ref) .ref else .none }; + const indexable = try expr(parent_gz, scope, cond_ri, input); + indexables[i] = indexable; + + const indexable_len = try parent_gz.addUnNode(.indexable_ptr_len, indexable, input); + lens[i] = indexable_len; + } + } + } + + const len = "check_for_lens"; const index_ptr = blk: { - const alloc_tag: Zir.Inst.Tag = if (is_inline) .alloc_comptime_mut else .alloc; - const index_ptr = try parent_gz.addUnNode(alloc_tag, .usize_type, node); + // Future optimization: + // for loops with only ranges don't need a separate index variable. + const index_ptr = try parent_gz.addUnNode(counter_alloc_tag, .usize_type, node); // initialize to zero _ = try parent_gz.addBin(.store, index_ptr, .zero_usize); + try counters.append(index_ptr); break :blk index_ptr; }; @@ -6343,13 +6402,15 @@ fn forExpr( // cond_block unstacked now, can add new instructions to loop_scope try loop_scope.instructions.append(astgen.gpa, cond_block); - // Increment the index variable. - const index_2 = try loop_scope.addUnNode(.load, index_ptr, for_full.ast.cond_expr); - const index_plus_one = try loop_scope.addPlNode(.add, node, Zir.Inst.Bin{ - .lhs = index_2, - .rhs = .one_usize, - }); - _ = try loop_scope.addBin(.store, index_ptr, index_plus_one); + // Increment the index variable and ranges. + for (counters) |counter_ptr| { + const counter = try loop_scope.addUnNode(.load, counter_ptr, for_full.ast.cond_expr); + const counter_plus_one = try loop_scope.addPlNode(.add, node, Zir.Inst.Bin{ + .lhs = counter, + .rhs = .one_usize, + }); + _ = try loop_scope.addBin(.store, counter_ptr, counter_plus_one); + } const repeat_tag: Zir.Inst.Tag = if (is_inline) .repeat_inline else .repeat; _ = try loop_scope.addNode(repeat_tag, node); @@ -6366,64 +6427,62 @@ fn forExpr( var then_scope = parent_gz.makeSubBlock(&cond_scope.base); defer then_scope.unstack(); - try then_scope.addDbgBlockBegin(); - var payload_val_scope: Scope.LocalVal = undefined; - var index_scope: Scope.LocalPtr = undefined; - const then_sub_scope = blk: { - const payload_token = for_full.payload_token.?; - const ident = if (token_tags[payload_token] == .asterisk) - payload_token + 1 - else - payload_token; - const is_ptr = ident != payload_token; - const value_name = tree.tokenSlice(ident); - var payload_sub_scope: *Scope = undefined; - if (!mem.eql(u8, value_name, "_")) { - const name_str_index = try astgen.identAsString(ident); - const tag: Zir.Inst.Tag = if (is_ptr) .elem_ptr else .elem_val; - const payload_inst = try then_scope.addPlNode(tag, for_full.ast.cond_expr, Zir.Inst.Bin{ - .lhs = array_ptr, - .rhs = index, - }); - try astgen.detectLocalShadowing(&then_scope.base, name_str_index, ident, value_name, .capture); - payload_val_scope = .{ - .parent = &then_scope.base, - .gen_zir = &then_scope, - .name = name_str_index, - .inst = payload_inst, - .token_src = ident, - .id_cat = .capture, - }; - try then_scope.addDbgVar(.dbg_var_val, name_str_index, payload_inst); - payload_sub_scope = &payload_val_scope.base; - } else if (is_ptr) { - return astgen.failTok(payload_token, "pointer modifier invalid on discard", .{}); - } else { - payload_sub_scope = &then_scope.base; - } + const then_sub_scope = &then_scope.base; - const index_token = if (token_tags[ident + 1] == .comma) - ident + 2 - else - break :blk payload_sub_scope; - const token_bytes = tree.tokenSlice(index_token); - if (mem.eql(u8, token_bytes, "_")) { - return astgen.failTok(index_token, "discard of index capture; omit it instead", .{}); - } - const index_name = try astgen.identAsString(index_token); - try astgen.detectLocalShadowing(payload_sub_scope, index_name, index_token, token_bytes, .@"loop index capture"); - index_scope = .{ - .parent = payload_sub_scope, - .gen_zir = &then_scope, - .name = index_name, - .ptr = index_ptr, - .token_src = index_token, - .maybe_comptime = is_inline, - .id_cat = .@"loop index capture", - }; - try then_scope.addDbgVar(.dbg_var_val, index_name, index_ptr); - break :blk &index_scope.base; - }; + // try then_scope.addDbgBlockBegin(); + // var payload_val_scope: Scope.LocalVal = undefined; + // var index_scope: Scope.LocalPtr = undefined; + // const then_sub_scope = blk: { + // const payload_token = for_full.payload_token.?; + // const ident = if (token_tags[payload_token] == .asterisk) + // payload_token + 1 + // else + // payload_token; + // const is_ptr = ident != payload_token; + // const value_name = tree.tokenSlice(ident); + // var payload_sub_scope: *Scope = undefined; + // if (!mem.eql(u8, value_name, "_")) { + // const name_str_index = try astgen.identAsString(ident); + // const tag: Zir.Inst.Tag = if (is_ptr) .elem_ptr else .elem_val; + // const payload_inst = try then_scope.addPlNode(tag, for_full.ast.cond_expr, Zir.Inst.Bin{ + // .lhs = array_ptr, + // .rhs = index, + // }); + // try astgen.detectLocalShadowing(&then_scope.base, name_str_index, ident, value_name, .capture); + // payload_val_scope = .{ + // .parent = &then_scope.base, + // .gen_zir = &then_scope, + // .name = name_str_index, + // .inst = payload_inst, + // .token_src = ident, + // .id_cat = .capture, + // }; + // try then_scope.addDbgVar(.dbg_var_val, name_str_index, payload_inst); + // payload_sub_scope = &payload_val_scope.base; + // } else if (is_ptr) { + // } else { + // payload_sub_scope = &then_scope.base; + // } + + // const index_token = if (token_tags[ident + 1] == .comma) + // ident + 2 + // else + // break :blk payload_sub_scope; + // const token_bytes = tree.tokenSlice(index_token); + // const index_name = try astgen.identAsString(index_token); + // try astgen.detectLocalShadowing(payload_sub_scope, index_name, index_token, token_bytes, .@"loop index capture"); + // index_scope = .{ + // .parent = payload_sub_scope, + // .gen_zir = &then_scope, + // .name = index_name, + // .ptr = index_ptr, + // .token_src = index_token, + // .maybe_comptime = is_inline, + // .id_cat = .@"loop index capture", + // }; + // try then_scope.addDbgVar(.dbg_var_val, index_name, index_ptr); + // break :blk &index_scope.base; + // }; const then_result = try expr(&then_scope, then_sub_scope, .{ .rl = .none }, for_full.ast.then_expr); _ = try addEnsureResult(&then_scope, then_result, for_full.ast.then_expr); @@ -9021,6 +9080,7 @@ fn nodeMayNeedMemoryLocation(tree: *const Ast, start_node: Ast.Node.Index, have_ .mul_wrap, .mul_sat, .switch_range, + .for_range, .field_access, .sub, .sub_wrap, @@ -9310,6 +9370,7 @@ fn nodeMayEvalToError(tree: *const Ast, start_node: Ast.Node.Index) BuiltinFn.Ev .mul_wrap, .mul_sat, .switch_range, + .for_range, .sub, .sub_wrap, .sub_sat, @@ -9487,6 +9548,7 @@ fn nodeImpliesMoreThanOnePossibleValue(tree: *const Ast, start_node: Ast.Node.In .mul_wrap, .mul_sat, .switch_range, + .for_range, .field_access, .sub, .sub_wrap, @@ -9731,6 +9793,7 @@ fn nodeImpliesComptimeOnly(tree: *const Ast, start_node: Ast.Node.Index) bool { .mul_wrap, .mul_sat, .switch_range, + .for_range, .field_access, .sub, .sub_wrap, From faa44e2e5875036b105d8b7d38ccb2e93757a3c5 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Fri, 17 Feb 2023 11:51:22 -0700 Subject: [PATCH 08/36] AstGen: rework multi-object for loop * Allow unbounded looping. * Lower by incrementing raw pointers for each iterable rather than incrementing a single index variable. This elides safety checks without any analysis required thanks to the length assertion and lowers to decent machine code even in debug builds. - An "end" value is selected, prioritizing a counter if possible, falling back to a runtime calculation of ptr+len on a slice input. * Specialize on the pattern `0..`, avoiding an unnecessary subtraction instruction being emitted. * Add the `for_check_lens` ZIR instruction. --- src/AstGen.zig | 169 +++++++++++++++++++++++++++++++--------------- src/Sema.zig | 15 ++++ src/Zir.zig | 12 ++++ src/print_zir.zig | 15 ++++ 4 files changed, 156 insertions(+), 55 deletions(-) diff --git a/src/AstGen.zig b/src/AstGen.zig index ee709a3fe2..7d3a165d2f 100644 --- a/src/AstGen.zig +++ b/src/AstGen.zig @@ -2666,6 +2666,7 @@ fn addEnsureResult(gz: *GenZir, maybe_unused_result: Zir.Inst.Ref, statement: As .validate_deref, .save_err_ret_index, .restore_err_ret_index, + .for_check_lens, => break :b true, .@"defer" => unreachable, @@ -6294,37 +6295,35 @@ fn forExpr( try astgen.checkLabelRedefinition(scope, label_token); } - // Set up variables and constants. const is_inline = parent_gz.force_comptime or for_full.inline_token != null; const tree = astgen.tree; const token_tags = tree.tokens.items(.tag); const node_tags = tree.nodes.items(.tag); const node_data = tree.nodes.items(.data); + const gpa = astgen.gpa; - // Check for unterminated ranges. - { - var unterminated: ?Ast.Node.Index = null; - for (for_full.ast.inputs) |input| { - if (node_tags[input] != .for_range) break; - if (node_data[input].rhs != 0) break; - unterminated = unterminated orelse input; - } else { - return astgen.failNode(unterminated.?, "unterminated for range", .{}); - } - } - - var lens = astgen.gpa.alloc(Zir.Inst.Ref, for_full.ast.inputs.len); - defer astgen.gpa.free(lens); - var indexables = astgen.gpa.alloc(Zir.Inst.Ref, for_full.ast.inputs.len); - defer astgen.gpa.free(indexables); - var counters = std.ArrayList(Zir.Inst.Ref).init(astgen.gpa); - defer counters.deinit(); + const allocs = try gpa.alloc(Zir.Inst.Ref, for_full.ast.inputs.len); + defer gpa.free(allocs); + // elements of this array can be `none`, indicating no length check. + const lens = try gpa.alloc(Zir.Inst.Ref, for_full.ast.inputs.len); + defer gpa.free(lens); const counter_alloc_tag: Zir.Inst.Tag = if (is_inline) .alloc_comptime_mut else .alloc; + // Tracks the index of allocs/lens that has a length to be checked and is + // used for the end value. + // If this is null, there are no len checks. + var end_input_index: ?u32 = null; + // This is a value to use to find out if the for loop has reached the end + // yet. It prefers to use a counter since the end value is provided directly, + // and otherwise falls back to adding ptr+len of a slice to compute end. + // Corresponds to end_input_index and will be .none in case that value is null. + var cond_end_val: Zir.Inst.Ref = .none; + { var payload = for_full.payload_token; - for (for_full.ast.inputs) |input, i| { + for (for_full.ast.inputs) |input, i_usize| { + const i = @intCast(u32, i_usize); const payload_is_ref = token_tags[payload] == .asterisk; const ident_tok = payload + @boolToInt(payload_is_ref); @@ -6339,59 +6338,101 @@ fn forExpr( return astgen.failTok(ident_tok, "cannot capture reference to range", .{}); } const counter_ptr = try parent_gz.addUnNode(counter_alloc_tag, .usize_type, node); - const start_val = try expr(parent_gz, scope, node_data[input].lhs, input); + const start_node = node_data[input].lhs; + const start_val = try expr(parent_gz, scope, .{ .rl = .none }, start_node); _ = try parent_gz.addBin(.store, counter_ptr, start_val); - indexables[i] = counter_ptr; - try counters.append(counter_ptr); const end_node = node_data[input].rhs; - const end_val = if (end_node != 0) try expr(parent_gz, scope, node_data[input].rhs, input) else .none; - const range_len = try parent_gz.addPlNode(.for_range_len, input, Zir.Inst.Bin{ - .lhs = start_val, - .rhs = end_val, - }); + const end_val = if (end_node != 0) + try expr(parent_gz, scope, .{ .rl = .none }, node_data[input].rhs) + else + .none; + + const range_len = if (end_val == .none or nodeIsTriviallyZero(tree, start_node)) + end_val + else + try parent_gz.addPlNode(.sub, input, Zir.Inst.Bin{ + .lhs = end_val, + .rhs = start_val, + }); + + if (range_len != .none and cond_end_val == .none) { + end_input_index = i; + cond_end_val = end_val; + } + + allocs[i] = counter_ptr; lens[i] = range_len; } else { const cond_ri: ResultInfo = .{ .rl = if (payload_is_ref) .ref else .none }; const indexable = try expr(parent_gz, scope, cond_ri, input); - indexables[i] = indexable; + const base_ptr = try parent_gz.addPlNode(.elem_ptr_imm, input, Zir.Inst.ElemPtrImm{ + .ptr = indexable, + .index = 0, + }); - const indexable_len = try parent_gz.addUnNode(.indexable_ptr_len, indexable, input); - lens[i] = indexable_len; + if (end_input_index == null) { + end_input_index = i; + assert(cond_end_val == .none); + } + + allocs[i] = base_ptr; + lens[i] = try parent_gz.addUnNode(.indexable_ptr_len, indexable, input); } } } - const len = "check_for_lens"; + // In case there are no counters which already have an end computed, we + // compute an end from base pointer plus length. + if (end_input_index) |i| { + if (cond_end_val == .none) { + cond_end_val = try parent_gz.addPlNode(.add, for_full.ast.inputs[i], Zir.Inst.Bin{ + .lhs = allocs[i], + .rhs = lens[i], + }); + } + } - const index_ptr = blk: { - // Future optimization: - // for loops with only ranges don't need a separate index variable. - const index_ptr = try parent_gz.addUnNode(counter_alloc_tag, .usize_type, node); - // initialize to zero - _ = try parent_gz.addBin(.store, index_ptr, .zero_usize); - try counters.append(index_ptr); - break :blk index_ptr; - }; + // We use a dedicated ZIR instruction to assert the lengths to assist with + // nicer error reporting as well as fewer ZIR bytes emitted. + if (end_input_index != null) { + const lens_len = @intCast(u32, lens.len); + try astgen.extra.ensureUnusedCapacity(gpa, @typeInfo(Zir.Inst.MultiOp).Struct.fields.len + lens_len); + _ = try parent_gz.addPlNode(.for_check_lens, node, Zir.Inst.MultiOp{ + .operands_len = lens_len, + }); + appendRefsAssumeCapacity(astgen, lens); + } const loop_tag: Zir.Inst.Tag = if (is_inline) .block_inline else .loop; const loop_block = try parent_gz.makeBlockInst(loop_tag, node); - try parent_gz.instructions.append(astgen.gpa, loop_block); + try parent_gz.instructions.append(gpa, loop_block); var loop_scope = parent_gz.makeSubBlock(scope); loop_scope.is_inline = is_inline; loop_scope.setBreakResultInfo(ri); defer loop_scope.unstack(); - defer loop_scope.labeled_breaks.deinit(astgen.gpa); + defer loop_scope.labeled_breaks.deinit(gpa); var cond_scope = parent_gz.makeSubBlock(&loop_scope.base); defer cond_scope.unstack(); - // check condition i < array_expr.len - const index = try cond_scope.addUnNode(.load, index_ptr, for_full.ast.cond_expr); - const cond = try cond_scope.addPlNode(.cmp_lt, for_full.ast.cond_expr, Zir.Inst.Bin{ - .lhs = index, - .rhs = len, + // Load all the iterables. + const loaded_ptrs = try gpa.alloc(Zir.Inst.Ref, allocs.len); + defer gpa.free(loaded_ptrs); + for (allocs) |alloc, i| { + loaded_ptrs[i] = try cond_scope.addUnNode(.load, alloc, for_full.ast.inputs[i]); + } + + // Check the condition. + const input_index = end_input_index orelse { + return astgen.failNode(node, "TODO: handle infinite for loop", .{}); + }; + assert(cond_end_val != .none); + + const cond = try cond_scope.addPlNode(.cmp_neq, for_full.ast.inputs[input_index], Zir.Inst.Bin{ + .lhs = loaded_ptrs[input_index], + .rhs = cond_end_val, }); const condbr_tag: Zir.Inst.Tag = if (is_inline) .condbr_inline else .condbr; @@ -6400,16 +6441,15 @@ fn forExpr( const cond_block = try loop_scope.makeBlockInst(block_tag, node); try cond_scope.setBlockBody(cond_block); // cond_block unstacked now, can add new instructions to loop_scope - try loop_scope.instructions.append(astgen.gpa, cond_block); + try loop_scope.instructions.append(gpa, cond_block); - // Increment the index variable and ranges. - for (counters) |counter_ptr| { - const counter = try loop_scope.addUnNode(.load, counter_ptr, for_full.ast.cond_expr); - const counter_plus_one = try loop_scope.addPlNode(.add, node, Zir.Inst.Bin{ - .lhs = counter, + // Increment the loop variables. + for (allocs) |alloc, i| { + const incremented = try loop_scope.addPlNode(.add, node, Zir.Inst.Bin{ + .lhs = loaded_ptrs[i], .rhs = .one_usize, }); - _ = try loop_scope.addBin(.store, counter_ptr, counter_plus_one); + _ = try loop_scope.addBin(.store, alloc, incremented); } const repeat_tag: Zir.Inst.Tag = if (is_inline) .repeat_inline else .repeat; _ = try loop_scope.addNode(repeat_tag, node); @@ -8960,6 +9000,25 @@ comptime { } } +fn nodeIsTriviallyZero(tree: *const Ast, node: Ast.Node.Index) bool { + const node_tags = tree.nodes.items(.tag); + const main_tokens = tree.nodes.items(.main_token); + + switch (node_tags[node]) { + .number_literal => { + const ident = main_tokens[node]; + return switch (std.zig.parseNumberLiteral(tree.tokenSlice(ident))) { + .int => |number| switch (number) { + 0 => true, + else => false, + }, + else => false, + }; + }, + else => return false, + } +} + fn nodeMayNeedMemoryLocation(tree: *const Ast, start_node: Ast.Node.Index, have_res_ty: bool) bool { const node_tags = tree.nodes.items(.tag); const node_datas = tree.nodes.items(.data); diff --git a/src/Sema.zig b/src/Sema.zig index cf6350e35f..b5afe93511 100644 --- a/src/Sema.zig +++ b/src/Sema.zig @@ -1386,6 +1386,11 @@ fn analyzeBodyInner( i += 1; continue; }, + .for_check_lens => { + try sema.zirForCheckLens(block, inst); + i += 1; + continue; + }, // Special case instructions to handle comptime control flow. .@"break" => { @@ -17096,6 +17101,16 @@ fn zirRestoreErrRetIndex(sema: *Sema, start_block: *Block, inst: Zir.Inst.Index) return sema.popErrorReturnTrace(start_block, src, operand, saved_index); } +fn zirForCheckLens(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!void { + const inst_data = sema.code.instructions.items(.data)[inst].pl_node; + const extra = sema.code.extraData(Zir.Inst.MultiOp, inst_data.payload_index); + const args = sema.code.refSlice(extra.end, extra.data.operands_len); + const src = inst_data.src(); + + _ = args; + return sema.fail(block, src, "TODO implement zirForCheckLens", .{}); +} + fn addToInferredErrorSet(sema: *Sema, uncasted_operand: Air.Inst.Ref) !void { assert(sema.fn_ret_ty.zigTypeTag() == .ErrorUnion); diff --git a/src/Zir.zig b/src/Zir.zig index 58f9fdff14..de6c2f02d1 100644 --- a/src/Zir.zig +++ b/src/Zir.zig @@ -497,6 +497,15 @@ pub const Inst = struct { /// Sends comptime control flow back to the beginning of the current block. /// Uses the `node` field. repeat_inline, + /// Asserts that all the lengths provided match. Used to build a for loop. + /// Return value is always void. + /// Uses the `pl_node` field with payload `MultiOp`. + /// There is exactly one item corresponding to each AST node inside the for + /// loop condition. Each item may be `none`, indicating an unbounded range. + /// Illegal behaviors: + /// * If all lengths are unbounded ranges (always a compile error). + /// * If any two lengths do not match each other. + for_check_lens, /// Merge two error sets into one, `E1 || E2`. /// Uses the `pl_node` field with payload `Bin`. merge_error_sets, @@ -1242,6 +1251,7 @@ pub const Inst = struct { .defer_err_code, .save_err_ret_index, .restore_err_ret_index, + .for_check_lens, => false, .@"break", @@ -1309,6 +1319,7 @@ pub const Inst = struct { .memcpy, .memset, .check_comptime_control_flow, + .for_check_lens, .@"defer", .defer_err_code, .restore_err_ret_index, @@ -1588,6 +1599,7 @@ pub const Inst = struct { .@"break" = .@"break", .break_inline = .@"break", .check_comptime_control_flow = .un_node, + .for_check_lens = .pl_node, .call = .pl_node, .cmp_lt = .pl_node, .cmp_lte = .pl_node, diff --git a/src/print_zir.zig b/src/print_zir.zig index 8d97000582..f2436f7679 100644 --- a/src/print_zir.zig +++ b/src/print_zir.zig @@ -355,6 +355,8 @@ const Writer = struct { .array_type, => try self.writePlNodeBin(stream, inst), + .for_check_lens => try self.writePlNodeMultiOp(stream, inst), + .elem_ptr_imm => try self.writeElemPtrImm(stream, inst), .@"export" => try self.writePlNodeExport(stream, inst), @@ -868,6 +870,19 @@ const Writer = struct { try self.writeSrc(stream, inst_data.src()); } + fn writePlNodeMultiOp(self: *Writer, stream: anytype, inst: Zir.Inst.Index) !void { + const inst_data = self.code.instructions.items(.data)[inst].pl_node; + const extra = self.code.extraData(Zir.Inst.MultiOp, inst_data.payload_index); + const args = self.code.refSlice(extra.end, extra.data.operands_len); + try stream.writeAll("{"); + for (args) |arg, i| { + if (i != 0) try stream.writeAll(", "); + try self.writeInstRef(stream, arg); + } + try stream.writeAll("}) "); + try self.writeSrc(stream, inst_data.src()); + } + fn writeElemPtrImm(self: *Writer, stream: anytype, inst: Zir.Inst.Index) !void { const inst_data = self.code.instructions.items(.data)[inst].pl_node; const extra = self.code.extraData(Zir.Inst.ElemPtrImm, inst_data.payload_index).data; From 841add6890d001d315591dc20f7d464c264d88bb Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Fri, 17 Feb 2023 13:44:35 -0700 Subject: [PATCH 09/36] AstGen: finish multi-object for loops This strategy uses pointer arithmetic to iterate through the loop. This has a problem, however, which is tuples. AstGen does not know whether a given indexable is a tuple or can be iterated based on contiguous memory. Tuples unlike other indexables cannot be represented as a many-item pointer that is incremented as the loop counter. So, after this commit, I will modify AstGen back closer to how @vexu had it before, using a counter and array element access. --- src/AstGen.zig | 135 +++++++++++++++++++++++----------------------- src/Sema.zig | 37 +++++++------ src/Zir.zig | 11 +++- src/print_zir.zig | 4 +- 4 files changed, 101 insertions(+), 86 deletions(-) diff --git a/src/AstGen.zig b/src/AstGen.zig index 7d3a165d2f..523ac235ac 100644 --- a/src/AstGen.zig +++ b/src/AstGen.zig @@ -88,6 +88,7 @@ fn setExtra(astgen: *AstGen, index: usize, extra: anytype) void { Zir.Inst.BuiltinCall.Flags => @bitCast(u32, @field(extra, field.name)), Zir.Inst.SwitchBlock.Bits => @bitCast(u32, @field(extra, field.name)), Zir.Inst.FuncFancy.Bits => @bitCast(u32, @field(extra, field.name)), + Zir.Inst.ElemPtrImm.Bits => @bitCast(u32, @field(extra, field.name)), else => @compileError("bad field type"), }; i += 1; @@ -1565,7 +1566,9 @@ fn arrayInitExprRlPtrInner( for (elements) |elem_init, i| { const elem_ptr = try gz.addPlNode(.elem_ptr_imm, elem_init, Zir.Inst.ElemPtrImm{ .ptr = result_ptr, - .index = @intCast(u32, i), + .bits = .{ + .index = @intCast(u31, i), + }, }); astgen.extra.items[extra_index] = refToIndex(elem_ptr).?; extra_index += 1; @@ -6308,7 +6311,7 @@ fn forExpr( const lens = try gpa.alloc(Zir.Inst.Ref, for_full.ast.inputs.len); defer gpa.free(lens); - const counter_alloc_tag: Zir.Inst.Tag = if (is_inline) .alloc_comptime_mut else .alloc; + const alloc_tag: Zir.Inst.Tag = if (is_inline) .alloc_comptime_mut else .alloc_mut; // Tracks the index of allocs/lens that has a length to be checked and is // used for the end value. @@ -6321,23 +6324,24 @@ fn forExpr( var cond_end_val: Zir.Inst.Ref = .none; { - var payload = for_full.payload_token; + var capture_token = for_full.payload_token; for (for_full.ast.inputs) |input, i_usize| { const i = @intCast(u32, i_usize); - const payload_is_ref = token_tags[payload] == .asterisk; - const ident_tok = payload + @boolToInt(payload_is_ref); + const capture_is_ref = token_tags[capture_token] == .asterisk; + const ident_tok = capture_token + @boolToInt(capture_is_ref); - if (mem.eql(u8, tree.tokenSlice(ident_tok), "_") and payload_is_ref) { - return astgen.failTok(payload, "pointer modifier invalid on discard", .{}); + if (mem.eql(u8, tree.tokenSlice(ident_tok), "_") and capture_is_ref) { + return astgen.failTok(capture_token, "pointer modifier invalid on discard", .{}); } - payload = ident_tok + @as(u32, 2); + // Skip over the comma, and on to the next capture (or the ending pipe character). + capture_token = ident_tok + 2; try emitDbgNode(parent_gz, input); if (node_tags[input] == .for_range) { - if (payload_is_ref) { + if (capture_is_ref) { return astgen.failTok(ident_tok, "cannot capture reference to range", .{}); } - const counter_ptr = try parent_gz.addUnNode(counter_alloc_tag, .usize_type, node); + const counter_ptr = try parent_gz.addUnNode(alloc_tag, .usize_type, node); const start_node = node_data[input].lhs; const start_val = try expr(parent_gz, scope, .{ .rl = .none }, start_node); _ = try parent_gz.addBin(.store, counter_ptr, start_val); @@ -6364,20 +6368,28 @@ fn forExpr( allocs[i] = counter_ptr; lens[i] = range_len; } else { - const cond_ri: ResultInfo = .{ .rl = if (payload_is_ref) .ref else .none }; - const indexable = try expr(parent_gz, scope, cond_ri, input); + const indexable = try expr(parent_gz, scope, .{ .rl = .none }, input); + // This instruction has nice compile errors so we put it before the other ones + // even though it is not needed until later in the block. + const ptr_len = try parent_gz.addUnNode(.indexable_ptr_len, indexable, input); const base_ptr = try parent_gz.addPlNode(.elem_ptr_imm, input, Zir.Inst.ElemPtrImm{ .ptr = indexable, - .index = 0, + .bits = .{ + .index = 0, + .manyptr = true, + }, }); + const alloc_ty_inst = try parent_gz.addUnNode(.typeof, base_ptr, node); + const alloc = try parent_gz.addUnNode(alloc_tag, alloc_ty_inst, node); + _ = try parent_gz.addBin(.store, alloc, base_ptr); if (end_input_index == null) { end_input_index = i; assert(cond_end_val == .none); } - allocs[i] = base_ptr; - lens[i] = try parent_gz.addUnNode(.indexable_ptr_len, indexable, input); + allocs[i] = alloc; + lens[i] = ptr_len; } } } @@ -6467,62 +6479,47 @@ fn forExpr( var then_scope = parent_gz.makeSubBlock(&cond_scope.base); defer then_scope.unstack(); - const then_sub_scope = &then_scope.base; + try then_scope.addDbgBlockBegin(); - // try then_scope.addDbgBlockBegin(); - // var payload_val_scope: Scope.LocalVal = undefined; - // var index_scope: Scope.LocalPtr = undefined; - // const then_sub_scope = blk: { - // const payload_token = for_full.payload_token.?; - // const ident = if (token_tags[payload_token] == .asterisk) - // payload_token + 1 - // else - // payload_token; - // const is_ptr = ident != payload_token; - // const value_name = tree.tokenSlice(ident); - // var payload_sub_scope: *Scope = undefined; - // if (!mem.eql(u8, value_name, "_")) { - // const name_str_index = try astgen.identAsString(ident); - // const tag: Zir.Inst.Tag = if (is_ptr) .elem_ptr else .elem_val; - // const payload_inst = try then_scope.addPlNode(tag, for_full.ast.cond_expr, Zir.Inst.Bin{ - // .lhs = array_ptr, - // .rhs = index, - // }); - // try astgen.detectLocalShadowing(&then_scope.base, name_str_index, ident, value_name, .capture); - // payload_val_scope = .{ - // .parent = &then_scope.base, - // .gen_zir = &then_scope, - // .name = name_str_index, - // .inst = payload_inst, - // .token_src = ident, - // .id_cat = .capture, - // }; - // try then_scope.addDbgVar(.dbg_var_val, name_str_index, payload_inst); - // payload_sub_scope = &payload_val_scope.base; - // } else if (is_ptr) { - // } else { - // payload_sub_scope = &then_scope.base; - // } + const capture_scopes = try gpa.alloc(Scope.LocalVal, for_full.ast.inputs.len); + defer gpa.free(capture_scopes); - // const index_token = if (token_tags[ident + 1] == .comma) - // ident + 2 - // else - // break :blk payload_sub_scope; - // const token_bytes = tree.tokenSlice(index_token); - // const index_name = try astgen.identAsString(index_token); - // try astgen.detectLocalShadowing(payload_sub_scope, index_name, index_token, token_bytes, .@"loop index capture"); - // index_scope = .{ - // .parent = payload_sub_scope, - // .gen_zir = &then_scope, - // .name = index_name, - // .ptr = index_ptr, - // .token_src = index_token, - // .maybe_comptime = is_inline, - // .id_cat = .@"loop index capture", - // }; - // try then_scope.addDbgVar(.dbg_var_val, index_name, index_ptr); - // break :blk &index_scope.base; - // }; + const then_sub_scope = blk: { + var capture_token = for_full.payload_token; + var capture_sub_scope: *Scope = &then_scope.base; + for (for_full.ast.inputs) |input, i_usize| { + const i = @intCast(u32, i_usize); + const capture_is_ref = token_tags[capture_token] == .asterisk; + const ident_tok = capture_token + @boolToInt(capture_is_ref); + const capture_name = tree.tokenSlice(ident_tok); + // Skip over the comma, and on to the next capture (or the ending pipe character). + capture_token = ident_tok + 2; + + if (mem.eql(u8, capture_name, "_")) continue; + + const name_str_index = try astgen.identAsString(ident_tok); + try astgen.detectLocalShadowing(capture_sub_scope, name_str_index, ident_tok, capture_name, .capture); + + const loaded = if (capture_is_ref) + loaded_ptrs[i] + else + try then_scope.addUnNode(.load, loaded_ptrs[i], input); + + capture_scopes[i] = .{ + .parent = capture_sub_scope, + .gen_zir = &then_scope, + .name = name_str_index, + .inst = loaded, + .token_src = ident_tok, + .id_cat = .capture, + }; + + try then_scope.addDbgVar(.dbg_var_val, name_str_index, loaded); + capture_sub_scope = &capture_scopes[i].base; + } + + break :blk capture_sub_scope; + }; const then_result = try expr(&then_scope, then_sub_scope, .{ .rl = .none }, for_full.ast.then_expr); _ = try addEnsureResult(&then_scope, then_result, for_full.ast.then_expr); diff --git a/src/Sema.zig b/src/Sema.zig index b5afe93511..c251aa9fbf 100644 --- a/src/Sema.zig +++ b/src/Sema.zig @@ -9649,7 +9649,7 @@ fn zirElemPtr(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air const extra = sema.code.extraData(Zir.Inst.Bin, inst_data.payload_index).data; const array_ptr = try sema.resolveInst(extra.lhs); const elem_index = try sema.resolveInst(extra.rhs); - return sema.elemPtr(block, src, array_ptr, elem_index, src, false); + return sema.elemPtr(block, src, array_ptr, elem_index, src, false, .One); } fn zirElemPtrNode(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air.Inst.Ref { @@ -9662,7 +9662,7 @@ fn zirElemPtrNode(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError const extra = sema.code.extraData(Zir.Inst.Bin, inst_data.payload_index).data; const array_ptr = try sema.resolveInst(extra.lhs); const elem_index = try sema.resolveInst(extra.rhs); - return sema.elemPtr(block, src, array_ptr, elem_index, elem_index_src, false); + return sema.elemPtr(block, src, array_ptr, elem_index, elem_index_src, false, .One); } fn zirElemPtrImm(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air.Inst.Ref { @@ -9673,8 +9673,9 @@ fn zirElemPtrImm(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError! const src = inst_data.src(); const extra = sema.code.extraData(Zir.Inst.ElemPtrImm, inst_data.payload_index).data; const array_ptr = try sema.resolveInst(extra.ptr); - const elem_index = try sema.addIntUnsigned(Type.usize, extra.index); - return sema.elemPtr(block, src, array_ptr, elem_index, src, true); + const elem_index = try sema.addIntUnsigned(Type.usize, extra.bits.index); + const size: std.builtin.Type.Pointer.Size = if (extra.bits.manyptr) .Many else .One; + return sema.elemPtr(block, src, array_ptr, elem_index, src, true, size); } fn zirSliceStart(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air.Inst.Ref { @@ -22905,7 +22906,7 @@ fn panicSentinelMismatch( const actual_sentinel = if (ptr_ty.isSlice()) try parent_block.addBinOp(.slice_elem_val, ptr, sentinel_index) else blk: { - const elem_ptr_ty = try sema.elemPtrType(ptr_ty, null); + const elem_ptr_ty = try sema.elemPtrType(ptr_ty, null, .One); const sentinel_ptr = try parent_block.addPtrElemPtr(ptr, sentinel_index, elem_ptr_ty); break :blk try parent_block.addTyOp(.load, sentinel_ty, sentinel_ptr); }; @@ -24072,6 +24073,7 @@ fn elemPtr( elem_index: Air.Inst.Ref, elem_index_src: LazySrcLoc, init: bool, + size: std.builtin.Type.Pointer.Size, ) CompileError!Air.Inst.Ref { const indexable_ptr_src = src; // TODO better source location const indexable_ptr_ty = sema.typeOf(indexable_ptr); @@ -24098,13 +24100,12 @@ fn elemPtr( const index_val = maybe_index_val orelse break :rs elem_index_src; const index = @intCast(usize, index_val.toUnsignedInt(target)); const elem_ptr = try ptr_val.elemPtr(indexable_ty, sema.arena, index, sema.mod); - const result_ty = try sema.elemPtrType(indexable_ty, index); - return sema.addConstant(result_ty, elem_ptr); + const elem_ptr_ty = try sema.elemPtrType(indexable_ty, index, size); + return sema.addConstant(elem_ptr_ty, elem_ptr); }; - const result_ty = try sema.elemPtrType(indexable_ty, null); - + const elem_ptr_ty = try sema.elemPtrType(indexable_ty, null, size); try sema.requireRuntimeBlock(block, src, runtime_src); - return block.addPtrElemPtr(indexable, elem_index, result_ty); + return block.addPtrElemPtr(indexable, elem_index, elem_ptr_ty); }, .One => { assert(indexable_ty.childType().zigTypeTag() == .Array); // Guaranteed by isIndexable @@ -24166,7 +24167,7 @@ fn elemVal( }, .One => { assert(indexable_ty.childType().zigTypeTag() == .Array); // Guaranteed by isIndexable - const elem_ptr = try sema.elemPtr(block, indexable_src, indexable, elem_index, elem_index_src, false); + const elem_ptr = try sema.elemPtr(block, indexable_src, indexable, elem_index, elem_index_src, false, .One); return sema.analyzeLoad(block, indexable_src, elem_ptr, elem_index_src); }, }, @@ -24404,7 +24405,7 @@ fn elemPtrArray( break :o index; } else null; - const elem_ptr_ty = try sema.elemPtrType(array_ptr_ty, offset); + const elem_ptr_ty = try sema.elemPtrType(array_ptr_ty, offset, .One); if (maybe_undef_array_ptr_val) |array_ptr_val| { if (array_ptr_val.isUndef()) { @@ -24509,7 +24510,7 @@ fn elemPtrSlice( break :o index; } else null; - const elem_ptr_ty = try sema.elemPtrType(slice_ty, offset); + const elem_ptr_ty = try sema.elemPtrType(slice_ty, offset, .One); if (maybe_undef_slice_val) |slice_val| { if (slice_val.isUndef()) { @@ -26239,7 +26240,7 @@ fn storePtr2( const elem_src = operand_src; // TODO better source location const elem = try sema.tupleField(block, operand_src, uncasted_operand, elem_src, i); const elem_index = try sema.addIntUnsigned(Type.usize, i); - const elem_ptr = try sema.elemPtr(block, ptr_src, ptr, elem_index, elem_src, false); + const elem_ptr = try sema.elemPtr(block, ptr_src, ptr, elem_index, elem_src, false, .One); try sema.storePtr2(block, src, elem_ptr, elem_src, elem, elem_src, .store); } return; @@ -33276,7 +33277,12 @@ fn compareVector( /// For []T, returns *T /// Handles const-ness and address spaces in particular. /// This code is duplicated in `analyzePtrArithmetic`. -fn elemPtrType(sema: *Sema, ptr_ty: Type, offset: ?usize) !Type { +fn elemPtrType( + sema: *Sema, + ptr_ty: Type, + offset: ?usize, + size: std.builtin.Type.Pointer.Size, +) !Type { const ptr_info = ptr_ty.ptrInfo().data; const elem_ty = ptr_ty.elemType2(); const allow_zero = ptr_info.@"allowzero" and (offset orelse 0) == 0; @@ -33321,6 +33327,7 @@ fn elemPtrType(sema: *Sema, ptr_ty: Type, offset: ?usize) !Type { break :a new_align; }; return try Type.ptr(sema.arena, sema.mod, .{ + .size = size, .pointee_type = elem_ty, .mutable = ptr_info.mutable, .@"addrspace" = ptr_info.@"addrspace", diff --git a/src/Zir.zig b/src/Zir.zig index de6c2f02d1..edbd70e170 100644 --- a/src/Zir.zig +++ b/src/Zir.zig @@ -79,6 +79,7 @@ pub fn extraData(code: Zir, comptime T: type, index: usize) struct { data: T, en Inst.BuiltinCall.Flags => @bitCast(Inst.BuiltinCall.Flags, code.extra[i]), Inst.SwitchBlock.Bits => @bitCast(Inst.SwitchBlock.Bits, code.extra[i]), Inst.FuncFancy.Bits => @bitCast(Inst.FuncFancy.Bits, code.extra[i]), + Inst.ElemPtrImm.Bits => @bitCast(Inst.ElemPtrImm.Bits, code.extra[i]), else => @compileError("bad field type"), }; i += 1; @@ -388,6 +389,8 @@ pub const Inst = struct { /// as a reference to another ZIR instruction. /// Uses the `pl_node` union field. AST node is an element inside array initialization /// syntax. Payload is `ElemPtrImm`. + /// This instruction has a way to set the result type to be a + /// single-pointer or a many-pointer. elem_ptr_imm, /// Given an array, slice, or pointer, returns the element at the provided index. /// Uses the `pl_node` union field. AST node is a[b] syntax. Payload is `Bin`. @@ -2972,7 +2975,13 @@ pub const Inst = struct { pub const ElemPtrImm = struct { ptr: Ref, - index: u32, + bits: Bits, + + pub const Bits = packed struct(u32) { + index: u31, + /// Controls whether the type returned is `*T` or `[*]T`. + manyptr: bool = false, + }; }; /// 0. multi_cases_len: u32 // If has_multi_cases is set. diff --git a/src/print_zir.zig b/src/print_zir.zig index f2436f7679..0977a88d53 100644 --- a/src/print_zir.zig +++ b/src/print_zir.zig @@ -888,7 +888,9 @@ const Writer = struct { const extra = self.code.extraData(Zir.Inst.ElemPtrImm, inst_data.payload_index).data; try self.writeInstRef(stream, extra.ptr); - try stream.print(", {d}) ", .{extra.index}); + try stream.print(", {d}", .{extra.bits.index}); + try self.writeFlag(stream, ", manyptr", extra.bits.manyptr); + try stream.writeAll(") "); try self.writeSrc(stream, inst_data.src()); } From 293d6bdc73c5fe01b07ebe3d09c9a78613fed093 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Fri, 17 Feb 2023 16:39:45 -0700 Subject: [PATCH 10/36] AstGen: back to index-based for loops --- src/AstGen.zig | 159 +++++++++++++++++++++------------------------- src/Sema.zig | 63 ++++++++---------- src/Zir.zig | 21 ++---- src/print_zir.zig | 6 +- 4 files changed, 106 insertions(+), 143 deletions(-) diff --git a/src/AstGen.zig b/src/AstGen.zig index 523ac235ac..b90201713e 100644 --- a/src/AstGen.zig +++ b/src/AstGen.zig @@ -88,7 +88,6 @@ fn setExtra(astgen: *AstGen, index: usize, extra: anytype) void { Zir.Inst.BuiltinCall.Flags => @bitCast(u32, @field(extra, field.name)), Zir.Inst.SwitchBlock.Bits => @bitCast(u32, @field(extra, field.name)), Zir.Inst.FuncFancy.Bits => @bitCast(u32, @field(extra, field.name)), - Zir.Inst.ElemPtrImm.Bits => @bitCast(u32, @field(extra, field.name)), else => @compileError("bad field type"), }; i += 1; @@ -1566,9 +1565,7 @@ fn arrayInitExprRlPtrInner( for (elements) |elem_init, i| { const elem_ptr = try gz.addPlNode(.elem_ptr_imm, elem_init, Zir.Inst.ElemPtrImm{ .ptr = result_ptr, - .bits = .{ - .index = @intCast(u31, i), - }, + .index = @intCast(u32, i), }); astgen.extra.items[extra_index] = refToIndex(elem_ptr).?; extra_index += 1; @@ -2601,6 +2598,7 @@ fn addEnsureResult(gz: *GenZir, maybe_unused_result: Zir.Inst.Ref, statement: As .field_base_ptr, .ret_ptr, .ret_type, + .for_len, .@"try", .try_ptr, //.try_inline, @@ -2669,7 +2667,6 @@ fn addEnsureResult(gz: *GenZir, maybe_unused_result: Zir.Inst.Ref, statement: As .validate_deref, .save_err_ret_index, .restore_err_ret_index, - .for_check_lens, => break :b true, .@"defer" => unreachable, @@ -6305,23 +6302,26 @@ fn forExpr( const node_data = tree.nodes.items(.data); const gpa = astgen.gpa; - const allocs = try gpa.alloc(Zir.Inst.Ref, for_full.ast.inputs.len); - defer gpa.free(allocs); + // For counters, this is the start value; for indexables, this is the base + // pointer that can be used with elem_ptr and similar instructions. + // Special value `none` means that this is a counter and its start value is + // zero, indicating that the main index counter can be used directly. + const indexables = try gpa.alloc(Zir.Inst.Ref, for_full.ast.inputs.len); + defer gpa.free(indexables); // elements of this array can be `none`, indicating no length check. const lens = try gpa.alloc(Zir.Inst.Ref, for_full.ast.inputs.len); defer gpa.free(lens); - const alloc_tag: Zir.Inst.Tag = if (is_inline) .alloc_comptime_mut else .alloc_mut; + // We will use a single zero-based counter no matter how many indexables there are. + const index_ptr = blk: { + const alloc_tag: Zir.Inst.Tag = if (is_inline) .alloc_comptime_mut else .alloc; + const index_ptr = try parent_gz.addUnNode(alloc_tag, .usize_type, node); + // initialize to zero + _ = try parent_gz.addBin(.store, index_ptr, .zero_usize); + break :blk index_ptr; + }; - // Tracks the index of allocs/lens that has a length to be checked and is - // used for the end value. - // If this is null, there are no len checks. - var end_input_index: ?u32 = null; - // This is a value to use to find out if the for loop has reached the end - // yet. It prefers to use a counter since the end value is provided directly, - // and otherwise falls back to adding ptr+len of a slice to compute end. - // Corresponds to end_input_index and will be .none in case that value is null. - var cond_end_val: Zir.Inst.Ref = .none; + var any_len_checks = false; { var capture_token = for_full.payload_token; @@ -6341,10 +6341,8 @@ fn forExpr( if (capture_is_ref) { return astgen.failTok(ident_tok, "cannot capture reference to range", .{}); } - const counter_ptr = try parent_gz.addUnNode(alloc_tag, .usize_type, node); const start_node = node_data[input].lhs; const start_val = try expr(parent_gz, scope, .{ .rl = .none }, start_node); - _ = try parent_gz.addBin(.store, counter_ptr, start_val); const end_node = node_data[input].rhs; const end_val = if (end_node != 0) @@ -6352,7 +6350,8 @@ fn forExpr( else .none; - const range_len = if (end_val == .none or nodeIsTriviallyZero(tree, start_node)) + const start_is_zero = nodeIsTriviallyZero(tree, start_node); + const range_len = if (end_val == .none or start_is_zero) end_val else try parent_gz.addPlNode(.sub, input, Zir.Inst.Bin{ @@ -6360,61 +6359,33 @@ fn forExpr( .rhs = start_val, }); - if (range_len != .none and cond_end_val == .none) { - end_input_index = i; - cond_end_val = end_val; - } - - allocs[i] = counter_ptr; + any_len_checks = any_len_checks or range_len != .none; + indexables[i] = if (start_is_zero) .none else start_val; lens[i] = range_len; } else { const indexable = try expr(parent_gz, scope, .{ .rl = .none }, input); - // This instruction has nice compile errors so we put it before the other ones - // even though it is not needed until later in the block. - const ptr_len = try parent_gz.addUnNode(.indexable_ptr_len, indexable, input); - const base_ptr = try parent_gz.addPlNode(.elem_ptr_imm, input, Zir.Inst.ElemPtrImm{ - .ptr = indexable, - .bits = .{ - .index = 0, - .manyptr = true, - }, - }); - const alloc_ty_inst = try parent_gz.addUnNode(.typeof, base_ptr, node); - const alloc = try parent_gz.addUnNode(alloc_tag, alloc_ty_inst, node); - _ = try parent_gz.addBin(.store, alloc, base_ptr); + const indexable_len = try parent_gz.addUnNode(.indexable_ptr_len, indexable, input); - if (end_input_index == null) { - end_input_index = i; - assert(cond_end_val == .none); - } - - allocs[i] = alloc; - lens[i] = ptr_len; + any_len_checks = true; + indexables[i] = indexable; + lens[i] = indexable_len; } } } - // In case there are no counters which already have an end computed, we - // compute an end from base pointer plus length. - if (end_input_index) |i| { - if (cond_end_val == .none) { - cond_end_val = try parent_gz.addPlNode(.add, for_full.ast.inputs[i], Zir.Inst.Bin{ - .lhs = allocs[i], - .rhs = lens[i], - }); - } - } - // We use a dedicated ZIR instruction to assert the lengths to assist with // nicer error reporting as well as fewer ZIR bytes emitted. - if (end_input_index != null) { + const len: Zir.Inst.Ref = len: { + if (!any_len_checks) break :len .none; + const lens_len = @intCast(u32, lens.len); try astgen.extra.ensureUnusedCapacity(gpa, @typeInfo(Zir.Inst.MultiOp).Struct.fields.len + lens_len); - _ = try parent_gz.addPlNode(.for_check_lens, node, Zir.Inst.MultiOp{ + const len = try parent_gz.addPlNode(.for_len, node, Zir.Inst.MultiOp{ .operands_len = lens_len, }); appendRefsAssumeCapacity(astgen, lens); - } + break :len len; + }; const loop_tag: Zir.Inst.Tag = if (is_inline) .block_inline else .loop; const loop_block = try parent_gz.makeBlockInst(loop_tag, node); @@ -6429,22 +6400,14 @@ fn forExpr( var cond_scope = parent_gz.makeSubBlock(&loop_scope.base); defer cond_scope.unstack(); - // Load all the iterables. - const loaded_ptrs = try gpa.alloc(Zir.Inst.Ref, allocs.len); - defer gpa.free(loaded_ptrs); - for (allocs) |alloc, i| { - loaded_ptrs[i] = try cond_scope.addUnNode(.load, alloc, for_full.ast.inputs[i]); - } - // Check the condition. - const input_index = end_input_index orelse { + if (!any_len_checks) { return astgen.failNode(node, "TODO: handle infinite for loop", .{}); - }; - assert(cond_end_val != .none); - - const cond = try cond_scope.addPlNode(.cmp_neq, for_full.ast.inputs[input_index], Zir.Inst.Bin{ - .lhs = loaded_ptrs[input_index], - .rhs = cond_end_val, + } + const index = try cond_scope.addUnNode(.load, index_ptr, node); + const cond = try cond_scope.addPlNode(.cmp_lt, node, Zir.Inst.Bin{ + .lhs = index, + .rhs = len, }); const condbr_tag: Zir.Inst.Tag = if (is_inline) .condbr_inline else .condbr; @@ -6455,14 +6418,12 @@ fn forExpr( // cond_block unstacked now, can add new instructions to loop_scope try loop_scope.instructions.append(gpa, cond_block); - // Increment the loop variables. - for (allocs) |alloc, i| { - const incremented = try loop_scope.addPlNode(.add, node, Zir.Inst.Bin{ - .lhs = loaded_ptrs[i], - .rhs = .one_usize, - }); - _ = try loop_scope.addBin(.store, alloc, incremented); - } + // Increment the index variable. + const index_plus_one = try loop_scope.addPlNode(.add, node, Zir.Inst.Bin{ + .lhs = index, + .rhs = .one_usize, + }); + _ = try loop_scope.addBin(.store, index_ptr, index_plus_one); const repeat_tag: Zir.Inst.Tag = if (is_inline) .repeat_inline else .repeat; _ = try loop_scope.addNode(repeat_tag, node); @@ -6500,21 +6461,43 @@ fn forExpr( const name_str_index = try astgen.identAsString(ident_tok); try astgen.detectLocalShadowing(capture_sub_scope, name_str_index, ident_tok, capture_name, .capture); - const loaded = if (capture_is_ref) - loaded_ptrs[i] - else - try then_scope.addUnNode(.load, loaded_ptrs[i], input); + const capture_inst = inst: { + const is_counter = node_tags[input] == .for_range; + + if (indexables[i] == .none) { + // Special case: the main index can be used directly. + assert(is_counter); + assert(!capture_is_ref); + break :inst index; + } + + // For counters, we add the index variable to the start value; for + // indexables, we use it as an element index. This is so similar + // that they can share the same code paths, branching only on the + // ZIR tag. + const switch_cond = (@as(u2, @boolToInt(capture_is_ref)) << 1) | @boolToInt(is_counter); + const tag: Zir.Inst.Tag = switch (switch_cond) { + 0b00 => .elem_val, + 0b01 => .add, + 0b10 => .elem_ptr, + 0b11 => unreachable, // compile error emitted already + }; + break :inst try then_scope.addPlNode(tag, input, Zir.Inst.Bin{ + .lhs = indexables[i], + .rhs = index, + }); + }; capture_scopes[i] = .{ .parent = capture_sub_scope, .gen_zir = &then_scope, .name = name_str_index, - .inst = loaded, + .inst = capture_inst, .token_src = ident_tok, .id_cat = .capture, }; - try then_scope.addDbgVar(.dbg_var_val, name_str_index, loaded); + try then_scope.addDbgVar(.dbg_var_val, name_str_index, capture_inst); capture_sub_scope = &capture_scopes[i].base; } diff --git a/src/Sema.zig b/src/Sema.zig index c251aa9fbf..cb40a85364 100644 --- a/src/Sema.zig +++ b/src/Sema.zig @@ -1035,6 +1035,7 @@ fn analyzeBodyInner( .@"await" => try sema.zirAwait(block, inst), .array_base_ptr => try sema.zirArrayBasePtr(block, inst), .field_base_ptr => try sema.zirFieldBasePtr(block, inst), + .for_len => try sema.zirForLen(block, inst), .clz => try sema.zirBitCount(block, inst, .clz, Value.clz), .ctz => try sema.zirBitCount(block, inst, .ctz, Value.ctz), @@ -1386,11 +1387,6 @@ fn analyzeBodyInner( i += 1; continue; }, - .for_check_lens => { - try sema.zirForCheckLens(block, inst); - i += 1; - continue; - }, // Special case instructions to handle comptime control flow. .@"break" => { @@ -3924,6 +3920,16 @@ fn zirFieldBasePtr( return sema.failWithStructInitNotSupported(block, src, sema.typeOf(start_ptr).childType()); } +fn zirForLen(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air.Inst.Ref { + const inst_data = sema.code.instructions.items(.data)[inst].pl_node; + const extra = sema.code.extraData(Zir.Inst.MultiOp, inst_data.payload_index); + const args = sema.code.refSlice(extra.end, extra.data.operands_len); + const src = inst_data.src(); + + _ = args; + return sema.fail(block, src, "TODO implement zirForCheckLens", .{}); +} + fn validateArrayInitTy( sema: *Sema, block: *Block, @@ -9649,7 +9655,7 @@ fn zirElemPtr(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air const extra = sema.code.extraData(Zir.Inst.Bin, inst_data.payload_index).data; const array_ptr = try sema.resolveInst(extra.lhs); const elem_index = try sema.resolveInst(extra.rhs); - return sema.elemPtr(block, src, array_ptr, elem_index, src, false, .One); + return sema.elemPtr(block, src, array_ptr, elem_index, src, false); } fn zirElemPtrNode(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air.Inst.Ref { @@ -9662,7 +9668,7 @@ fn zirElemPtrNode(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError const extra = sema.code.extraData(Zir.Inst.Bin, inst_data.payload_index).data; const array_ptr = try sema.resolveInst(extra.lhs); const elem_index = try sema.resolveInst(extra.rhs); - return sema.elemPtr(block, src, array_ptr, elem_index, elem_index_src, false, .One); + return sema.elemPtr(block, src, array_ptr, elem_index, elem_index_src, false); } fn zirElemPtrImm(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air.Inst.Ref { @@ -9673,9 +9679,8 @@ fn zirElemPtrImm(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError! const src = inst_data.src(); const extra = sema.code.extraData(Zir.Inst.ElemPtrImm, inst_data.payload_index).data; const array_ptr = try sema.resolveInst(extra.ptr); - const elem_index = try sema.addIntUnsigned(Type.usize, extra.bits.index); - const size: std.builtin.Type.Pointer.Size = if (extra.bits.manyptr) .Many else .One; - return sema.elemPtr(block, src, array_ptr, elem_index, src, true, size); + const elem_index = try sema.addIntUnsigned(Type.usize, extra.index); + return sema.elemPtr(block, src, array_ptr, elem_index, src, true); } fn zirSliceStart(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air.Inst.Ref { @@ -17102,16 +17107,6 @@ fn zirRestoreErrRetIndex(sema: *Sema, start_block: *Block, inst: Zir.Inst.Index) return sema.popErrorReturnTrace(start_block, src, operand, saved_index); } -fn zirForCheckLens(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!void { - const inst_data = sema.code.instructions.items(.data)[inst].pl_node; - const extra = sema.code.extraData(Zir.Inst.MultiOp, inst_data.payload_index); - const args = sema.code.refSlice(extra.end, extra.data.operands_len); - const src = inst_data.src(); - - _ = args; - return sema.fail(block, src, "TODO implement zirForCheckLens", .{}); -} - fn addToInferredErrorSet(sema: *Sema, uncasted_operand: Air.Inst.Ref) !void { assert(sema.fn_ret_ty.zigTypeTag() == .ErrorUnion); @@ -22906,7 +22901,7 @@ fn panicSentinelMismatch( const actual_sentinel = if (ptr_ty.isSlice()) try parent_block.addBinOp(.slice_elem_val, ptr, sentinel_index) else blk: { - const elem_ptr_ty = try sema.elemPtrType(ptr_ty, null, .One); + const elem_ptr_ty = try sema.elemPtrType(ptr_ty, null); const sentinel_ptr = try parent_block.addPtrElemPtr(ptr, sentinel_index, elem_ptr_ty); break :blk try parent_block.addTyOp(.load, sentinel_ty, sentinel_ptr); }; @@ -24073,7 +24068,6 @@ fn elemPtr( elem_index: Air.Inst.Ref, elem_index_src: LazySrcLoc, init: bool, - size: std.builtin.Type.Pointer.Size, ) CompileError!Air.Inst.Ref { const indexable_ptr_src = src; // TODO better source location const indexable_ptr_ty = sema.typeOf(indexable_ptr); @@ -24100,12 +24094,13 @@ fn elemPtr( const index_val = maybe_index_val orelse break :rs elem_index_src; const index = @intCast(usize, index_val.toUnsignedInt(target)); const elem_ptr = try ptr_val.elemPtr(indexable_ty, sema.arena, index, sema.mod); - const elem_ptr_ty = try sema.elemPtrType(indexable_ty, index, size); - return sema.addConstant(elem_ptr_ty, elem_ptr); + const result_ty = try sema.elemPtrType(indexable_ty, index); + return sema.addConstant(result_ty, elem_ptr); }; - const elem_ptr_ty = try sema.elemPtrType(indexable_ty, null, size); + const result_ty = try sema.elemPtrType(indexable_ty, null); + try sema.requireRuntimeBlock(block, src, runtime_src); - return block.addPtrElemPtr(indexable, elem_index, elem_ptr_ty); + return block.addPtrElemPtr(indexable, elem_index, result_ty); }, .One => { assert(indexable_ty.childType().zigTypeTag() == .Array); // Guaranteed by isIndexable @@ -24167,7 +24162,7 @@ fn elemVal( }, .One => { assert(indexable_ty.childType().zigTypeTag() == .Array); // Guaranteed by isIndexable - const elem_ptr = try sema.elemPtr(block, indexable_src, indexable, elem_index, elem_index_src, false, .One); + const elem_ptr = try sema.elemPtr(block, indexable_src, indexable, elem_index, elem_index_src, false); return sema.analyzeLoad(block, indexable_src, elem_ptr, elem_index_src); }, }, @@ -24405,7 +24400,7 @@ fn elemPtrArray( break :o index; } else null; - const elem_ptr_ty = try sema.elemPtrType(array_ptr_ty, offset, .One); + const elem_ptr_ty = try sema.elemPtrType(array_ptr_ty, offset); if (maybe_undef_array_ptr_val) |array_ptr_val| { if (array_ptr_val.isUndef()) { @@ -24510,7 +24505,7 @@ fn elemPtrSlice( break :o index; } else null; - const elem_ptr_ty = try sema.elemPtrType(slice_ty, offset, .One); + const elem_ptr_ty = try sema.elemPtrType(slice_ty, offset); if (maybe_undef_slice_val) |slice_val| { if (slice_val.isUndef()) { @@ -26240,7 +26235,7 @@ fn storePtr2( const elem_src = operand_src; // TODO better source location const elem = try sema.tupleField(block, operand_src, uncasted_operand, elem_src, i); const elem_index = try sema.addIntUnsigned(Type.usize, i); - const elem_ptr = try sema.elemPtr(block, ptr_src, ptr, elem_index, elem_src, false, .One); + const elem_ptr = try sema.elemPtr(block, ptr_src, ptr, elem_index, elem_src, false); try sema.storePtr2(block, src, elem_ptr, elem_src, elem, elem_src, .store); } return; @@ -33277,12 +33272,7 @@ fn compareVector( /// For []T, returns *T /// Handles const-ness and address spaces in particular. /// This code is duplicated in `analyzePtrArithmetic`. -fn elemPtrType( - sema: *Sema, - ptr_ty: Type, - offset: ?usize, - size: std.builtin.Type.Pointer.Size, -) !Type { +fn elemPtrType(sema: *Sema, ptr_ty: Type, offset: ?usize) !Type { const ptr_info = ptr_ty.ptrInfo().data; const elem_ty = ptr_ty.elemType2(); const allow_zero = ptr_info.@"allowzero" and (offset orelse 0) == 0; @@ -33327,7 +33317,6 @@ fn elemPtrType( break :a new_align; }; return try Type.ptr(sema.arena, sema.mod, .{ - .size = size, .pointee_type = elem_ty, .mutable = ptr_info.mutable, .@"addrspace" = ptr_info.@"addrspace", diff --git a/src/Zir.zig b/src/Zir.zig index edbd70e170..e215dfac10 100644 --- a/src/Zir.zig +++ b/src/Zir.zig @@ -79,7 +79,6 @@ pub fn extraData(code: Zir, comptime T: type, index: usize) struct { data: T, en Inst.BuiltinCall.Flags => @bitCast(Inst.BuiltinCall.Flags, code.extra[i]), Inst.SwitchBlock.Bits => @bitCast(Inst.SwitchBlock.Bits, code.extra[i]), Inst.FuncFancy.Bits => @bitCast(Inst.FuncFancy.Bits, code.extra[i]), - Inst.ElemPtrImm.Bits => @bitCast(Inst.ElemPtrImm.Bits, code.extra[i]), else => @compileError("bad field type"), }; i += 1; @@ -501,14 +500,14 @@ pub const Inst = struct { /// Uses the `node` field. repeat_inline, /// Asserts that all the lengths provided match. Used to build a for loop. - /// Return value is always void. + /// Return value is the length as a usize. /// Uses the `pl_node` field with payload `MultiOp`. /// There is exactly one item corresponding to each AST node inside the for - /// loop condition. Each item may be `none`, indicating an unbounded range. + /// loop condition. Any item may be `none`, indicating an unbounded range. /// Illegal behaviors: /// * If all lengths are unbounded ranges (always a compile error). /// * If any two lengths do not match each other. - for_check_lens, + for_len, /// Merge two error sets into one, `E1 || E2`. /// Uses the `pl_node` field with payload `Bin`. merge_error_sets, @@ -1254,7 +1253,7 @@ pub const Inst = struct { .defer_err_code, .save_err_ret_index, .restore_err_ret_index, - .for_check_lens, + .for_len, => false, .@"break", @@ -1322,7 +1321,6 @@ pub const Inst = struct { .memcpy, .memset, .check_comptime_control_flow, - .for_check_lens, .@"defer", .defer_err_code, .restore_err_ret_index, @@ -1547,6 +1545,7 @@ pub const Inst = struct { .repeat_inline, .panic, .panic_comptime, + .for_len, .@"try", .try_ptr, //.try_inline, @@ -1602,7 +1601,7 @@ pub const Inst = struct { .@"break" = .@"break", .break_inline = .@"break", .check_comptime_control_flow = .un_node, - .for_check_lens = .pl_node, + .for_len = .pl_node, .call = .pl_node, .cmp_lt = .pl_node, .cmp_lte = .pl_node, @@ -2975,13 +2974,7 @@ pub const Inst = struct { pub const ElemPtrImm = struct { ptr: Ref, - bits: Bits, - - pub const Bits = packed struct(u32) { - index: u31, - /// Controls whether the type returned is `*T` or `[*]T`. - manyptr: bool = false, - }; + index: u32, }; /// 0. multi_cases_len: u32 // If has_multi_cases is set. diff --git a/src/print_zir.zig b/src/print_zir.zig index 0977a88d53..e5ce9321f5 100644 --- a/src/print_zir.zig +++ b/src/print_zir.zig @@ -355,7 +355,7 @@ const Writer = struct { .array_type, => try self.writePlNodeBin(stream, inst), - .for_check_lens => try self.writePlNodeMultiOp(stream, inst), + .for_len => try self.writePlNodeMultiOp(stream, inst), .elem_ptr_imm => try self.writeElemPtrImm(stream, inst), @@ -888,9 +888,7 @@ const Writer = struct { const extra = self.code.extraData(Zir.Inst.ElemPtrImm, inst_data.payload_index).data; try self.writeInstRef(stream, extra.ptr); - try stream.print(", {d}", .{extra.bits.index}); - try self.writeFlag(stream, ", manyptr", extra.bits.manyptr); - try stream.writeAll(") "); + try stream.print(", {d}) ", .{extra.index}); try self.writeSrc(stream, inst_data.src()); } From 5029e5364caccac07f2296c1f30f2f238f13864d Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Fri, 17 Feb 2023 17:14:28 -0700 Subject: [PATCH 11/36] make zig fmt perform upgrade to new for loop syntax The intent here is to revert this commit after Zig 0.10.0 is released. --- lib/std/zig/Ast.zig | 12 ++++++++++++ lib/std/zig/Parse.zig | 5 ++++- lib/std/zig/render.zig | 11 +++++++++++ src/AstGen.zig | 17 +++++++++++++++++ 4 files changed, 44 insertions(+), 1 deletion(-) diff --git a/lib/std/zig/Ast.zig b/lib/std/zig/Ast.zig index 42eb280966..3784f06160 100644 --- a/lib/std/zig/Ast.zig +++ b/lib/std/zig/Ast.zig @@ -2525,6 +2525,18 @@ pub const full = struct { then_expr: Node.Index, else_expr: Node.Index, }; + + /// TODO: remove this after zig 0.11.0 is tagged. + pub fn isOldSyntax(f: For, token_tags: []const Token.Tag) bool { + if (f.ast.inputs.len != 1) return false; + if (token_tags[f.payload_token + 1] == .comma) return true; + if (token_tags[f.payload_token] == .asterisk and + token_tags[f.payload_token + 2] == .comma) + { + return true; + } + return false; + } }; pub const ContainerField = struct { diff --git a/lib/std/zig/Parse.zig b/lib/std/zig/Parse.zig index 7ef884d22c..258e3b0368 100644 --- a/lib/std/zig/Parse.zig +++ b/lib/std/zig/Parse.zig @@ -2143,7 +2143,10 @@ fn forPrefix(p: *Parse) Error!usize { _ = p.eatToken(.asterisk); const identifier = try p.expectToken(.identifier); captures += 1; - if (captures > inputs and !warned_excess) { + if (!warned_excess and inputs == 1 and captures == 2) { + // TODO remove the above condition after 0.11.0 release. this silences + // the error so that zig fmt can fix it. + } else if (captures > inputs and !warned_excess) { try p.warnMsg(.{ .tag = .extra_for_capture, .token = identifier }); warned_excess = true; } diff --git a/lib/std/zig/render.zig b/lib/std/zig/render.zig index 0e8d3125ac..ea3748a9bd 100644 --- a/lib/std/zig/render.zig +++ b/lib/std/zig/render.zig @@ -1211,6 +1211,17 @@ fn renderFor(gpa: Allocator, ais: *Ais, tree: Ast, for_node: Ast.full.For, space const lparen = for_node.ast.for_token + 1; try renderParamList(gpa, ais, tree, lparen, for_node.ast.inputs, .space); + // TODO remove this after zig 0.11.0 + if (for_node.isOldSyntax(token_tags)) { + // old: for (a) |b, c| {} + // new: for (a, 0..) |b, c| {} + const array_list = ais.underlying_writer.context; // abstractions? who needs 'em! + if (mem.endsWith(u8, array_list.items, ") ")) { + array_list.items.len -= 2; + try array_list.appendSlice(", 0..) "); + } + } + var cur = for_node.payload_token; const pipe = std.mem.indexOfScalarPos(std.zig.Token.Tag, token_tags, cur, .pipe).?; if (token_tags[pipe - 1] == .comma) { diff --git a/src/AstGen.zig b/src/AstGen.zig index b90201713e..c39dcfc9ef 100644 --- a/src/AstGen.zig +++ b/src/AstGen.zig @@ -6302,6 +6302,23 @@ fn forExpr( const node_data = tree.nodes.items(.data); const gpa = astgen.gpa; + // TODO this can be deleted after zig 0.11.0 is released because it + // will be caught in the parser. + if (for_full.isOldSyntax(token_tags)) { + return astgen.failTokNotes( + for_full.payload_token + 2, + "extra capture in for loop", + .{}, + &[_]u32{ + try astgen.errNoteTok( + for_full.payload_token + 2, + "run 'zig fmt' to upgrade your code automatically", + .{}, + ), + }, + ); + } + // For counters, this is the start value; for indexables, this is the base // pointer that can be used with elem_ptr and similar instructions. // Special value `none` means that this is a counter and its start value is From 321ccbdc525ab0f5862e42378b962c10ec54e4a1 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Fri, 17 Feb 2023 19:54:26 -0700 Subject: [PATCH 12/36] Sema: implement for_len This also makes another breaking change to for loops: in order to capture a pointer of an element, one must take the address of array values. This simplifies a lot of things, and makes more sense than how it was before semantically. It is still legal to use a for loop on an array value if the corresponding element capture is byval instead of byref. --- lib/std/builtin.zig | 1 + src/AstGen.zig | 3 +- src/Sema.zig | 157 ++++++++++++++++++++++++++++++++++---------- src/type.zig | 13 ++++ 4 files changed, 136 insertions(+), 38 deletions(-) diff --git a/lib/std/builtin.zig b/lib/std/builtin.zig index 74c61d229b..869756fe5c 100644 --- a/lib/std/builtin.zig +++ b/lib/std/builtin.zig @@ -975,6 +975,7 @@ pub const panic_messages = struct { pub const unwrap_error = "attempt to unwrap error"; pub const index_out_of_bounds = "index out of bounds"; pub const start_index_greater_than_end = "start index is larger than end index"; + pub const for_len_mismatch = "for loop over objects with non-equal lengths"; }; pub noinline fn returnError(st: *StackTrace) void { diff --git a/src/AstGen.zig b/src/AstGen.zig index c39dcfc9ef..98883b0f8d 100644 --- a/src/AstGen.zig +++ b/src/AstGen.zig @@ -6381,11 +6381,10 @@ fn forExpr( lens[i] = range_len; } else { const indexable = try expr(parent_gz, scope, .{ .rl = .none }, input); - const indexable_len = try parent_gz.addUnNode(.indexable_ptr_len, indexable, input); any_len_checks = true; indexables[i] = indexable; - lens[i] = indexable_len; + lens[i] = indexable; } } } diff --git a/src/Sema.zig b/src/Sema.zig index cb40a85364..aeb4e25a24 100644 --- a/src/Sema.zig +++ b/src/Sema.zig @@ -3378,26 +3378,7 @@ fn zirIndexablePtrLen(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileE else object_ty; - if (!array_ty.isIndexable()) { - const msg = msg: { - const msg = try sema.errMsg( - block, - src, - "type '{}' does not support indexing", - .{array_ty.fmt(sema.mod)}, - ); - errdefer msg.destroy(sema.gpa); - try sema.errNote( - block, - src, - msg, - "for loop operand must be an array, slice, tuple, or vector", - .{}, - ); - break :msg msg; - }; - return sema.failWithOwnedErrorMsg(msg); - } + try checkIndexable(sema, block, src, array_ty); return sema.fieldVal(block, src, object, "len", src); } @@ -3921,13 +3902,70 @@ fn zirFieldBasePtr( } fn zirForLen(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air.Inst.Ref { + const gpa = sema.gpa; const inst_data = sema.code.instructions.items(.data)[inst].pl_node; const extra = sema.code.extraData(Zir.Inst.MultiOp, inst_data.payload_index); const args = sema.code.refSlice(extra.end, extra.data.operands_len); const src = inst_data.src(); - _ = args; - return sema.fail(block, src, "TODO implement zirForCheckLens", .{}); + var len: Air.Inst.Ref = .none; + var len_val: ?Value = null; + var len_idx: usize = undefined; + var any_runtime = false; + + const runtime_arg_lens = try gpa.alloc(Air.Inst.Ref, args.len); + defer gpa.free(runtime_arg_lens); + + // First pass to look for comptime values. + for (args) |zir_arg, i| { + runtime_arg_lens[i] = .none; + if (zir_arg == .none) continue; + const object = try sema.resolveInst(zir_arg); + const object_ty = sema.typeOf(object); + // Each arg could be an indexable, or a range, in which case the length + // is passed directly as an integer. + const arg_len = if (object_ty.zigTypeTag() == .Int) object else l: { + try checkIndexable(sema, block, src, object_ty); + if (!object_ty.indexableHasLen()) continue; + + break :l try sema.fieldVal(block, src, object, "len", src); + }; + if (len == .none) { + len = arg_len; + len_idx = i; + } + if (try sema.resolveDefinedValue(block, src, arg_len)) |arg_val| { + if (len_val) |v| { + if (!(try sema.valuesEqual(arg_val, v, Type.usize))) { + // TODO error notes for each arg stating the differing values + return sema.fail(block, src, "non-matching for loop lengths", .{}); + } + } else { + len = arg_len; + len_val = arg_val; + len_idx = i; + } + continue; + } + runtime_arg_lens[i] = arg_len; + any_runtime = true; + } + + if (len == .none) { + return sema.fail(block, src, "non-obvious infinite loop", .{}); + } + + // Now for the runtime checks. + if (any_runtime and block.wantSafety()) { + for (runtime_arg_lens) |arg_len, i| { + if (arg_len == .none) continue; + if (i == len_idx) continue; + const ok = try block.addBinOp(.cmp_eq, len, arg_len); + try sema.addSafetyCheck(block, ok, .for_len_mismatch); + } + } + + return len; } fn validateArrayInitTy( @@ -9655,7 +9693,7 @@ fn zirElemPtr(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air const extra = sema.code.extraData(Zir.Inst.Bin, inst_data.payload_index).data; const array_ptr = try sema.resolveInst(extra.lhs); const elem_index = try sema.resolveInst(extra.rhs); - return sema.elemPtr(block, src, array_ptr, elem_index, src, false); + return sema.elemPtrOneLayerOnly(block, src, array_ptr, elem_index, src, false); } fn zirElemPtrNode(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air.Inst.Ref { @@ -22687,6 +22725,7 @@ pub const PanicId = enum { unwrap_error, index_out_of_bounds, start_index_greater_than_end, + for_len_mismatch, }; fn addSafetyCheck( @@ -24076,21 +24115,46 @@ fn elemPtr( .Pointer => indexable_ptr_ty.elemType(), else => return sema.fail(block, indexable_ptr_src, "expected pointer, found '{}'", .{indexable_ptr_ty.fmt(sema.mod)}), }; + switch (indexable_ty.zigTypeTag()) { + .Array, .Vector => return sema.elemPtrArray(block, src, indexable_ptr_src, indexable_ptr, elem_index_src, elem_index, init), + .Struct => { + // Tuple field access. + const index_val = try sema.resolveConstValue(block, elem_index_src, elem_index, "tuple field access index must be comptime-known"); + const index = @intCast(u32, index_val.toUnsignedInt(target)); + return sema.tupleFieldPtr(block, src, indexable_ptr, elem_index_src, index, init); + }, + else => { + const indexable = try sema.analyzeLoad(block, indexable_ptr_src, indexable_ptr, indexable_ptr_src); + return elemPtrOneLayerOnly(sema, block, src, indexable, elem_index, elem_index_src, init); + }, + } +} + +fn elemPtrOneLayerOnly( + sema: *Sema, + block: *Block, + src: LazySrcLoc, + indexable: Air.Inst.Ref, + elem_index: Air.Inst.Ref, + elem_index_src: LazySrcLoc, + init: bool, +) CompileError!Air.Inst.Ref { + const indexable_src = src; // TODO better source location + const indexable_ty = sema.typeOf(indexable); if (!indexable_ty.isIndexable()) { return sema.fail(block, src, "element access of non-indexable type '{}'", .{indexable_ty.fmt(sema.mod)}); } + const target = sema.mod.getTarget(); switch (indexable_ty.zigTypeTag()) { .Pointer => { - // In all below cases, we have to deref the ptr operand to get the actual indexable pointer. - const indexable = try sema.analyzeLoad(block, indexable_ptr_src, indexable_ptr, indexable_ptr_src); switch (indexable_ty.ptrSize()) { - .Slice => return sema.elemPtrSlice(block, src, indexable_ptr_src, indexable, elem_index_src, elem_index), + .Slice => return sema.elemPtrSlice(block, src, indexable_src, indexable, elem_index_src, elem_index), .Many, .C => { - const maybe_ptr_val = try sema.resolveDefinedValue(block, indexable_ptr_src, indexable); + const maybe_ptr_val = try sema.resolveDefinedValue(block, indexable_src, indexable); const maybe_index_val = try sema.resolveDefinedValue(block, elem_index_src, elem_index); const runtime_src = rs: { - const ptr_val = maybe_ptr_val orelse break :rs indexable_ptr_src; + const ptr_val = maybe_ptr_val orelse break :rs indexable_src; const index_val = maybe_index_val orelse break :rs elem_index_src; const index = @intCast(usize, index_val.toUnsignedInt(target)); const elem_ptr = try ptr_val.elemPtr(indexable_ty, sema.arena, index, sema.mod); @@ -24104,18 +24168,16 @@ fn elemPtr( }, .One => { assert(indexable_ty.childType().zigTypeTag() == .Array); // Guaranteed by isIndexable - return sema.elemPtrArray(block, src, indexable_ptr_src, indexable, elem_index_src, elem_index, init); + return sema.elemPtrArray(block, src, indexable_src, indexable, elem_index_src, elem_index, init); }, } }, - .Array, .Vector => return sema.elemPtrArray(block, src, indexable_ptr_src, indexable_ptr, elem_index_src, elem_index, init), - .Struct => { - // Tuple field access. - const index_val = try sema.resolveConstValue(block, elem_index_src, elem_index, "tuple field access index must be comptime-known"); - const index = @intCast(u32, index_val.toUnsignedInt(target)); - return sema.tupleFieldPtr(block, src, indexable_ptr, elem_index_src, index, init); + else => { + // TODO add note pointing at corresponding for loop input and suggest using '&' + return sema.fail(block, indexable_src, "pointer capture of non pointer type '{}'", .{ + indexable_ty.fmt(sema.mod), + }); }, - else => unreachable, } } @@ -30202,6 +30264,29 @@ fn checkBackingIntType(sema: *Sema, block: *Block, src: LazySrcLoc, backing_int_ } } +fn checkIndexable(sema: *Sema, block: *Block, src: LazySrcLoc, array_ty: Type) !void { + if (!array_ty.isIndexable()) { + const msg = msg: { + const msg = try sema.errMsg( + block, + src, + "type '{}' does not support indexing", + .{array_ty.fmt(sema.mod)}, + ); + errdefer msg.destroy(sema.gpa); + try sema.errNote( + block, + src, + msg, + "for loop operand must be an array, slice, tuple, or vector", + .{}, + ); + break :msg msg; + }; + return sema.failWithOwnedErrorMsg(msg); + } +} + fn resolveUnionLayout(sema: *Sema, ty: Type) CompileError!void { const resolved_ty = try sema.resolveTypeFields(ty); const union_obj = resolved_ty.cast(Type.Payload.Union).?.data; diff --git a/src/type.zig b/src/type.zig index a13e30cb4c..6226a7f2f7 100644 --- a/src/type.zig +++ b/src/type.zig @@ -5326,6 +5326,19 @@ pub const Type = extern union { }; } + pub fn indexableHasLen(ty: Type) bool { + return switch (ty.zigTypeTag()) { + .Array, .Vector => true, + .Pointer => switch (ty.ptrSize()) { + .Many, .C => false, + .Slice => true, + .One => ty.elemType().zigTypeTag() == .Array, + }, + .Struct => ty.isTuple(), + else => false, + }; + } + /// Returns null if the type has no namespace. pub fn getNamespace(self: Type) ?*Module.Namespace { return switch (self.tag()) { From f0530385b57218ef323747bdb7438330a07d25cc Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Fri, 17 Feb 2023 20:23:33 -0700 Subject: [PATCH 13/36] update existing behavior tests and std lib to new for loop semantics --- lib/std/crypto/blake3.zig | 2 +- test/behavior/array.zig | 2 +- test/behavior/bit_shifting.zig | 4 ++-- test/behavior/bugs/1607.zig | 2 +- test/behavior/bugs/920.zig | 6 +++--- test/behavior/call.zig | 2 +- test/behavior/const_slice_child.zig | 4 ++-- test/behavior/eval.zig | 6 +++--- test/behavior/fn.zig | 2 +- test/behavior/for.zig | 20 ++++++++++---------- test/behavior/generics.zig | 2 +- test/behavior/lower_strlit_to_vector.zig | 2 +- test/behavior/math.zig | 2 +- test/behavior/slice.zig | 4 ++-- test/behavior/tuple.zig | 2 +- test/behavior/vector.zig | 22 +++++++++++----------- test/behavior/void.zig | 2 +- test/standalone/brace_expansion/main.zig | 4 ++-- test/tests.zig | 2 +- 19 files changed, 46 insertions(+), 46 deletions(-) diff --git a/lib/std/crypto/blake3.zig b/lib/std/crypto/blake3.zig index 4f8d023532..0334abfdb0 100644 --- a/lib/std/crypto/blake3.zig +++ b/lib/std/crypto/blake3.zig @@ -211,7 +211,7 @@ fn first8Words(words: [16]u32) [8]u32 { fn wordsFromLittleEndianBytes(comptime count: usize, bytes: [count * 4]u8) [count]u32 { var words: [count]u32 = undefined; - for (words) |*word, i| { + for (&words) |*word, i| { word.* = mem.readIntSliceLittle(u32, bytes[4 * i ..]); } return words; diff --git a/test/behavior/array.zig b/test/behavior/array.zig index 012e078531..a5ecd6f115 100644 --- a/test/behavior/array.zig +++ b/test/behavior/array.zig @@ -185,7 +185,7 @@ test "nested arrays of strings" { if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO const array_of_strings = [_][]const u8{ "hello", "this", "is", "my", "thing" }; - for (array_of_strings) |s, i| { + for (array_of_strings, 0..) |s, i| { if (i == 0) try expect(mem.eql(u8, s, "hello")); if (i == 1) try expect(mem.eql(u8, s, "this")); if (i == 2) try expect(mem.eql(u8, s, "is")); diff --git a/test/behavior/bit_shifting.zig b/test/behavior/bit_shifting.zig index 9289badb1f..97186eb54a 100644 --- a/test/behavior/bit_shifting.zig +++ b/test/behavior/bit_shifting.zig @@ -84,14 +84,14 @@ fn testShardedTable(comptime Key: type, comptime mask_bit_count: comptime_int, c var table = Table.create(); var node_buffer: [node_count]Table.Node = undefined; - for (node_buffer) |*node, i| { + for (&node_buffer, 0..) |*node, i| { const key = @intCast(Key, i); try expect(table.get(key) == null); node.init(key, {}); table.put(node); } - for (node_buffer) |*node, i| { + for (&node_buffer, 0..) |*node, i| { try expect(table.get(@intCast(Key, i)) == node); } } diff --git a/test/behavior/bugs/1607.zig b/test/behavior/bugs/1607.zig index f857e19c04..d9e97e37b7 100644 --- a/test/behavior/bugs/1607.zig +++ b/test/behavior/bugs/1607.zig @@ -5,7 +5,7 @@ const builtin = @import("builtin"); const a = [_]u8{ 1, 2, 3 }; fn checkAddress(s: []const u8) !void { - for (s) |*i, j| { + for (s, 0..) |*i, j| { try testing.expect(i == &a[j]); } } diff --git a/test/behavior/bugs/920.zig b/test/behavior/bugs/920.zig index cda02c4670..b1c9bc07a3 100644 --- a/test/behavior/bugs/920.zig +++ b/test/behavior/bugs/920.zig @@ -23,13 +23,13 @@ fn ZigTableGen(comptime is_symmetric: bool, comptime r: f64, comptime v: f64, co tables.x[0] = v / f(r); tables.x[1] = r; - for (tables.x[2..256]) |*entry, i| { + for (tables.x[2..256], 0..) |*entry, i| { const last = tables.x[2 + i - 1]; entry.* = f_inv(v / last + f(last)); } tables.x[256] = 0; - for (tables.f[0..]) |*entry, i| { + for (tables.f[0..], 0..) |*entry, i| { entry.* = f(tables.x[i]); } @@ -67,7 +67,7 @@ test "bug 920 fixed" { break :blk ZigTableGen(true, norm_r, norm_v, norm_f, norm_f_inv, norm_zero_case); }; - for (NormalDist1.f) |_, i| { + for (NormalDist1.f, 0..) |_, i| { // Here we use `expectApproxEqAbs` instead of `expectEqual` to account for the small // differences in math functions of different libcs. For example, if the compiler // links against glibc, but the target is musl libc, then these values might be diff --git a/test/behavior/call.zig b/test/behavior/call.zig index 4cdd54584f..9622aa3144 100644 --- a/test/behavior/call.zig +++ b/test/behavior/call.zig @@ -364,7 +364,7 @@ test "Enum constructed by @Type passed as generic argument" { try expect(@enumToInt(a) == b); } }; - inline for (@typeInfo(S.E).Enum.fields) |_, i| { + inline for (@typeInfo(S.E).Enum.fields, 0..) |_, i| { try S.foo(@intToEnum(S.E, i), i); } } diff --git a/test/behavior/const_slice_child.zig b/test/behavior/const_slice_child.zig index c8711777b3..09c6a7233d 100644 --- a/test/behavior/const_slice_child.zig +++ b/test/behavior/const_slice_child.zig @@ -26,7 +26,7 @@ fn foo(args: [][]const u8) !void { fn bar(argc: usize) !void { var args_buffer: [10][]const u8 = undefined; const args = args_buffer[0..argc]; - for (args) |_, i| { + for (args, 0..) |_, i| { const ptr = argv[i]; args[i] = ptr[0..strlen(ptr)]; } @@ -41,7 +41,7 @@ fn strlen(ptr: [*]const u8) usize { fn streql(a: []const u8, b: []const u8) bool { if (a.len != b.len) return false; - for (a) |item, index| { + for (a, 0..) |item, index| { if (b[index] != item) return false; } return true; diff --git a/test/behavior/eval.zig b/test/behavior/eval.zig index 2a1f2b7155..680b0576d5 100644 --- a/test/behavior/eval.zig +++ b/test/behavior/eval.zig @@ -317,7 +317,7 @@ test "create global array with for loop" { const global_array = x: { var result: [10]usize = undefined; - for (result) |*item, index| { + for (&result, 0..) |*item, index| { item.* = index * index; } break :x result; @@ -447,7 +447,7 @@ test "binary math operator in partially inlined function" { var s: [4]u32 = undefined; var b: [16]u8 = undefined; - for (b) |*r, i| + for (&b, 0..) |*r, i| r.* = @intCast(u8, i + 1); copyWithPartialInline(s[0..], b[0..]); @@ -915,7 +915,7 @@ test "comptime pointer load through elem_ptr" { comptime { var array: [10]S = undefined; - for (array) |*elem, i| { + for (&array, 0..) |*elem, i| { elem.* = .{ .x = i, }; diff --git a/test/behavior/fn.zig b/test/behavior/fn.zig index d5f959e507..9c37b9a8d9 100644 --- a/test/behavior/fn.zig +++ b/test/behavior/fn.zig @@ -311,7 +311,7 @@ test "function pointers" { &fn3, &fn4, }; - for (fns) |f, i| { + for (fns, 0..) |f, i| { try expect(f() == @intCast(u32, i) + 5); } } diff --git a/test/behavior/for.zig b/test/behavior/for.zig index f48000a871..c9ae2f4461 100644 --- a/test/behavior/for.zig +++ b/test/behavior/for.zig @@ -55,9 +55,9 @@ fn testContinueOuter() !void { } test "ignore lval with underscore (for loop)" { - for ([_]void{}) |_, i| { + for ([_]void{}, 0..) |_, i| { _ = i; - for ([_]void{}) |_, j| { + for ([_]void{}, 0..) |_, j| { _ = j; break; } @@ -81,7 +81,7 @@ test "basic for loop" { buffer[buf_index] = item; buf_index += 1; } - for (array) |item, index| { + for (array, 0..) |item, index| { _ = item; buffer[buf_index] = @intCast(u8, index); buf_index += 1; @@ -91,7 +91,7 @@ test "basic for loop" { buffer[buf_index] = item; buf_index += 1; } - for (array_ptr) |item, index| { + for (array_ptr, 0..) |item, index| { _ = item; buffer[buf_index] = @intCast(u8, index); buf_index += 1; @@ -101,7 +101,7 @@ test "basic for loop" { buffer[buf_index] = item; buf_index += 1; } - for (unknown_size) |_, index| { + for (unknown_size, 0..) |_, index| { buffer[buf_index] = @intCast(u8, index); buf_index += 1; } @@ -163,11 +163,11 @@ test "for loop with pointer elem var" { mangleString(target[0..]); try expect(mem.eql(u8, &target, "bcdefgh")); - for (source) |*c, i| { + for (source, 0..) |*c, i| { _ = i; try expect(@TypeOf(c) == *const u8); } - for (target) |*c, i| { + for (&target, 0..) |*c, i| { _ = i; try expect(@TypeOf(c) == *u8); } @@ -186,7 +186,7 @@ test "for copies its payload" { const S = struct { fn doTheTest() !void { var x = [_]usize{ 1, 2, 3 }; - for (x) |value, i| { + for (x, 0..) |value, i| { // Modify the original array x[i] += 99; try expect(value == i + 1); @@ -206,8 +206,8 @@ test "for on slice with allowzero ptr" { const S = struct { fn doTheTest(slice: []const u8) !void { var ptr = @ptrCast([*]allowzero const u8, slice.ptr)[0..slice.len]; - for (ptr) |x, i| try expect(x == i + 1); - for (ptr) |*x, i| try expect(x.* == i + 1); + for (ptr, 0..) |x, i| try expect(x == i + 1); + for (ptr, 0..) |*x, i| try expect(x.* == i + 1); } }; try S.doTheTest(&[_]u8{ 1, 2, 3, 4 }); diff --git a/test/behavior/generics.zig b/test/behavior/generics.zig index 17194fc445..205823430c 100644 --- a/test/behavior/generics.zig +++ b/test/behavior/generics.zig @@ -325,7 +325,7 @@ test "generic function instantiation non-duplicates" { const S = struct { fn copy(comptime T: type, dest: []T, source: []const T) void { @export(foo, .{ .name = "test_generic_instantiation_non_dupe" }); - for (source) |s, i| dest[i] = s; + for (source, 0..) |s, i| dest[i] = s; } fn foo() callconv(.C) void {} diff --git a/test/behavior/lower_strlit_to_vector.zig b/test/behavior/lower_strlit_to_vector.zig index 4ca4cf716e..adbca8f0df 100644 --- a/test/behavior/lower_strlit_to_vector.zig +++ b/test/behavior/lower_strlit_to_vector.zig @@ -12,7 +12,7 @@ test "strlit to vector" { const strlit = "0123456789abcdef0123456789ABCDEF"; const vec_from_strlit: @Vector(32, u8) = strlit.*; const arr_from_vec = @as([32]u8, vec_from_strlit); - for (strlit) |c, i| + for (strlit, 0..) |c, i| try std.testing.expect(c == arr_from_vec[i]); try std.testing.expectEqualSlices(u8, strlit, &arr_from_vec); } diff --git a/test/behavior/math.zig b/test/behavior/math.zig index c5e36da383..8ab8614605 100644 --- a/test/behavior/math.zig +++ b/test/behavior/math.zig @@ -1221,7 +1221,7 @@ test "quad hex float literal parsing accurate" { 0xb6a0000000000000, }; - for (exp2ft) |x, i| { + for (exp2ft, 0..) |x, i| { try expect(@bitCast(u64, x) == answers[i]); } } diff --git a/test/behavior/slice.zig b/test/behavior/slice.zig index 76cadc8d84..435e1887bb 100644 --- a/test/behavior/slice.zig +++ b/test/behavior/slice.zig @@ -99,7 +99,7 @@ test "comptime slice of slice preserves comptime var" { test "slice of type" { comptime { var types_array = [_]type{ i32, f64, type }; - for (types_array) |T, i| { + for (types_array, 0..) |T, i| { switch (i) { 0 => try expect(T == i32), 1 => try expect(T == f64), @@ -107,7 +107,7 @@ test "slice of type" { else => unreachable, } } - for (types_array[0..]) |T, i| { + for (types_array[0..], 0..) |T, i| { switch (i) { 0 => try expect(T == i32), 1 => try expect(T == f64), diff --git a/test/behavior/tuple.zig b/test/behavior/tuple.zig index f1c15fb3e3..13b02b40e8 100644 --- a/test/behavior/tuple.zig +++ b/test/behavior/tuple.zig @@ -40,7 +40,7 @@ test "tuple multiplication" { { const t = .{ 1, 2, 3 } ** 4; try expect(@typeInfo(@TypeOf(t)).Struct.fields.len == 12); - inline for (t) |x, i| try expect(x == 1 + i % 3); + inline for (t, 0..) |x, i| try expect(x == 1 + i % 3); } } }; diff --git a/test/behavior/vector.zig b/test/behavior/vector.zig index 8bcae5fefc..e983e0cfb0 100644 --- a/test/behavior/vector.zig +++ b/test/behavior/vector.zig @@ -456,20 +456,20 @@ test "vector division operators" { fn doTheTestDiv(comptime T: type, x: @Vector(4, T), y: @Vector(4, T)) !void { if (!comptime std.meta.trait.isSignedInt(T)) { const d0 = x / y; - for (@as([4]T, d0)) |v, i| { + for (@as([4]T, d0), 0..) |v, i| { try expect(x[i] / y[i] == v); } } const d1 = @divExact(x, y); - for (@as([4]T, d1)) |v, i| { + for (@as([4]T, d1), 0..) |v, i| { try expect(@divExact(x[i], y[i]) == v); } const d2 = @divFloor(x, y); - for (@as([4]T, d2)) |v, i| { + for (@as([4]T, d2), 0..) |v, i| { try expect(@divFloor(x[i], y[i]) == v); } const d3 = @divTrunc(x, y); - for (@as([4]T, d3)) |v, i| { + for (@as([4]T, d3), 0..) |v, i| { try expect(@divTrunc(x[i], y[i]) == v); } } @@ -477,16 +477,16 @@ test "vector division operators" { fn doTheTestMod(comptime T: type, x: @Vector(4, T), y: @Vector(4, T)) !void { if ((!comptime std.meta.trait.isSignedInt(T)) and @typeInfo(T) != .Float) { const r0 = x % y; - for (@as([4]T, r0)) |v, i| { + for (@as([4]T, r0), 0..) |v, i| { try expect(x[i] % y[i] == v); } } const r1 = @mod(x, y); - for (@as([4]T, r1)) |v, i| { + for (@as([4]T, r1), 0..) |v, i| { try expect(@mod(x[i], y[i]) == v); } const r2 = @rem(x, y); - for (@as([4]T, r2)) |v, i| { + for (@as([4]T, r2), 0..) |v, i| { try expect(@rem(x[i], y[i]) == v); } } @@ -538,7 +538,7 @@ test "vector bitwise not operator" { const S = struct { fn doTheTestNot(comptime T: type, x: @Vector(4, T)) !void { var y = ~x; - for (@as([4]T, y)) |v, i| { + for (@as([4]T, y), 0..) |v, i| { try expect(~x[i] == v); } } @@ -577,11 +577,11 @@ test "vector shift operators" { var yv = @as(@Vector(N, TY), y); var z0 = xv >> yv; - for (@as([N]TX, z0)) |v, i| { + for (@as([N]TX, z0), 0..) |v, i| { try expect(x[i] >> y[i] == v); } var z1 = xv << yv; - for (@as([N]TX, z1)) |v, i| { + for (@as([N]TX, z1), 0..) |v, i| { try expect(x[i] << y[i] == v); } } @@ -594,7 +594,7 @@ test "vector shift operators" { var yv = @as(@Vector(N, TY), y); var z = if (dir == .Left) @shlExact(xv, yv) else @shrExact(xv, yv); - for (@as([N]TX, z)) |v, i| { + for (@as([N]TX, z), 0..) |v, i| { const check = if (dir == .Left) x[i] << y[i] else x[i] >> y[i]; try expect(check == v); } diff --git a/test/behavior/void.zig b/test/behavior/void.zig index 85a9178145..9b6c05d07d 100644 --- a/test/behavior/void.zig +++ b/test/behavior/void.zig @@ -22,7 +22,7 @@ test "iterate over a void slice" { if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO var j: usize = 0; - for (times(10)) |_, i| { + for (times(10), 0..) |_, i| { try expect(i == j); j += 1; } diff --git a/test/standalone/brace_expansion/main.zig b/test/standalone/brace_expansion/main.zig index 54590c65b2..dcdcad3865 100644 --- a/test/standalone/brace_expansion/main.zig +++ b/test/standalone/brace_expansion/main.zig @@ -29,7 +29,7 @@ fn tokenize(input: []const u8) !ArrayList(Token) { var tok_begin: usize = undefined; var state = State.Start; - for (input) |b, i| { + for (input, 0..) |b, i| { switch (state) { .Start => switch (b) { 'a'...'z', 'A'...'Z' => { @@ -159,7 +159,7 @@ fn expandString(input: []const u8, output: *ArrayList(u8)) !void { try expandNode(root, &result_list); try output.resize(0); - for (result_list.items) |buf, i| { + for (result_list.items, 0..) |buf, i| { if (i != 0) { try output.append(' '); } diff --git a/test/tests.zig b/test/tests.zig index d3ebe5a046..035311372f 100644 --- a/test/tests.zig +++ b/test/tests.zig @@ -958,7 +958,7 @@ pub const StackTracesContext = struct { // locate delims/anchor const delims = [_][]const u8{ ":", ":", ":", " in ", "(", ")" }; var marks = [_]usize{0} ** delims.len; - for (delims) |delim, i| { + for (delims, 0..) |delim, i| { marks[i] = mem.indexOfPos(u8, line, pos, delim) orelse { // unexpected pattern: emit raw line and cont try buf.appendSlice(line); From aeaef8c0ffadab4145fd002f2edd87a6db66ebd1 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Sat, 18 Feb 2023 09:02:57 -0700 Subject: [PATCH 14/36] update std lib and compiler sources to new for loop syntax --- lib/compiler_rt/atomics.zig | 2 +- lib/compiler_rt/comparedf2_test.zig | 4 +- lib/compiler_rt/comparesf2_test.zig | 4 +- lib/std/Build.zig | 8 +- lib/std/Build/CompileStep.zig | 8 +- lib/std/Build/ConfigHeaderStep.zig | 4 +- lib/std/Build/FmtStep.zig | 2 +- lib/std/Thread/Condition.zig | 12 +- lib/std/Thread/Futex.zig | 6 +- lib/std/Thread/Mutex.zig | 6 +- lib/std/Thread/ResetEvent.zig | 2 +- lib/std/Thread/RwLock.zig | 2 +- lib/std/Thread/Semaphore.zig | 2 +- lib/std/array_hash_map.zig | 20 +- lib/std/array_list.zig | 10 +- lib/std/ascii.zig | 6 +- lib/std/atomic/Atomic.zig | 12 +- lib/std/atomic/queue.zig | 4 +- lib/std/atomic/stack.zig | 4 +- lib/std/base64.zig | 6 +- lib/std/bit_set.zig | 16 +- lib/std/bounded_array.zig | 4 +- lib/std/child_process.zig | 6 +- lib/std/coff.zig | 2 +- lib/std/compress/deflate/compressor.zig | 10 +- lib/std/compress/deflate/compressor_test.zig | 8 +- lib/std/compress/deflate/decompressor.zig | 4 +- lib/std/compress/deflate/deflate_fast.zig | 10 +- .../compress/deflate/deflate_fast_test.zig | 2 +- lib/std/compress/deflate/dict_decoder.zig | 2 +- .../compress/deflate/huffman_bit_writer.zig | 12 +- lib/std/compress/deflate/huffman_code.zig | 10 +- lib/std/compress/lzma/decode.zig | 2 +- lib/std/compress/lzma/decode/rangecoder.zig | 4 +- lib/std/comptime_string_map.zig | 2 +- lib/std/crypto/25519/ed25519.zig | 10 +- lib/std/crypto/25519/edwards25519.zig | 8 +- lib/std/crypto/Certificate.zig | 2 +- lib/std/crypto/aegis.zig | 6 +- lib/std/crypto/aes.zig | 8 +- lib/std/crypto/aes/aesni.zig | 4 +- lib/std/crypto/aes/armcrypto.zig | 4 +- lib/std/crypto/aes/soft.zig | 2 +- lib/std/crypto/aes_gcm.zig | 6 +- lib/std/crypto/aes_ocb.zig | 8 +- lib/std/crypto/argon2.zig | 14 +- lib/std/crypto/ascon.zig | 2 +- lib/std/crypto/bcrypt.zig | 4 +- lib/std/crypto/blake2.zig | 12 +- lib/std/crypto/blake3.zig | 6 +- lib/std/crypto/chacha20.zig | 6 +- lib/std/crypto/cmac.zig | 8 +- lib/std/crypto/ghash_polyval.zig | 4 +- lib/std/crypto/gimli.zig | 16 +- lib/std/crypto/hmac.zig | 4 +- lib/std/crypto/md5.zig | 2 +- lib/std/crypto/pbkdf2.zig | 2 +- lib/std/crypto/pcurves/common.zig | 2 +- lib/std/crypto/pcurves/p256.zig | 2 +- lib/std/crypto/pcurves/p256/scalar.zig | 2 +- lib/std/crypto/pcurves/p384.zig | 2 +- lib/std/crypto/pcurves/p384/scalar.zig | 2 +- lib/std/crypto/pcurves/secp256k1.zig | 2 +- lib/std/crypto/pcurves/secp256k1/scalar.zig | 2 +- lib/std/crypto/poly1305.zig | 4 +- lib/std/crypto/salsa20.zig | 8 +- lib/std/crypto/scrypt.zig | 14 +- lib/std/crypto/sha1.zig | 2 +- lib/std/crypto/sha2.zig | 6 +- lib/std/crypto/sha3.zig | 8 +- lib/std/crypto/siphash.zig | 6 +- lib/std/crypto/test.zig | 2 +- lib/std/crypto/tls.zig | 2 +- lib/std/crypto/utils.zig | 4 +- lib/std/crypto/xoodoo.zig | 2 +- lib/std/debug.zig | 10 +- lib/std/dwarf.zig | 2 +- lib/std/enums.zig | 4 +- lib/std/event/loop.zig | 4 +- lib/std/fmt.zig | 10 +- lib/std/fmt/parse_float/decimal.zig | 2 +- lib/std/fs/path.zig | 6 +- lib/std/fs/wasi.zig | 2 +- lib/std/hash/crc.zig | 6 +- lib/std/hash/wyhash.zig | 2 +- lib/std/hash_map.zig | 4 +- lib/std/heap.zig | 4 +- lib/std/heap/WasmPageAllocator.zig | 2 +- lib/std/heap/general_purpose_allocator.zig | 2 +- lib/std/json.zig | 12 +- lib/std/json/test.zig | 2 +- lib/std/math/big/int.zig | 14 +- lib/std/math/big/rational.zig | 2 +- lib/std/mem.zig | 24 +-- lib/std/meta.zig | 28 +-- lib/std/meta/trailer_flags.zig | 10 +- lib/std/multi_array_list.zig | 26 +-- lib/std/net.zig | 14 +- lib/std/net/test.zig | 2 +- lib/std/once.zig | 2 +- lib/std/os/linux.zig | 2 +- .../uefi/protocols/device_path_protocol.zig | 2 +- lib/std/os/windows.zig | 2 +- lib/std/packed_int_array.zig | 2 +- lib/std/pdb.zig | 2 +- lib/std/priority_dequeue.zig | 2 +- lib/std/priority_queue.zig | 2 +- lib/std/process.zig | 4 +- lib/std/rand.zig | 2 +- lib/std/rand/ziggurat.zig | 4 +- lib/std/simd.zig | 2 +- lib/std/sort.zig | 10 +- lib/std/target.zig | 8 +- lib/std/target/aarch64.zig | 2 +- lib/std/target/amdgpu.zig | 2 +- lib/std/target/arc.zig | 2 +- lib/std/target/arm.zig | 2 +- lib/std/target/avr.zig | 2 +- lib/std/target/bpf.zig | 2 +- lib/std/target/csky.zig | 2 +- lib/std/target/hexagon.zig | 2 +- lib/std/target/m68k.zig | 2 +- lib/std/target/mips.zig | 2 +- lib/std/target/msp430.zig | 2 +- lib/std/target/nvptx.zig | 2 +- lib/std/target/powerpc.zig | 2 +- lib/std/target/riscv.zig | 2 +- lib/std/target/s390x.zig | 2 +- lib/std/target/sparc.zig | 2 +- lib/std/target/spirv.zig | 2 +- lib/std/target/ve.zig | 2 +- lib/std/target/wasm.zig | 2 +- lib/std/target/x86.zig | 2 +- lib/std/testing.zig | 8 +- lib/std/wasm.zig | 4 +- lib/std/zig/Ast.zig | 6 +- lib/std/zig/CrossTarget.zig | 2 +- lib/std/zig/fmt.zig | 2 +- lib/std/zig/parser_test.zig | 2 +- lib/std/zig/render.zig | 22 +-- lib/std/zig/system/NativeTargetInfo.zig | 2 +- lib/std/zig/system/linux.zig | 2 +- lib/std/zig/system/windows.zig | 6 +- lib/test_runner.zig | 2 +- src/AstGen.zig | 16 +- src/Autodoc.zig | 16 +- src/Compilation.zig | 22 +-- src/Liveness.zig | 8 +- src/Manifest.zig | 2 +- src/Module.zig | 14 +- src/Package.zig | 2 +- src/RangeSet.zig | 2 +- src/Sema.zig | 182 +++++++++--------- src/arch/aarch64/CodeGen.zig | 26 +-- src/arch/aarch64/Emit.zig | 6 +- src/arch/arm/CodeGen.zig | 26 +-- src/arch/arm/Emit.zig | 6 +- src/arch/arm/bits.zig | 4 +- src/arch/riscv64/CodeGen.zig | 4 +- src/arch/riscv64/Emit.zig | 2 +- src/arch/sparc64/CodeGen.zig | 8 +- src/arch/sparc64/Emit.zig | 6 +- src/arch/wasm/CodeGen.zig | 18 +- src/arch/wasm/Emit.zig | 2 +- src/arch/x86_64/CodeGen.zig | 20 +- src/arch/x86_64/Emit.zig | 4 +- src/arch/x86_64/Mir.zig | 2 +- src/arch/x86_64/abi.zig | 10 +- src/codegen.zig | 4 +- src/codegen/c.zig | 52 ++--- src/codegen/llvm.zig | 60 +++--- src/codegen/spirv.zig | 4 +- src/codegen/spirv/Assembler.zig | 2 +- src/codegen/spirv/Module.zig | 4 +- src/codegen/spirv/Section.zig | 2 +- src/codegen/spirv/type.zig | 2 +- src/glibc.zig | 6 +- src/libc_installation.zig | 6 +- src/libunwind.zig | 2 +- src/link/Coff.zig | 6 +- src/link/Dwarf.zig | 10 +- src/link/Elf.zig | 18 +- src/link/MachO.zig | 36 ++-- src/link/MachO/DebugSymbols.zig | 8 +- src/link/MachO/Dylib.zig | 2 +- src/link/MachO/Object.zig | 14 +- src/link/MachO/UnwindInfo.zig | 16 +- src/link/MachO/dead_strip.zig | 2 +- src/link/MachO/dyld_info/Rebase.zig | 2 +- src/link/MachO/dyld_info/bind.zig | 2 +- src/link/MachO/eh_frame.zig | 8 +- src/link/MachO/thunks.zig | 2 +- src/link/MachO/zld.zig | 62 +++--- src/link/SpirV.zig | 4 +- src/link/Wasm.zig | 20 +- src/link/Wasm/Object.zig | 4 +- src/link/tapi.zig | 4 +- src/link/tapi/yaml.zig | 14 +- src/main.zig | 6 +- src/mingw.zig | 4 +- src/objcopy.zig | 2 +- src/print_air.zig | 16 +- src/print_targets.zig | 4 +- src/print_zir.zig | 16 +- src/register_manager.zig | 6 +- src/test.zig | 10 +- src/translate_c.zig | 14 +- src/translate_c/ast.zig | 22 +-- src/type.zig | 64 +++--- src/value.zig | 112 +++++------ tools/gen_spirv_spec.zig | 18 +- tools/gen_stubs.zig | 18 +- tools/update_clang_options.zig | 2 +- tools/update_cpu_features.zig | 4 +- tools/update_crc_catalog.zig | 2 +- tools/update_spirv_features.zig | 4 +- 216 files changed, 938 insertions(+), 938 deletions(-) diff --git a/lib/compiler_rt/atomics.zig b/lib/compiler_rt/atomics.zig index 4db6176dc0..5e25634f9d 100644 --- a/lib/compiler_rt/atomics.zig +++ b/lib/compiler_rt/atomics.zig @@ -151,7 +151,7 @@ fn __atomic_compare_exchange( _ = failure; var sl = spinlocks.get(@ptrToInt(ptr)); defer sl.release(); - for (ptr[0..size]) |b, i| { + for (ptr[0..size], 0..) |b, i| { if (expected[i] != b) break; } else { // The two objects, ptr and expected, are equal diff --git a/lib/compiler_rt/comparedf2_test.zig b/lib/compiler_rt/comparedf2_test.zig index a77718e57c..9444c6adf7 100644 --- a/lib/compiler_rt/comparedf2_test.zig +++ b/lib/compiler_rt/comparedf2_test.zig @@ -94,8 +94,8 @@ fn generateVector(comptime a: f64, comptime b: f64) TestVector { const test_vectors = init: { @setEvalBranchQuota(10000); var vectors: [arguments.len * arguments.len]TestVector = undefined; - for (arguments[0..]) |arg_i, i| { - for (arguments[0..]) |arg_j, j| { + for (arguments[0..], 0..) |arg_i, i| { + for (arguments[0..], 0..) |arg_j, j| { vectors[(i * arguments.len) + j] = generateVector(arg_i, arg_j); } } diff --git a/lib/compiler_rt/comparesf2_test.zig b/lib/compiler_rt/comparesf2_test.zig index b2fafd38dd..40b1324cfa 100644 --- a/lib/compiler_rt/comparesf2_test.zig +++ b/lib/compiler_rt/comparesf2_test.zig @@ -94,8 +94,8 @@ fn generateVector(comptime a: f32, comptime b: f32) TestVector { const test_vectors = init: { @setEvalBranchQuota(10000); var vectors: [arguments.len * arguments.len]TestVector = undefined; - for (arguments[0..]) |arg_i, i| { - for (arguments[0..]) |arg_j, j| { + for (arguments[0..], 0..) |arg_i, i| { + for (arguments[0..], 0..) |arg_j, j| { vectors[(i * arguments.len) + j] = generateVector(arg_i, arg_j); } } diff --git a/lib/std/Build.zig b/lib/std/Build.zig index a375b45454..678120847f 100644 --- a/lib/std/Build.zig +++ b/lib/std/Build.zig @@ -650,7 +650,7 @@ pub fn dupe(self: *Build, bytes: []const u8) []u8 { /// Duplicates an array of strings without the need to handle out of memory. pub fn dupeStrings(self: *Build, strings: []const []const u8) [][]u8 { const array = self.allocator.alloc([]u8, strings.len) catch @panic("OOM"); - for (strings) |s, i| { + for (strings, 0..) |s, i| { array[i] = self.dupe(s); } return array; @@ -1051,7 +1051,7 @@ pub fn standardTargetOptions(self: *Build, args: StandardTargetOptionsArgs) Cros const all_features = whitelist_cpu.arch.allFeaturesList(); var populated_cpu_features = whitelist_cpu.model.features; populated_cpu_features.populateDependencies(all_features); - for (all_features) |feature, i_usize| { + for (all_features, 0..) |feature, i_usize| { const i = @intCast(std.Target.Cpu.Feature.Set.Index, i_usize); const in_cpu_set = populated_cpu_features.isEnabled(i); if (in_cpu_set) { @@ -1059,7 +1059,7 @@ pub fn standardTargetOptions(self: *Build, args: StandardTargetOptionsArgs) Cros } } log.err(" Remove: ", .{}); - for (all_features) |feature, i_usize| { + for (all_features, 0..) |feature, i_usize| { const i = @intCast(std.Target.Cpu.Feature.Set.Index, i_usize); const in_cpu_set = populated_cpu_features.isEnabled(i); const in_actual_set = selected_cpu.features.isEnabled(i); @@ -1748,7 +1748,7 @@ pub fn serializeCpu(allocator: Allocator, cpu: std.Target.Cpu) ![]const u8 { var mcpu_buffer = ArrayList(u8).init(allocator); try mcpu_buffer.appendSlice(cpu.model.name); - for (all_features) |feature, i_usize| { + for (all_features, 0..) |feature, i_usize| { const i = @intCast(std.Target.Cpu.Feature.Set.Index, i_usize); const in_cpu_set = populated_cpu_features.isEnabled(i); const in_actual_set = cpu.features.isEnabled(i); diff --git a/lib/std/Build/CompileStep.zig b/lib/std/Build/CompileStep.zig index 1f145f8171..a916de0fc6 100644 --- a/lib/std/Build/CompileStep.zig +++ b/lib/std/Build/CompileStep.zig @@ -1016,7 +1016,7 @@ pub fn addVcpkgPaths(self: *CompileStep, linkage: CompileStep.Linkage) !void { pub fn setExecCmd(self: *CompileStep, args: []const ?[]const u8) void { assert(self.kind == .@"test"); const duped_args = self.builder.allocator.alloc(?[]u8, args.len) catch @panic("OOM"); - for (args) |arg, i| { + for (args, 0..) |arg, i| { duped_args[i] = if (arg) |a| self.builder.dupe(a) else null; } self.exec_cmd_args = duped_args; @@ -1040,7 +1040,7 @@ fn appendModuleArgs( { const keys = module.dependencies.keys(); - for (module.dependencies.values()) |sub_module, i| { + for (module.dependencies.values(), 0..) |sub_module, i| { const sub_name = keys[i]; try cs.appendModuleArgs(zig_args, sub_name, sub_module); } @@ -1575,7 +1575,7 @@ fn make(step: *Step) !void { { const keys = self.modules.keys(); - for (self.modules.values()) |module, i| { + for (self.modules.values(), 0..) |module, i| { const name = keys[i]; try self.appendModuleArgs(&zig_args, name, module); } @@ -1750,7 +1750,7 @@ fn make(step: *Step) !void { const args_to_escape = zig_args.items[2..]; var escaped_args = try ArrayList([]const u8).initCapacity(builder.allocator, args_to_escape.len); arg_blk: for (args_to_escape) |arg| { - for (arg) |c, arg_idx| { + for (arg, 0..) |c, arg_idx| { if (c == '\\' or c == '"') { // Slow path for arguments that need to be escaped. We'll need to allocate and copy var escaped = try ArrayList(u8).initCapacity(builder.allocator, arg.len + 1); diff --git a/lib/std/Build/ConfigHeaderStep.zig b/lib/std/Build/ConfigHeaderStep.zig index f8d6f7bd57..595c1018f7 100644 --- a/lib/std/Build/ConfigHeaderStep.zig +++ b/lib/std/Build/ConfigHeaderStep.zig @@ -350,7 +350,7 @@ fn render_blank( try output.appendSlice("\n"); const values = defines.values(); - for (defines.keys()) |name, i| { + for (defines.keys(), 0..) |name, i| { try renderValueC(output, name, values[i]); } @@ -361,7 +361,7 @@ fn render_blank( fn render_nasm(output: *std.ArrayList(u8), defines: std.StringArrayHashMap(Value)) !void { const values = defines.values(); - for (defines.keys()) |name, i| { + for (defines.keys(), 0..) |name, i| { try renderValueNasm(output, name, values[i]); } } diff --git a/lib/std/Build/FmtStep.zig b/lib/std/Build/FmtStep.zig index 6404d22f13..4a5efde2bd 100644 --- a/lib/std/Build/FmtStep.zig +++ b/lib/std/Build/FmtStep.zig @@ -19,7 +19,7 @@ pub fn create(builder: *std.Build, paths: []const []const u8) *FmtStep { self.argv[0] = builder.zig_exe; self.argv[1] = "fmt"; - for (paths) |path, i| { + for (paths, 0..) |path, i| { self.argv[2 + i] = builder.pathFromRoot(path); } return self; diff --git a/lib/std/Thread/Condition.zig b/lib/std/Thread/Condition.zig index ab75a0e5e2..793779dbdb 100644 --- a/lib/std/Thread/Condition.zig +++ b/lib/std/Thread/Condition.zig @@ -341,7 +341,7 @@ test "Condition - wait and signal" { }; var multi_wait = MultiWait{}; - for (multi_wait.threads) |*t| { + for (&multi_wait.threads) |*t| { t.* = try std.Thread.spawn(.{}, MultiWait.run, .{&multi_wait}); } @@ -389,7 +389,7 @@ test "Condition - signal" { }; var signal_test = SignalTest{}; - for (signal_test.threads) |*t| { + for (&signal_test.threads) |*t| { t.* = try std.Thread.spawn(.{}, SignalTest.run, .{&signal_test}); } @@ -457,7 +457,7 @@ test "Condition - multi signal" { var threads = [_]std.Thread{undefined} ** num_threads; // Create a circle of paddles which hit each other - for (threads) |*t, i| { + for (&threads, 0..) |*t, i| { const paddle = &paddles[i]; const hit_to = &paddles[(i + 1) % paddles.len]; t.* = try std.Thread.spawn(.{}, Paddle.run, .{ paddle, hit_to }); @@ -468,7 +468,7 @@ test "Condition - multi signal" { for (threads) |t| t.join(); // The first paddle will be hit one last time by the last paddle. - for (paddles) |p, i| { + for (paddles, 0..) |p, i| { const expected = @as(u32, num_iterations) + @boolToInt(i == 0); try testing.expectEqual(p.value, expected); } @@ -513,7 +513,7 @@ test "Condition - broadcasting" { }; var broadcast_test = BroadcastTest{}; - for (broadcast_test.threads) |*t| { + for (&broadcast_test.threads) |*t| { t.* = try std.Thread.spawn(.{}, BroadcastTest.run, .{&broadcast_test}); } @@ -584,7 +584,7 @@ test "Condition - broadcasting - wake all threads" { var broadcast_test = BroadcastTest{}; var thread_id: usize = 1; - for (broadcast_test.threads) |*t| { + for (&broadcast_test.threads) |*t| { t.* = try std.Thread.spawn(.{}, BroadcastTest.run, .{ &broadcast_test, thread_id }); thread_id += 1; } diff --git a/lib/std/Thread/Futex.zig b/lib/std/Thread/Futex.zig index 15ef35698e..7efdc69d3b 100644 --- a/lib/std/Thread/Futex.zig +++ b/lib/std/Thread/Futex.zig @@ -895,7 +895,7 @@ test "Futex - signaling" { var threads = [_]std.Thread{undefined} ** num_threads; // Create a circle of paddles which hit each other - for (threads) |*t, i| { + for (&threads, 0..) |*t, i| { const paddle = &paddles[i]; const hit_to = &paddles[(i + 1) % paddles.len]; t.* = try std.Thread.spawn(.{}, Paddle.run, .{ paddle, hit_to }); @@ -950,14 +950,14 @@ test "Futex - broadcasting" { threads: [num_threads]std.Thread = undefined, fn run(self: *@This()) !void { - for (self.barriers) |*barrier| { + for (&self.barriers) |*barrier| { try barrier.wait(); } } }; var broadcast = Broadcast{}; - for (broadcast.threads) |*t| t.* = try std.Thread.spawn(.{}, Broadcast.run, .{&broadcast}); + for (&broadcast.threads) |*t| t.* = try std.Thread.spawn(.{}, Broadcast.run, .{&broadcast}); for (broadcast.threads) |t| t.join(); } diff --git a/lib/std/Thread/Mutex.zig b/lib/std/Thread/Mutex.zig index ecb3556b6c..89dedaf2b7 100644 --- a/lib/std/Thread/Mutex.zig +++ b/lib/std/Thread/Mutex.zig @@ -245,7 +245,7 @@ const NonAtomicCounter = struct { } fn inc(self: *NonAtomicCounter) void { - for (@bitCast([2]u64, self.get() + 1)) |v, i| { + for (@bitCast([2]u64, self.get() + 1), 0..) |v, i| { @ptrCast(*volatile u64, &self.value[i]).* = v; } } @@ -277,7 +277,7 @@ test "Mutex - many uncontended" { }; var runners = [_]Runner{.{}} ** num_threads; - for (runners) |*r| r.thread = try Thread.spawn(.{}, Runner.run, .{r}); + for (&runners) |*r| r.thread = try Thread.spawn(.{}, Runner.run, .{r}); for (runners) |r| r.thread.join(); for (runners) |r| try testing.expectEqual(r.counter.get(), num_increments); } @@ -312,7 +312,7 @@ test "Mutex - many contended" { var runner = Runner{}; var threads: [num_threads]Thread = undefined; - for (threads) |*t| t.* = try Thread.spawn(.{}, Runner.run, .{&runner}); + for (&threads) |*t| t.* = try Thread.spawn(.{}, Runner.run, .{&runner}); for (threads) |t| t.join(); try testing.expectEqual(runner.counter.get(), num_increments * num_threads); diff --git a/lib/std/Thread/ResetEvent.zig b/lib/std/Thread/ResetEvent.zig index 87232c29cf..42cf74fd42 100644 --- a/lib/std/Thread/ResetEvent.zig +++ b/lib/std/Thread/ResetEvent.zig @@ -274,7 +274,7 @@ test "ResetEvent - broadcast" { var ctx = Context{}; var threads: [num_threads - 1]std.Thread = undefined; - for (threads) |*t| t.* = try std.Thread.spawn(.{}, Context.run, .{&ctx}); + for (&threads) |*t| t.* = try std.Thread.spawn(.{}, Context.run, .{&ctx}); defer for (threads) |t| t.join(); ctx.run(); diff --git a/lib/std/Thread/RwLock.zig b/lib/std/Thread/RwLock.zig index c4105817b3..e78695a1d8 100644 --- a/lib/std/Thread/RwLock.zig +++ b/lib/std/Thread/RwLock.zig @@ -364,7 +364,7 @@ test "RwLock - concurrent access" { var runner = Runner{}; var threads: [num_writers + num_readers]std.Thread = undefined; - for (threads[0..num_writers]) |*t, i| t.* = try std.Thread.spawn(.{}, Runner.writer, .{ &runner, i }); + for (threads[0..num_writers], 0..) |*t, i| t.* = try std.Thread.spawn(.{}, Runner.writer, .{ &runner, i }); for (threads[num_writers..]) |*t| t.* = try std.Thread.spawn(.{}, Runner.reader, .{&runner}); for (threads) |t| t.join(); diff --git a/lib/std/Thread/Semaphore.zig b/lib/std/Thread/Semaphore.zig index 72191ffd6f..1b182d4c2a 100644 --- a/lib/std/Thread/Semaphore.zig +++ b/lib/std/Thread/Semaphore.zig @@ -54,7 +54,7 @@ test "Thread.Semaphore" { var n: i32 = 0; var ctx = TestContext{ .sem = &sem, .n = &n }; - for (threads) |*t| t.* = try std.Thread.spawn(.{}, TestContext.worker, .{&ctx}); + for (&threads) |*t| t.* = try std.Thread.spawn(.{}, TestContext.worker, .{&ctx}); for (threads) |t| t.join(); sem.wait(); try testing.expect(n == num_threads); diff --git a/lib/std/array_hash_map.zig b/lib/std/array_hash_map.zig index 57821d1b51..f62616cd85 100644 --- a/lib/std/array_hash_map.zig +++ b/lib/std/array_hash_map.zig @@ -715,7 +715,7 @@ pub fn ArrayHashMapUnmanaged( const slice = self.entries.slice(); const hashes_array = slice.items(.hash); const keys_array = slice.items(.key); - for (keys_array) |*item_key, i| { + for (keys_array, 0..) |*item_key, i| { if (hashes_array[i] == h and checkedEql(ctx, key, item_key.*, i)) { return GetOrPutResult{ .key_ptr = item_key, @@ -946,7 +946,7 @@ pub fn ArrayHashMapUnmanaged( const slice = self.entries.slice(); const hashes_array = slice.items(.hash); const keys_array = slice.items(.key); - for (keys_array) |*item_key, i| { + for (keys_array, 0..) |*item_key, i| { if (hashes_array[i] == h and checkedEql(ctx, key, item_key.*, i)) { return i; } @@ -1285,7 +1285,7 @@ pub fn ArrayHashMapUnmanaged( const slice = self.entries.slice(); const hashes_array = if (store_hash) slice.items(.hash) else {}; const keys_array = slice.items(.key); - for (keys_array) |*item_key, i| { + for (keys_array, 0..) |*item_key, i| { const hash_match = if (store_hash) hashes_array[i] == key_hash else true; if (hash_match and key_ctx.eql(key, item_key.*, i)) { const removed_entry: KV = .{ @@ -1326,7 +1326,7 @@ pub fn ArrayHashMapUnmanaged( const slice = self.entries.slice(); const hashes_array = if (store_hash) slice.items(.hash) else {}; const keys_array = slice.items(.key); - for (keys_array) |*item_key, i| { + for (keys_array, 0..) |*item_key, i| { const hash_match = if (store_hash) hashes_array[i] == key_hash else true; if (hash_match and key_ctx.eql(key, item_key.*, i)) { switch (removal_type) { @@ -1634,7 +1634,7 @@ pub fn ArrayHashMapUnmanaged( const items = if (store_hash) slice.items(.hash) else slice.items(.key); const indexes = header.indexes(I); - entry_loop: for (items) |key, i| { + entry_loop: for (items, 0..) |key, i| { const h = if (store_hash) key else checkedHash(ctx, key); const start_index = safeTruncate(usize, h); const end_index = start_index +% indexes.len; @@ -1730,7 +1730,7 @@ pub fn ArrayHashMapUnmanaged( const indexes = header.indexes(I); if (indexes.len == 0) return; var is_empty = false; - for (indexes) |idx, i| { + for (indexes, 0..) |idx, i| { if (idx.isEmpty()) { is_empty = true; } else { @@ -1826,7 +1826,7 @@ const min_bit_index = 5; const max_capacity = (1 << max_bit_index) - 1; const index_capacities = blk: { var caps: [max_bit_index + 1]u32 = undefined; - for (caps[0..max_bit_index]) |*item, i| { + for (caps[0..max_bit_index], 0..) |*item, i| { item.* = (1 << i) * 3 / 5; } caps[max_bit_index] = max_capacity; @@ -2025,7 +2025,7 @@ test "iterator hash map" { try testing.expect(count == 3); try testing.expect(it.next() == null); - for (buffer) |_, i| { + for (buffer, 0..) |_, i| { try testing.expect(buffer[@intCast(usize, keys[i])] == values[i]); } @@ -2037,7 +2037,7 @@ test "iterator hash map" { if (count >= 2) break; } - for (buffer[0..2]) |_, i| { + for (buffer[0..2], 0..) |_, i| { try testing.expect(buffer[@intCast(usize, keys[i])] == values[i]); } @@ -2299,7 +2299,7 @@ test "sort" { map.sort(C{ .keys = map.keys() }); var x: i32 = 1; - for (map.keys()) |key, i| { + for (map.keys(), 0..) |key, i| { try testing.expect(key == x); try testing.expect(map.values()[i] == x * 3); x += 1; diff --git a/lib/std/array_list.zig b/lib/std/array_list.zig index 2485668417..13aad53019 100644 --- a/lib/std/array_list.zig +++ b/lib/std/array_list.zig @@ -183,7 +183,7 @@ pub fn ArrayListAligned(comptime T: type, comptime alignment: ?u29) type { mem.copy(T, range, new_items); const after_subrange = start + new_items.len; - for (self.items[after_range..]) |item, i| { + for (self.items[after_range..], 0..) |item, i| { self.items[after_subrange..][i] = item; } @@ -216,7 +216,7 @@ pub fn ArrayListAligned(comptime T: type, comptime alignment: ?u29) type { if (newlen == i) return self.pop(); const old_item = self.items[i]; - for (self.items[i..newlen]) |*b, j| b.* = self.items[i + 1 + j]; + for (self.items[i..newlen], 0..) |*b, j| b.* = self.items[i + 1 + j]; self.items[newlen] = undefined; self.items.len = newlen; return old_item; @@ -666,7 +666,7 @@ pub fn ArrayListAlignedUnmanaged(comptime T: type, comptime alignment: ?u29) typ if (newlen == i) return self.pop(); const old_item = self.items[i]; - for (self.items[i..newlen]) |*b, j| b.* = self.items[i + 1 + j]; + for (self.items[i..newlen], 0..) |*b, j| b.* = self.items[i + 1 + j]; self.items[newlen] = undefined; self.items.len = newlen; return old_item; @@ -1069,7 +1069,7 @@ test "std.ArrayList/ArrayListUnmanaged.basic" { } } - for (list.items) |v, i| { + for (list.items, 0..) |v, i| { try testing.expect(v == @intCast(i32, i + 1)); } @@ -1119,7 +1119,7 @@ test "std.ArrayList/ArrayListUnmanaged.basic" { } } - for (list.items) |v, i| { + for (list.items, 0..) |v, i| { try testing.expect(v == @intCast(i32, i + 1)); } diff --git a/lib/std/ascii.zig b/lib/std/ascii.zig index 79038a37dc..941f398f20 100644 --- a/lib/std/ascii.zig +++ b/lib/std/ascii.zig @@ -272,7 +272,7 @@ test "ASCII character classes" { /// Asserts `output.len >= ascii_string.len`. pub fn lowerString(output: []u8, ascii_string: []const u8) []u8 { std.debug.assert(output.len >= ascii_string.len); - for (ascii_string) |c, i| { + for (ascii_string, 0..) |c, i| { output[i] = toLower(c); } return output[0..ascii_string.len]; @@ -301,7 +301,7 @@ test "allocLowerString" { /// Asserts `output.len >= ascii_string.len`. pub fn upperString(output: []u8, ascii_string: []const u8) []u8 { std.debug.assert(output.len >= ascii_string.len); - for (ascii_string) |c, i| { + for (ascii_string, 0..) |c, i| { output[i] = toUpper(c); } return output[0..ascii_string.len]; @@ -329,7 +329,7 @@ test "allocUpperString" { /// Compares strings `a` and `b` case-insensitively and returns whether they are equal. pub fn eqlIgnoreCase(a: []const u8, b: []const u8) bool { if (a.len != b.len) return false; - for (a) |a_c, i| { + for (a, 0..) |a_c, i| { if (toLower(a_c) != toLower(b[i])) return false; } return true; diff --git a/lib/std/atomic/Atomic.zig b/lib/std/atomic/Atomic.zig index 850075d4cb..51e61ca628 100644 --- a/lib/std/atomic/Atomic.zig +++ b/lib/std/atomic/Atomic.zig @@ -548,7 +548,7 @@ test "Atomic.bitSet" { var x = Atomic(Int).init(0); const bit_array = @as([@bitSizeOf(Int)]void, undefined); - for (bit_array) |_, bit_index| { + for (bit_array, 0..) |_, bit_index| { const bit = @intCast(std.math.Log2Int(Int), bit_index); const mask = @as(Int, 1) << bit; @@ -562,7 +562,7 @@ test "Atomic.bitSet" { try testing.expect(x.load(.SeqCst) & mask != 0); // all the previous bits should have not changed (still be set) - for (bit_array[0..bit_index]) |_, prev_bit_index| { + for (bit_array[0..bit_index], 0..) |_, prev_bit_index| { const prev_bit = @intCast(std.math.Log2Int(Int), prev_bit_index); const prev_mask = @as(Int, 1) << prev_bit; try testing.expect(x.load(.SeqCst) & prev_mask != 0); @@ -578,7 +578,7 @@ test "Atomic.bitReset" { var x = Atomic(Int).init(0); const bit_array = @as([@bitSizeOf(Int)]void, undefined); - for (bit_array) |_, bit_index| { + for (bit_array, 0..) |_, bit_index| { const bit = @intCast(std.math.Log2Int(Int), bit_index); const mask = @as(Int, 1) << bit; x.storeUnchecked(x.loadUnchecked() | mask); @@ -593,7 +593,7 @@ test "Atomic.bitReset" { try testing.expect(x.load(.SeqCst) & mask == 0); // all the previous bits should have not changed (still be reset) - for (bit_array[0..bit_index]) |_, prev_bit_index| { + for (bit_array[0..bit_index], 0..) |_, prev_bit_index| { const prev_bit = @intCast(std.math.Log2Int(Int), prev_bit_index); const prev_mask = @as(Int, 1) << prev_bit; try testing.expect(x.load(.SeqCst) & prev_mask == 0); @@ -609,7 +609,7 @@ test "Atomic.bitToggle" { var x = Atomic(Int).init(0); const bit_array = @as([@bitSizeOf(Int)]void, undefined); - for (bit_array) |_, bit_index| { + for (bit_array, 0..) |_, bit_index| { const bit = @intCast(std.math.Log2Int(Int), bit_index); const mask = @as(Int, 1) << bit; @@ -623,7 +623,7 @@ test "Atomic.bitToggle" { try testing.expect(x.load(.SeqCst) & mask == 0); // all the previous bits should have not changed (still be toggled back) - for (bit_array[0..bit_index]) |_, prev_bit_index| { + for (bit_array[0..bit_index], 0..) |_, prev_bit_index| { const prev_bit = @intCast(std.math.Log2Int(Int), prev_bit_index); const prev_mask = @as(Int, 1) << prev_bit; try testing.expect(x.load(.SeqCst) & prev_mask == 0); diff --git a/lib/std/atomic/queue.zig b/lib/std/atomic/queue.zig index 8100a9e26a..7c9ffa2684 100644 --- a/lib/std/atomic/queue.zig +++ b/lib/std/atomic/queue.zig @@ -212,11 +212,11 @@ test "std.atomic.Queue" { try expect(context.queue.isEmpty()); var putters: [put_thread_count]std.Thread = undefined; - for (putters) |*t| { + for (&putters) |*t| { t.* = try std.Thread.spawn(.{}, startPuts, .{&context}); } var getters: [put_thread_count]std.Thread = undefined; - for (getters) |*t| { + for (&getters) |*t| { t.* = try std.Thread.spawn(.{}, startGets, .{&context}); } diff --git a/lib/std/atomic/stack.zig b/lib/std/atomic/stack.zig index a6396bb22b..9ad7c76d81 100644 --- a/lib/std/atomic/stack.zig +++ b/lib/std/atomic/stack.zig @@ -117,11 +117,11 @@ test "std.atomic.stack" { } } else { var putters: [put_thread_count]std.Thread = undefined; - for (putters) |*t| { + for (&putters) |*t| { t.* = try std.Thread.spawn(.{}, startPuts, .{&context}); } var getters: [put_thread_count]std.Thread = undefined; - for (getters) |*t| { + for (&getters) |*t| { t.* = try std.Thread.spawn(.{}, startGets, .{&context}); } diff --git a/lib/std/base64.zig b/lib/std/base64.zig index 0eeb30abbc..83f07b9c18 100644 --- a/lib/std/base64.zig +++ b/lib/std/base64.zig @@ -140,7 +140,7 @@ pub const Base64Decoder = struct { }; var char_in_alphabet = [_]bool{false} ** 256; - for (alphabet_chars) |c, i| { + for (alphabet_chars, 0..) |c, i| { assert(!char_in_alphabet[c]); assert(pad_char == null or c != pad_char.?); @@ -185,7 +185,7 @@ pub const Base64Decoder = struct { var acc_len: u4 = 0; var dest_idx: usize = 0; var leftover_idx: ?usize = null; - for (source) |c, src_idx| { + for (source, 0..) |c, src_idx| { const d = decoder.char_to_index[c]; if (d == invalid_char) { if (decoder.pad_char == null or c != decoder.pad_char.?) return error.InvalidCharacter; @@ -258,7 +258,7 @@ pub const Base64DecoderWithIgnore = struct { var acc_len: u4 = 0; var dest_idx: usize = 0; var leftover_idx: ?usize = null; - for (source) |c, src_idx| { + for (source, 0..) |c, src_idx| { if (decoder_with_ignore.char_is_ignored[c]) continue; const d = decoder.char_to_index[c]; if (d == Base64Decoder.invalid_char) { diff --git a/lib/std/bit_set.zig b/lib/std/bit_set.zig index a56dec5beb..a027022497 100644 --- a/lib/std/bit_set.zig +++ b/lib/std/bit_set.zig @@ -494,14 +494,14 @@ pub fn ArrayBitSet(comptime MaskIntType: type, comptime size: usize) type { /// Flips all bits in this bit set which are present /// in the toggles bit set. pub fn toggleSet(self: *Self, toggles: Self) void { - for (self.masks) |*mask, i| { + for (&self.masks, 0..) |*mask, i| { mask.* ^= toggles.masks[i]; } } /// Flips every bit in the bit set. pub fn toggleAll(self: *Self) void { - for (self.masks) |*mask| { + for (&self.masks) |*mask| { mask.* = ~mask.*; } @@ -515,7 +515,7 @@ pub fn ArrayBitSet(comptime MaskIntType: type, comptime size: usize) type { /// result in the first one. Bits in the result are /// set if the corresponding bits were set in either input. pub fn setUnion(self: *Self, other: Self) void { - for (self.masks) |*mask, i| { + for (&self.masks, 0..) |*mask, i| { mask.* |= other.masks[i]; } } @@ -524,7 +524,7 @@ pub fn ArrayBitSet(comptime MaskIntType: type, comptime size: usize) type { /// the result in the first one. Bits in the result are /// set if the corresponding bits were set in both inputs. pub fn setIntersection(self: *Self, other: Self) void { - for (self.masks) |*mask, i| { + for (&self.masks, 0..) |*mask, i| { mask.* &= other.masks[i]; } } @@ -544,7 +544,7 @@ pub fn ArrayBitSet(comptime MaskIntType: type, comptime size: usize) type { /// If no bits are set, returns null. pub fn toggleFirstSet(self: *Self) ?usize { var offset: usize = 0; - const mask = for (self.masks) |*mask| { + const mask = for (&self.masks) |*mask| { if (mask.* != 0) break mask; offset += @bitSizeOf(MaskInt); } else return null; @@ -869,7 +869,7 @@ pub const DynamicBitSetUnmanaged = struct { pub fn toggleSet(self: *Self, toggles: Self) void { assert(toggles.bit_length == self.bit_length); const num_masks = numMasks(self.bit_length); - for (self.masks[0..num_masks]) |*mask, i| { + for (self.masks[0..num_masks], 0..) |*mask, i| { mask.* ^= toggles.masks[i]; } } @@ -897,7 +897,7 @@ pub const DynamicBitSetUnmanaged = struct { pub fn setUnion(self: *Self, other: Self) void { assert(other.bit_length == self.bit_length); const num_masks = numMasks(self.bit_length); - for (self.masks[0..num_masks]) |*mask, i| { + for (self.masks[0..num_masks], 0..) |*mask, i| { mask.* |= other.masks[i]; } } @@ -909,7 +909,7 @@ pub const DynamicBitSetUnmanaged = struct { pub fn setIntersection(self: *Self, other: Self) void { assert(other.bit_length == self.bit_length); const num_masks = numMasks(self.bit_length); - for (self.masks[0..num_masks]) |*mask, i| { + for (self.masks[0..num_masks], 0..) |*mask, i| { mask.* &= other.masks[i]; } } diff --git a/lib/std/bounded_array.zig b/lib/std/bounded_array.zig index 7f1957d6dc..5242470631 100644 --- a/lib/std/bounded_array.zig +++ b/lib/std/bounded_array.zig @@ -169,7 +169,7 @@ pub fn BoundedArray(comptime T: type, comptime buffer_capacity: usize) type { } else { mem.copy(T, range, new_items); const after_subrange = start + new_items.len; - for (self.constSlice()[after_range..]) |item, i| { + for (self.constSlice()[after_range..], 0..) |item, i| { self.slice()[after_subrange..][i] = item; } self.len -= len - new_items.len; @@ -197,7 +197,7 @@ pub fn BoundedArray(comptime T: type, comptime buffer_capacity: usize) type { const newlen = self.len - 1; if (newlen == i) return self.pop(); const old_item = self.get(i); - for (self.slice()[i..newlen]) |*b, j| b.* = self.get(i + 1 + j); + for (self.slice()[i..newlen], 0..) |*b, j| b.* = self.get(i + 1 + j); self.set(newlen, undefined); self.len = newlen; return old_item; diff --git a/lib/std/child_process.zig b/lib/std/child_process.zig index 003e37d76b..07dd1f27f5 100644 --- a/lib/std/child_process.zig +++ b/lib/std/child_process.zig @@ -604,7 +604,7 @@ pub const ChildProcess = struct { const arena = arena_allocator.allocator(); const argv_buf = try arena.allocSentinel(?[*:0]u8, self.argv.len, null); - for (self.argv) |arg, i| argv_buf[i] = (try arena.dupeZ(u8, arg)).ptr; + for (self.argv, 0..) |arg, i| argv_buf[i] = (try arena.dupeZ(u8, arg)).ptr; const envp = if (self.env_map) |env_map| m: { const envp_buf = try createNullDelimitedEnvMap(arena, env_map); @@ -712,7 +712,7 @@ pub const ChildProcess = struct { // Therefore, we do all the allocation for the execve() before the fork(). // This means we must do the null-termination of argv and env vars here. const argv_buf = try arena.allocSentinel(?[*:0]u8, self.argv.len, null); - for (self.argv) |arg, i| argv_buf[i] = (try arena.dupeZ(u8, arg)).ptr; + for (self.argv, 0..) |arg, i| argv_buf[i] = (try arena.dupeZ(u8, arg)).ptr; const envp = m: { if (self.env_map) |env_map| { @@ -1424,7 +1424,7 @@ fn windowsCreateCommandLine(allocator: mem.Allocator, argv: []const []const u8) var buf = std.ArrayList(u8).init(allocator); defer buf.deinit(); - for (argv) |arg, arg_i| { + for (argv, 0..) |arg, arg_i| { if (arg_i != 0) try buf.append(' '); if (mem.indexOfAny(u8, arg, " \t\n\"") == null) { try buf.appendSlice(arg); diff --git a/lib/std/coff.zig b/lib/std/coff.zig index 3225a2525f..a7c191e650 100644 --- a/lib/std/coff.zig +++ b/lib/std/coff.zig @@ -1223,7 +1223,7 @@ pub const Coff = struct { pub fn getSectionHeadersAlloc(self: *const Coff, allocator: mem.Allocator) ![]SectionHeader { const section_headers = self.getSectionHeaders(); const out_buff = try allocator.alloc(SectionHeader, section_headers.len); - for (out_buff) |*section_header, i| { + for (out_buff, 0..) |*section_header, i| { section_header.* = section_headers[i]; } diff --git a/lib/std/compress/deflate/compressor.zig b/lib/std/compress/deflate/compressor.zig index 45c5c6bf8e..6c21875941 100644 --- a/lib/std/compress/deflate/compressor.zig +++ b/lib/std/compress/deflate/compressor.zig @@ -159,7 +159,7 @@ fn levels(compression: Compression) CompressionLevel { fn matchLen(a: []u8, b: []u8, max: u32) u32 { var bounded_a = a[0..max]; var bounded_b = b[0..max]; - for (bounded_a) |av, i| { + for (bounded_a, 0..) |av, i| { if (bounded_b[i] != av) { return @intCast(u32, i); } @@ -312,14 +312,14 @@ pub fn Compressor(comptime WriterType: anytype) type { // Iterate over slices instead of arrays to avoid copying // the entire table onto the stack (https://golang.org/issue/18625). - for (self.hash_prev) |v, i| { + for (self.hash_prev, 0..) |v, i| { if (v > delta) { self.hash_prev[i] = @intCast(u32, v - delta); } else { self.hash_prev[i] = 0; } } - for (self.hash_head) |v, i| { + for (self.hash_head, 0..) |v, i| { if (v > delta) { self.hash_head[i] = @intCast(u32, v - delta); } else { @@ -391,7 +391,7 @@ pub fn Compressor(comptime WriterType: anytype) type { var dst = self.hash_match[0..dst_size]; _ = self.bulk_hasher(to_check, dst); var new_h: u32 = 0; - for (dst) |val, i| { + for (dst, 0..) |val, i| { var di = i + index; new_h = val; var hh = &self.hash_head[new_h & hash_mask]; @@ -1102,7 +1102,7 @@ test "bulkHash4" { defer testing.allocator.free(dst); _ = bulkHash4(y, dst); - for (dst) |got, i| { + for (dst, 0..) |got, i| { var want = hash4(y[i..]); try testing.expectEqual(want, got); } diff --git a/lib/std/compress/deflate/compressor_test.zig b/lib/std/compress/deflate/compressor_test.zig index c51f68236d..858da8d8b5 100644 --- a/lib/std/compress/deflate/compressor_test.zig +++ b/lib/std/compress/deflate/compressor_test.zig @@ -171,7 +171,7 @@ test "deflate/inflate" { var large_data_chunk = try testing.allocator.alloc(u8, 100_000); defer testing.allocator.free(large_data_chunk); // fill with random data - for (large_data_chunk) |_, i| { + for (large_data_chunk, 0..) |_, i| { large_data_chunk[i] = @truncate(u8, i) *% @truncate(u8, i); } try testToFromWithLimit(large_data_chunk, limits); @@ -205,7 +205,7 @@ test "very long sparse chunk" { n -= cur - s.l; cur = s.l; } - for (b[0..n]) |_, i| { + for (b[0..n], 0..) |_, i| { if (s.cur + i >= s.l -| (1 << 16)) { b[i] = 1; } else { @@ -451,7 +451,7 @@ test "inflate reset" { defer compressed_strings[0].deinit(); defer compressed_strings[1].deinit(); - for (strings) |s, i| { + for (strings, 0..) |s, i| { var comp = try compressor( testing.allocator, compressed_strings[i].writer(), @@ -498,7 +498,7 @@ test "inflate reset dictionary" { defer compressed_strings[0].deinit(); defer compressed_strings[1].deinit(); - for (strings) |s, i| { + for (strings, 0..) |s, i| { var comp = try compressor( testing.allocator, compressed_strings[i].writer(), diff --git a/lib/std/compress/deflate/decompressor.zig b/lib/std/compress/deflate/decompressor.zig index baef85cace..e5cfbb0f6b 100644 --- a/lib/std/compress/deflate/decompressor.zig +++ b/lib/std/compress/deflate/decompressor.zig @@ -165,7 +165,7 @@ const HuffmanDecoder = struct { } } - for (lengths) |n, li| { + for (lengths, 0..) |n, li| { if (n == 0) { continue; } @@ -213,7 +213,7 @@ const HuffmanDecoder = struct { // Above we've sanity checked that we never overwrote // an existing entry. Here we additionally check that // we filled the tables completely. - for (self.chunks) |chunk, i| { + for (self.chunks, 0..) |chunk, i| { // As an exception, in the degenerate // single-code case, we allow odd // chunks to be missing. diff --git a/lib/std/compress/deflate/deflate_fast.zig b/lib/std/compress/deflate/deflate_fast.zig index 12d3e4203a..2009af2611 100644 --- a/lib/std/compress/deflate/deflate_fast.zig +++ b/lib/std/compress/deflate/deflate_fast.zig @@ -264,7 +264,7 @@ pub const DeflateFast = struct { var a = src[@intCast(usize, s)..@intCast(usize, s1)]; b = b[0..a.len]; // Extend the match to be as long as possible. - for (a) |_, i| { + for (a, 0..) |_, i| { if (a[i] != b[i]) { return @intCast(i32, i); } @@ -285,7 +285,7 @@ pub const DeflateFast = struct { b = b[0..a.len]; } a = a[0..b.len]; - for (b) |_, i| { + for (b, 0..) |_, i| { if (a[i] != b[i]) { return @intCast(i32, i); } @@ -301,7 +301,7 @@ pub const DeflateFast = struct { // Continue looking for more matches in the current block. a = src[@intCast(usize, s + n)..@intCast(usize, s1)]; b = src[0..a.len]; - for (a) |_, i| { + for (a, 0..) |_, i| { if (a[i] != b[i]) { return @intCast(i32, i) + n; } @@ -330,7 +330,7 @@ pub const DeflateFast = struct { fn shiftOffsets(self: *Self) void { if (self.prev_len == 0) { // We have no history; just clear the table. - for (self.table) |_, i| { + for (self.table, 0..) |_, i| { self.table[i] = TableEntry{ .val = 0, .offset = 0 }; } self.cur = max_match_offset + 1; @@ -338,7 +338,7 @@ pub const DeflateFast = struct { } // Shift down everything in the table that isn't already too far away. - for (self.table) |_, i| { + for (self.table, 0..) |_, i| { var v = self.table[i].offset - self.cur + max_match_offset + 1; if (v < 0) { // We want to reset self.cur to max_match_offset + 1, so we need to shift diff --git a/lib/std/compress/deflate/deflate_fast_test.zig b/lib/std/compress/deflate/deflate_fast_test.zig index 9f7b639cba..f8efa80630 100644 --- a/lib/std/compress/deflate/deflate_fast_test.zig +++ b/lib/std/compress/deflate/deflate_fast_test.zig @@ -18,7 +18,7 @@ test "best speed" { var abcabc = try testing.allocator.alloc(u8, 131_072); defer testing.allocator.free(abcabc); - for (abcabc) |_, i| { + for (abcabc, 0..) |_, i| { abcabc[i] = @intCast(u8, i % 128); } diff --git a/lib/std/compress/deflate/dict_decoder.zig b/lib/std/compress/deflate/dict_decoder.zig index e2a185dc39..bf21572827 100644 --- a/lib/std/compress/deflate/dict_decoder.zig +++ b/lib/std/compress/deflate/dict_decoder.zig @@ -378,7 +378,7 @@ test "dictionary decoder" { _ = try want.write("."); var str = poem; - for (poem_refs) |ref, i| { + for (poem_refs, 0..) |ref, i| { _ = i; if (ref.dist == 0) { try util.writeString(&dd, got, str[0..ref.length]); diff --git a/lib/std/compress/deflate/huffman_bit_writer.zig b/lib/std/compress/deflate/huffman_bit_writer.zig index fc5727ca63..a42aae467b 100644 --- a/lib/std/compress/deflate/huffman_bit_writer.zig +++ b/lib/std/compress/deflate/huffman_bit_writer.zig @@ -197,7 +197,7 @@ pub fn HuffmanBitWriter(comptime WriterType: type) type { lit_enc: *hm_code.HuffmanEncoder, off_enc: *hm_code.HuffmanEncoder, ) void { - for (self.codegen_freq) |_, i| { + for (self.codegen_freq, 0..) |_, i| { self.codegen_freq[i] = 0; } @@ -208,12 +208,12 @@ pub fn HuffmanBitWriter(comptime WriterType: type) type { var codegen = self.codegen; // cache // Copy the concatenated code sizes to codegen. Put a marker at the end. var cgnl = codegen[0..num_literals]; - for (cgnl) |_, i| { + for (cgnl, 0..) |_, i| { cgnl[i] = @intCast(u8, lit_enc.codes[i].len); } cgnl = codegen[num_literals .. num_literals + num_offsets]; - for (cgnl) |_, i| { + for (cgnl, 0..) |_, i| { cgnl[i] = @intCast(u8, off_enc.codes[i].len); } codegen[num_literals + num_offsets] = bad_code; @@ -600,10 +600,10 @@ pub fn HuffmanBitWriter(comptime WriterType: type) type { var num_literals: u32 = 0; var num_offsets: u32 = 0; - for (self.literal_freq) |_, i| { + for (self.literal_freq, 0..) |_, i| { self.literal_freq[i] = 0; } - for (self.offset_freq) |_, i| { + for (self.offset_freq, 0..) |_, i| { self.offset_freq[i] = 0; } @@ -691,7 +691,7 @@ pub fn HuffmanBitWriter(comptime WriterType: type) type { } // Clear histogram - for (self.literal_freq) |_, i| { + for (self.literal_freq, 0..) |_, i| { self.literal_freq[i] = 0; } diff --git a/lib/std/compress/deflate/huffman_code.zig b/lib/std/compress/deflate/huffman_code.zig index 79598e59ae..e911e5219b 100644 --- a/lib/std/compress/deflate/huffman_code.zig +++ b/lib/std/compress/deflate/huffman_code.zig @@ -71,7 +71,7 @@ pub const HuffmanEncoder = struct { // Number of non-zero literals var count: u32 = 0; // Set list to be the set of all non-zero literals and their frequencies - for (freq) |f, i| { + for (freq, 0..) |f, i| { if (f != 0) { list[count] = LiteralNode{ .literal = @intCast(u16, i), .freq = f }; count += 1; @@ -86,7 +86,7 @@ pub const HuffmanEncoder = struct { if (count <= 2) { // Handle the small cases here, because they are awkward for the general case code. With // two or fewer literals, everything has bit length 1. - for (list) |node, i| { + for (list, 0..) |node, i| { // "list" is in order of increasing literal value. self.codes[node.literal].set(@intCast(u16, i), 1); } @@ -103,7 +103,7 @@ pub const HuffmanEncoder = struct { pub fn bitLength(self: *HuffmanEncoder, freq: []u16) u32 { var total: u32 = 0; - for (freq) |f, i| { + for (freq, 0..) |f, i| { if (f != 0) { total += @intCast(u32, f) * @intCast(u32, self.codes[i].len); } @@ -258,7 +258,7 @@ pub const HuffmanEncoder = struct { var code = @as(u16, 0); var list = list_arg; - for (bit_count) |bits, n| { + for (bit_count, 0..) |bits, n| { code <<= 1; if (n == 0 or bits == 0) { continue; @@ -340,7 +340,7 @@ pub fn generateFixedLiteralEncoding(allocator: Allocator) !HuffmanEncoder { pub fn generateFixedOffsetEncoding(allocator: Allocator) !HuffmanEncoder { var h = try newHuffmanEncoder(allocator, 30); var codes = h.codes; - for (codes) |_, ch| { + for (codes, 0..) |_, ch| { codes[ch] = HuffCode{ .code = bu.bitReverse(u16, @intCast(u16, ch), 5), .len = 5 }; } return h; diff --git a/lib/std/compress/lzma/decode.zig b/lib/std/compress/lzma/decode.zig index 6c9a3ae862..dc220d8e87 100644 --- a/lib/std/compress/lzma/decode.zig +++ b/lib/std/compress/lzma/decode.zig @@ -143,7 +143,7 @@ pub const DecoderState = struct { } self.lzma_props = new_props; - for (self.pos_slot_decoder) |*t| t.reset(); + for (&self.pos_slot_decoder) |*t| t.reset(); self.align_decoder.reset(); self.pos_decoders = .{0x400} ** 115; self.is_match = .{0x400} ** 192; diff --git a/lib/std/compress/lzma/decode/rangecoder.zig b/lib/std/compress/lzma/decode/rangecoder.zig index 6b6ca15997..5df10be060 100644 --- a/lib/std/compress/lzma/decode/rangecoder.zig +++ b/lib/std/compress/lzma/decode/rangecoder.zig @@ -174,8 +174,8 @@ pub const LenDecoder = struct { pub fn reset(self: *LenDecoder) void { self.choice = 0x400; self.choice2 = 0x400; - for (self.low_coder) |*t| t.reset(); - for (self.mid_coder) |*t| t.reset(); + for (&self.low_coder) |*t| t.reset(); + for (&self.mid_coder) |*t| t.reset(); self.high_coder.reset(); } }; diff --git a/lib/std/comptime_string_map.zig b/lib/std/comptime_string_map.zig index f7736413d5..267259225c 100644 --- a/lib/std/comptime_string_map.zig +++ b/lib/std/comptime_string_map.zig @@ -21,7 +21,7 @@ pub fn ComptimeStringMap(comptime V: type, comptime kvs_list: anytype) type { return a.key.len < b.key.len; } }).lenAsc; - for (kvs_list) |kv, i| { + for (kvs_list, 0..) |kv, i| { if (V != void) { sorted_kvs[i] = .{ .key = kv.@"0", .value = kv.@"1" }; } else { diff --git a/lib/std/crypto/25519/ed25519.zig b/lib/std/crypto/25519/ed25519.zig index 7d136fc12d..5d85fd5224 100644 --- a/lib/std/crypto/25519/ed25519.zig +++ b/lib/std/crypto/25519/ed25519.zig @@ -344,7 +344,7 @@ pub const Ed25519 = struct { var a_batch: [count]Curve = undefined; var expected_r_batch: [count]Curve = undefined; - for (signature_batch) |signature, i| { + for (signature_batch, 0..) |signature, i| { const r = signature.sig.r; const s = signature.sig.s; try Curve.scalar.rejectNonCanonical(s); @@ -360,7 +360,7 @@ pub const Ed25519 = struct { } var hram_batch: [count]Curve.scalar.CompressedScalar = undefined; - for (signature_batch) |signature, i| { + for (signature_batch, 0..) |signature, i| { var h = Sha512.init(.{}); h.update(&r_batch[i]); h.update(&signature.public_key.bytes); @@ -371,20 +371,20 @@ pub const Ed25519 = struct { } var z_batch: [count]Curve.scalar.CompressedScalar = undefined; - for (z_batch) |*z| { + for (&z_batch) |*z| { crypto.random.bytes(z[0..16]); mem.set(u8, z[16..], 0); } var zs_sum = Curve.scalar.zero; - for (z_batch) |z, i| { + for (z_batch, 0..) |z, i| { const zs = Curve.scalar.mul(z, s_batch[i]); zs_sum = Curve.scalar.add(zs_sum, zs); } zs_sum = Curve.scalar.mul8(zs_sum); var zhs: [count]Curve.scalar.CompressedScalar = undefined; - for (z_batch) |z, i| { + for (z_batch, 0..) |z, i| { zhs[i] = Curve.scalar.mul(z, hram_batch[i]); } diff --git a/lib/std/crypto/25519/edwards25519.zig b/lib/std/crypto/25519/edwards25519.zig index 840f4b67d5..df4f8467f9 100644 --- a/lib/std/crypto/25519/edwards25519.zig +++ b/lib/std/crypto/25519/edwards25519.zig @@ -161,7 +161,7 @@ pub const Edwards25519 = struct { fn slide(s: [32]u8) [2 * 32]i8 { const reduced = if ((s[s.len - 1] & 0x80) == 0) s else scalar.reduce(s); var e: [2 * 32]i8 = undefined; - for (reduced) |x, i| { + for (reduced, 0..) |x, i| { e[i * 2 + 0] = @as(i8, @truncate(u4, x)); e[i * 2 + 1] = @as(i8, @truncate(u4, x >> 4)); } @@ -308,7 +308,7 @@ pub const Edwards25519 = struct { var bpc: [9]Edwards25519 = undefined; mem.copy(Edwards25519, bpc[0..], basePointPc[0..bpc.len]); - for (ps) |p, i| { + for (ps, 0..) |p, i| { if (p.is_base) { pcs[i] = bpc; } else { @@ -317,13 +317,13 @@ pub const Edwards25519 = struct { } } var es: [count][2 * 32]i8 = undefined; - for (ss) |s, i| { + for (ss, 0..) |s, i| { es[i] = slide(s); } var q = Edwards25519.identityElement; var pos: usize = 2 * 32 - 1; while (true) : (pos -= 1) { - for (es) |e, i| { + for (es, 0..) |e, i| { const slot = e[pos]; if (slot > 0) { q = q.add(pcs[i][@intCast(usize, slot)]); diff --git a/lib/std/crypto/Certificate.zig b/lib/std/crypto/Certificate.zig index 3b491fa32e..22513f9efe 100644 --- a/lib/std/crypto/Certificate.zig +++ b/lib/std/crypto/Certificate.zig @@ -1092,7 +1092,7 @@ pub const rsa = struct { if (exponent_elem.identifier.tag != .integer) return error.CertificateFieldHasWrongDataType; // Skip over meaningless zeroes in the modulus. const modulus_raw = pub_key[modulus_elem.slice.start..modulus_elem.slice.end]; - const modulus_offset = for (modulus_raw) |byte, i| { + const modulus_offset = for (modulus_raw, 0..) |byte, i| { if (byte != 0) break i; } else modulus_raw.len; return .{ diff --git a/lib/std/crypto/aegis.zig b/lib/std/crypto/aegis.zig index da09aca351..4a030d7870 100644 --- a/lib/std/crypto/aegis.zig +++ b/lib/std/crypto/aegis.zig @@ -170,7 +170,7 @@ pub const Aegis128L = struct { } const computed_tag = state.mac(ad.len, m.len); var acc: u8 = 0; - for (computed_tag) |_, j| { + for (computed_tag, 0..) |_, j| { acc |= (computed_tag[j] ^ tag[j]); } if (acc != 0) { @@ -339,7 +339,7 @@ pub const Aegis256 = struct { } const computed_tag = state.mac(ad.len, m.len); var acc: u8 = 0; - for (computed_tag) |_, j| { + for (computed_tag, 0..) |_, j| { acc |= (computed_tag[j] ^ tag[j]); } if (acc != 0) { @@ -562,7 +562,7 @@ test "Aegis256 test vector 3" { test "Aegis MAC" { const key = [_]u8{0x00} ** Aegis128LMac.key_length; var msg: [64]u8 = undefined; - for (msg) |*m, i| { + for (&msg, 0..) |*m, i| { m.* = @truncate(u8, i); } const st_init = Aegis128LMac.init(&key); diff --git a/lib/std/crypto/aes.zig b/lib/std/crypto/aes.zig index c969dfd0f7..e2efa5bb90 100644 --- a/lib/std/crypto/aes.zig +++ b/lib/std/crypto/aes.zig @@ -115,11 +115,11 @@ test "expand 128-bit key" { const dec = Aes128.initDec(key); var exp: [16]u8 = undefined; - for (enc.key_schedule.round_keys) |round_key, i| { + for (enc.key_schedule.round_keys, 0..) |round_key, i| { _ = try std.fmt.hexToBytes(&exp, exp_enc[i]); try testing.expectEqualSlices(u8, &exp, &round_key.toBytes()); } - for (dec.key_schedule.round_keys) |round_key, i| { + for (dec.key_schedule.round_keys, 0..) |round_key, i| { _ = try std.fmt.hexToBytes(&exp, exp_dec[i]); try testing.expectEqualSlices(u8, &exp, &round_key.toBytes()); } @@ -154,11 +154,11 @@ test "expand 256-bit key" { const dec = Aes256.initDec(key); var exp: [16]u8 = undefined; - for (enc.key_schedule.round_keys) |round_key, i| { + for (enc.key_schedule.round_keys, 0..) |round_key, i| { _ = try std.fmt.hexToBytes(&exp, exp_enc[i]); try testing.expectEqualSlices(u8, &exp, &round_key.toBytes()); } - for (dec.key_schedule.round_keys) |round_key, i| { + for (dec.key_schedule.round_keys, 0..) |round_key, i| { _ = try std.fmt.hexToBytes(&exp, exp_dec[i]); try testing.expectEqualSlices(u8, &exp, &round_key.toBytes()); } diff --git a/lib/std/crypto/aes/aesni.zig b/lib/std/crypto/aes/aesni.zig index c513e71478..4b5f3d445f 100644 --- a/lib/std/crypto/aes/aesni.zig +++ b/lib/std/crypto/aes/aesni.zig @@ -200,7 +200,7 @@ fn KeySchedule(comptime Aes: type) type { fn expand128(t1: *Block) Self { var round_keys: [11]Block = undefined; const rcs = [_]u8{ 1, 2, 4, 8, 16, 32, 64, 128, 27, 54 }; - inline for (rcs) |rc, round| { + inline for (rcs, 0..) |rc, round| { round_keys[round] = t1.*; t1.repr = drc(false, rc, t1.repr, t1.repr); } @@ -212,7 +212,7 @@ fn KeySchedule(comptime Aes: type) type { var round_keys: [15]Block = undefined; const rcs = [_]u8{ 1, 2, 4, 8, 16, 32 }; round_keys[0] = t1.*; - inline for (rcs) |rc, round| { + inline for (rcs, 0..) |rc, round| { round_keys[round * 2 + 1] = t2.*; t1.repr = drc(false, rc, t2.repr, t1.repr); round_keys[round * 2 + 2] = t1.*; diff --git a/lib/std/crypto/aes/armcrypto.zig b/lib/std/crypto/aes/armcrypto.zig index 52b7433d11..3f4faf1b14 100644 --- a/lib/std/crypto/aes/armcrypto.zig +++ b/lib/std/crypto/aes/armcrypto.zig @@ -250,7 +250,7 @@ fn KeySchedule(comptime Aes: type) type { fn expand128(t1: *Block) Self { var round_keys: [11]Block = undefined; const rcs = [_]u8{ 1, 2, 4, 8, 16, 32, 64, 128, 27, 54 }; - inline for (rcs) |rc, round| { + inline for (rcs, 0..) |rc, round| { round_keys[round] = t1.*; t1.repr = drc128(rc, t1.repr); } @@ -262,7 +262,7 @@ fn KeySchedule(comptime Aes: type) type { var round_keys: [15]Block = undefined; const rcs = [_]u8{ 1, 2, 4, 8, 16, 32 }; round_keys[0] = t1.*; - inline for (rcs) |rc, round| { + inline for (rcs, 0..) |rc, round| { round_keys[round * 2 + 1] = t2.*; t1.repr = drc256(false, rc, t2.repr, t1.repr); round_keys[round * 2 + 2] = t1.*; diff --git a/lib/std/crypto/aes/soft.zig b/lib/std/crypto/aes/soft.zig index 57d433c115..b57f1746dc 100644 --- a/lib/std/crypto/aes/soft.zig +++ b/lib/std/crypto/aes/soft.zig @@ -471,7 +471,7 @@ fn generateSbox(invert: bool) [256]u8 { fn generateTable(invert: bool) [4][256]u32 { var table: [4][256]u32 = undefined; - for (generateSbox(invert)) |value, index| { + for (generateSbox(invert), 0..) |value, index| { table[0][index] = mul(value, if (invert) 0xb else 0x3); table[0][index] |= math.shl(u32, mul(value, if (invert) 0xd else 0x1), 8); table[0][index] |= math.shl(u32, mul(value, if (invert) 0x9 else 0x1), 16); diff --git a/lib/std/crypto/aes_gcm.zig b/lib/std/crypto/aes_gcm.zig index 6eadcdee2f..b9b2362d9f 100644 --- a/lib/std/crypto/aes_gcm.zig +++ b/lib/std/crypto/aes_gcm.zig @@ -50,7 +50,7 @@ fn AesGcm(comptime Aes: anytype) type { mem.writeIntBig(u64, final_block[8..16], m.len * 8); mac.update(&final_block); mac.final(tag); - for (t) |x, i| { + for (t, 0..) |x, i| { tag[i] ^= x; } } @@ -82,12 +82,12 @@ fn AesGcm(comptime Aes: anytype) type { mac.update(&final_block); var computed_tag: [Ghash.mac_length]u8 = undefined; mac.final(&computed_tag); - for (t) |x, i| { + for (t, 0..) |x, i| { computed_tag[i] ^= x; } var acc: u8 = 0; - for (computed_tag) |_, p| { + for (computed_tag, 0..) |_, p| { acc |= (computed_tag[p] ^ tag[p]); } if (acc != 0) { diff --git a/lib/std/crypto/aes_ocb.zig b/lib/std/crypto/aes_ocb.zig index 68f5bc4a9a..a5d1001ed5 100644 --- a/lib/std/crypto/aes_ocb.zig +++ b/lib/std/crypto/aes_ocb.zig @@ -155,7 +155,7 @@ fn AesOcb(comptime Aes: anytype) type { xorWith(&offset, lx.star); var pad = offset; aes_enc_ctx.encrypt(&pad, &pad); - for (m[i * 16 ..]) |x, j| { + for (m[i * 16 ..], 0..) |x, j| { c[i * 16 + j] = pad[j] ^ x; } var e = [_]u8{0} ** 16; @@ -220,7 +220,7 @@ fn AesOcb(comptime Aes: anytype) type { xorWith(&offset, lx.star); var pad = offset; aes_enc_ctx.encrypt(&pad, &pad); - for (c[i * 16 ..]) |x, j| { + for (c[i * 16 ..], 0..) |x, j| { m[i * 16 + j] = pad[j] ^ x; } var e = [_]u8{0} ** 16; @@ -242,14 +242,14 @@ fn AesOcb(comptime Aes: anytype) type { inline fn xorBlocks(x: Block, y: Block) Block { var z: Block = x; - for (z) |*v, i| { + for (&z, 0..) |*v, i| { v.* = x[i] ^ y[i]; } return z; } inline fn xorWith(x: *Block, y: Block) void { - for (x) |*v, i| { + for (x, 0..) |*v, i| { v.* ^= y[i]; } } diff --git a/lib/std/crypto/argon2.zig b/lib/std/crypto/argon2.zig index 7269470d5f..a95e75e538 100644 --- a/lib/std/crypto/argon2.zig +++ b/lib/std/crypto/argon2.zig @@ -188,13 +188,13 @@ fn initBlocks( mem.writeIntLittle(u32, h0[Blake2b512.digest_length..][0..4], 0); blake2bLong(&block0, h0); - for (blocks.items[j + 0]) |*v, i| { + for (&blocks.items[j + 0], 0..) |*v, i| { v.* = mem.readIntLittle(u64, block0[i * 8 ..][0..8]); } mem.writeIntLittle(u32, h0[Blake2b512.digest_length..][0..4], 1); blake2bLong(&block0, h0); - for (blocks.items[j + 1]) |*v, i| { + for (&blocks.items[j + 1], 0..) |*v, i| { v.* = mem.readIntLittle(u64, block0[i * 8 ..][0..8]); } } @@ -352,7 +352,7 @@ fn processBlockGeneric( comptime xor: bool, ) void { var t: [block_length]u64 = undefined; - for (t) |*v, i| { + for (&t, 0..) |*v, i| { v.* = in1[i] ^ in2[i]; } var i: usize = 0; @@ -375,11 +375,11 @@ fn processBlockGeneric( } } if (xor) { - for (t) |v, j| { + for (t, 0..) |v, j| { out[j] ^= in1[j] ^ in2[j] ^ v; } } else { - for (t) |v, j| { + for (t, 0..) |v, j| { out[j] = in1[j] ^ in2[j] ^ v; } } @@ -428,12 +428,12 @@ fn finalize( const lanes = memory / threads; var lane: u24 = 0; while (lane < threads - 1) : (lane += 1) { - for (blocks.items[(lane * lanes) + lanes - 1]) |v, i| { + for (blocks.items[(lane * lanes) + lanes - 1], 0..) |v, i| { blocks.items[memory - 1][i] ^= v; } } var block: [1024]u8 = undefined; - for (blocks.items[memory - 1]) |v, i| { + for (blocks.items[memory - 1], 0..) |v, i| { mem.writeIntLittle(u64, block[i * 8 ..][0..8], v); } blake2bLong(out, &block); diff --git a/lib/std/crypto/ascon.zig b/lib/std/crypto/ascon.zig index f692bdbe71..6de003d436 100644 --- a/lib/std/crypto/ascon.zig +++ b/lib/std/crypto/ascon.zig @@ -74,7 +74,7 @@ pub fn State(comptime endian: builtin.Endian) type { /// Byte-swap the entire state if the architecture doesn't match the required endianness. pub fn endianSwap(self: *Self) void { - for (self.st) |*w| { + for (&self.st) |*w| { w.* = mem.toNative(u64, w.*, endian); } } diff --git a/lib/std/crypto/bcrypt.zig b/lib/std/crypto/bcrypt.zig index e5c688557f..2191ab0d9e 100644 --- a/lib/std/crypto/bcrypt.zig +++ b/lib/std/crypto/bcrypt.zig @@ -437,7 +437,7 @@ pub fn bcrypt( } var ct: [ct_length]u8 = undefined; - for (cdata) |c, i| { + for (cdata, 0..) |c, i| { mem.writeIntBig(u32, ct[i * 4 ..][0..4], c); } return ct[0..dk_length].*; @@ -505,7 +505,7 @@ const pbkdf_prf = struct { // copy out var out: [32]u8 = undefined; - for (cdata) |v, i| { + for (cdata, 0..) |v, i| { std.mem.writeIntLittle(u32, out[4 * i ..][0..4], v); } diff --git a/lib/std/crypto/blake2.zig b/lib/std/crypto/blake2.zig index 80557eb255..85c26ce599 100644 --- a/lib/std/crypto/blake2.zig +++ b/lib/std/crypto/blake2.zig @@ -133,7 +133,7 @@ pub fn Blake2s(comptime out_bits: usize) type { mem.set(u8, d.buf[d.buf_len..], 0); d.t += d.buf_len; d.round(d.buf[0..], true); - for (d.h) |*x| x.* = mem.nativeToLittle(u32, x.*); + for (&d.h) |*x| x.* = mem.nativeToLittle(u32, x.*); mem.copy(u8, out[0..], @ptrCast(*[digest_length]u8, &d.h)); } @@ -141,7 +141,7 @@ pub fn Blake2s(comptime out_bits: usize) type { var m: [16]u32 = undefined; var v: [16]u32 = undefined; - for (m) |*r, i| { + for (&m, 0..) |*r, i| { r.* = mem.readIntLittle(u32, b[4 * i ..][0..4]); } @@ -180,7 +180,7 @@ pub fn Blake2s(comptime out_bits: usize) type { } } - for (d.h) |*r, i| { + for (&d.h, 0..) |*r, i| { r.* ^= v[i] ^ v[i + 8]; } } @@ -568,7 +568,7 @@ pub fn Blake2b(comptime out_bits: usize) type { mem.set(u8, d.buf[d.buf_len..], 0); d.t += d.buf_len; d.round(d.buf[0..], true); - for (d.h) |*x| x.* = mem.nativeToLittle(u64, x.*); + for (&d.h) |*x| x.* = mem.nativeToLittle(u64, x.*); mem.copy(u8, out[0..], @ptrCast(*[digest_length]u8, &d.h)); } @@ -576,7 +576,7 @@ pub fn Blake2b(comptime out_bits: usize) type { var m: [16]u64 = undefined; var v: [16]u64 = undefined; - for (m) |*r, i| { + for (&m, 0..) |*r, i| { r.* = mem.readIntLittle(u64, b[8 * i ..][0..8]); } @@ -615,7 +615,7 @@ pub fn Blake2b(comptime out_bits: usize) type { } } - for (d.h) |*r, i| { + for (&d.h, 0..) |*r, i| { r.* ^= v[i] ^ v[i + 8]; } } diff --git a/lib/std/crypto/blake3.zig b/lib/std/crypto/blake3.zig index 0334abfdb0..5b8e21d922 100644 --- a/lib/std/crypto/blake3.zig +++ b/lib/std/crypto/blake3.zig @@ -192,7 +192,7 @@ const CompressGeneric = struct { for (MSG_SCHEDULE) |schedule| { round(&state, block_words, schedule); } - for (chaining_value) |_, i| { + for (chaining_value, 0..) |_, i| { state[i] ^= state[i + 8]; state[i + 8] ^= chaining_value[i]; } @@ -211,7 +211,7 @@ fn first8Words(words: [16]u32) [8]u32 { fn wordsFromLittleEndianBytes(comptime count: usize, bytes: [count * 4]u8) [count]u32 { var words: [count]u32 = undefined; - for (&words) |*word, i| { + for (&words, 0..) |*word, i| { word.* = mem.readIntSliceLittle(u32, bytes[4 * i ..]); } return words; @@ -658,7 +658,7 @@ fn testBlake3(hasher: *Blake3, input_len: usize, expected_hex: [262]u8) !void { // Setup input pattern var input_pattern: [251]u8 = undefined; - for (input_pattern) |*e, i| e.* = @truncate(u8, i); + for (&input_pattern, 0..) |*e, i| e.* = @truncate(u8, i); // Write repeating input pattern to hasher var input_counter = input_len; diff --git a/lib/std/crypto/chacha20.zig b/lib/std/crypto/chacha20.zig index 2a43f4b94c..883ee51a62 100644 --- a/lib/std/crypto/chacha20.zig +++ b/lib/std/crypto/chacha20.zig @@ -197,7 +197,7 @@ fn ChaChaVecImpl(comptime rounds_nb: usize) type { fn hchacha20(input: [16]u8, key: [32]u8) [32]u8 { var c: [4]u32 = undefined; - for (c) |_, i| { + for (c, 0..) |_, i| { c[i] = mem.readIntLittle(u32, input[4 * i ..][0..4]); } const ctx = initContext(keyToWords(key), c); @@ -338,7 +338,7 @@ fn ChaChaNonVecImpl(comptime rounds_nb: usize) type { fn hchacha20(input: [16]u8, key: [32]u8) [32]u8 { var c: [4]u32 = undefined; - for (c) |_, i| { + for (c, 0..) |_, i| { c[i] = mem.readIntLittle(u32, input[4 * i ..][0..4]); } const ctx = initContext(keyToWords(key), c); @@ -543,7 +543,7 @@ fn ChaChaPoly1305(comptime rounds_nb: usize) type { mac.final(computedTag[0..]); var acc: u8 = 0; - for (computedTag) |_, i| { + for (computedTag, 0..) |_, i| { acc |= computedTag[i] ^ tag[i]; } if (acc != 0) { diff --git a/lib/std/crypto/cmac.zig b/lib/std/crypto/cmac.zig index 911eac7902..fd00461858 100644 --- a/lib/std/crypto/cmac.zig +++ b/lib/std/crypto/cmac.zig @@ -46,19 +46,19 @@ pub fn Cmac(comptime BlockCipher: type) type { const left = block_length - self.pos; var m = msg; if (m.len > left) { - for (self.buf[self.pos..]) |*b, i| b.* ^= m[i]; + for (self.buf[self.pos..], 0..) |*b, i| b.* ^= m[i]; m = m[left..]; self.cipher_ctx.encrypt(&self.buf, &self.buf); self.pos = 0; } while (m.len > block_length) { - for (self.buf[0..block_length]) |*b, i| b.* ^= m[i]; + for (self.buf[0..block_length], 0..) |*b, i| b.* ^= m[i]; m = m[block_length..]; self.cipher_ctx.encrypt(&self.buf, &self.buf); self.pos = 0; } if (m.len > 0) { - for (self.buf[self.pos..][0..m.len]) |*b, i| b.* ^= m[i]; + for (self.buf[self.pos..][0..m.len], 0..) |*b, i| b.* ^= m[i]; self.pos += m.len; } } @@ -69,7 +69,7 @@ pub fn Cmac(comptime BlockCipher: type) type { mac = self.k2; mac[self.pos] ^= 0x80; } - for (mac) |*b, i| b.* ^= self.buf[i]; + for (&mac, 0..) |*b, i| b.* ^= self.buf[i]; self.cipher_ctx.encrypt(out, &mac); } diff --git a/lib/std/crypto/ghash_polyval.zig b/lib/std/crypto/ghash_polyval.zig index bb7318325b..908bace73e 100644 --- a/lib/std/crypto/ghash_polyval.zig +++ b/lib/std/crypto/ghash_polyval.zig @@ -320,7 +320,7 @@ fn Hash(comptime endian: std.builtin.Endian, comptime shift_key: bool) type { if (st.leftover > 0) { const want = math.min(block_length - st.leftover, mb.len); const mc = mb[0..want]; - for (mc) |x, i| { + for (mc, 0..) |x, i| { st.buf[st.leftover + i] = x; } mb = mb[want..]; @@ -337,7 +337,7 @@ fn Hash(comptime endian: std.builtin.Endian, comptime shift_key: bool) type { mb = mb[want..]; } if (mb.len > 0) { - for (mb) |x, i| { + for (mb, 0..) |x, i| { st.buf[st.leftover + i] = x; } st.leftover += mb.len; diff --git a/lib/std/crypto/gimli.zig b/lib/std/crypto/gimli.zig index 4952937697..9443b97be7 100644 --- a/lib/std/crypto/gimli.zig +++ b/lib/std/crypto/gimli.zig @@ -45,7 +45,7 @@ pub const State = struct { } inline fn endianSwap(self: *Self) void { - for (self.data) |*w| { + for (&self.data) |*w| { w.* = mem.littleToNative(u32, w.*); } } @@ -228,7 +228,7 @@ pub const Hash = struct { while (in.len > 0) { const left = State.RATE - self.buf_off; const ps = math.min(in.len, left); - for (buf[self.buf_off .. self.buf_off + ps]) |*p, i| { + for (buf[self.buf_off .. self.buf_off + ps], 0..) |*p, i| { p.* ^= in[i]; } self.buf_off += ps; @@ -329,12 +329,12 @@ pub const Aead = struct { // exactly one final non-full block, in the same way as Gimli-Hash. var data = ad; while (data.len >= State.RATE) : (data = data[State.RATE..]) { - for (buf[0..State.RATE]) |*p, i| { + for (buf[0..State.RATE], 0..) |*p, i| { p.* ^= data[i]; } state.permute(); } - for (buf[0..data.len]) |*p, i| { + for (buf[0..data.len], 0..) |*p, i| { p.* ^= data[i]; } @@ -371,13 +371,13 @@ pub const Aead = struct { in = in[State.RATE..]; out = out[State.RATE..]; }) { - for (in[0..State.RATE]) |v, i| { + for (in[0..State.RATE], 0..) |v, i| { buf[i] ^= v; } mem.copy(u8, out[0..State.RATE], buf[0..State.RATE]); state.permute(); } - for (in[0..]) |v, i| { + for (in[0..], 0..) |v, i| { buf[i] ^= v; out[i] = buf[i]; } @@ -414,13 +414,13 @@ pub const Aead = struct { out = out[State.RATE..]; }) { const d = in[0..State.RATE].*; - for (d) |v, i| { + for (d, 0..) |v, i| { out[i] = buf[i] ^ v; } mem.copy(u8, buf[0..State.RATE], d[0..State.RATE]); state.permute(); } - for (buf[0..in.len]) |*p, i| { + for (buf[0..in.len], 0..) |*p, i| { const d = in[i]; out[i] = p.* ^ d; p.* = d; diff --git a/lib/std/crypto/hmac.zig b/lib/std/crypto/hmac.zig index 5ff37f8112..457cc5ec18 100644 --- a/lib/std/crypto/hmac.zig +++ b/lib/std/crypto/hmac.zig @@ -46,11 +46,11 @@ pub fn Hmac(comptime Hash: type) type { mem.copy(u8, scratch[0..], key); } - for (ctx.o_key_pad) |*b, i| { + for (&ctx.o_key_pad, 0..) |*b, i| { b.* = scratch[i] ^ 0x5c; } - for (i_key_pad) |*b, i| { + for (&i_key_pad, 0..) |*b, i| { b.* = scratch[i] ^ 0x36; } diff --git a/lib/std/crypto/md5.zig b/lib/std/crypto/md5.zig index 9306c222ed..6276fadb43 100644 --- a/lib/std/crypto/md5.zig +++ b/lib/std/crypto/md5.zig @@ -110,7 +110,7 @@ pub const Md5 = struct { d.round(d.buf[0..]); - for (d.s) |s, j| { + for (d.s, 0..) |s, j| { mem.writeIntLittle(u32, out[4 * j ..][0..4], s); } } diff --git a/lib/std/crypto/pbkdf2.zig b/lib/std/crypto/pbkdf2.zig index b8f03bceb7..6f9783df72 100644 --- a/lib/std/crypto/pbkdf2.zig +++ b/lib/std/crypto/pbkdf2.zig @@ -138,7 +138,7 @@ pub fn pbkdf2(dk: []u8, password: []const u8, salt: []const u8, rounds: u32, com mem.copy(u8, prev_block[0..], new_block[0..]); // F (P, S, c, i) = U_1 \xor U_2 \xor ... \xor U_c - for (dk_block) |_, j| { + for (dk_block, 0..) |_, j| { dk_block[j] ^= new_block[j]; } } diff --git a/lib/std/crypto/pcurves/common.zig b/lib/std/crypto/pcurves/common.zig index 5abc6d348f..40f4a728c7 100644 --- a/lib/std/crypto/pcurves/common.zig +++ b/lib/std/crypto/pcurves/common.zig @@ -65,7 +65,7 @@ pub fn Field(comptime params: FieldParams) type { /// Swap the endianness of an encoded element. pub fn orderSwap(s: [encoded_length]u8) [encoded_length]u8 { var t = s; - for (s) |x, i| t[t.len - 1 - i] = x; + for (s, 0..) |x, i| t[t.len - 1 - i] = x; return t; } diff --git a/lib/std/crypto/pcurves/p256.zig b/lib/std/crypto/pcurves/p256.zig index 5898f83c10..d060abd12b 100644 --- a/lib/std/crypto/pcurves/p256.zig +++ b/lib/std/crypto/pcurves/p256.zig @@ -321,7 +321,7 @@ pub const P256 = struct { fn slide(s: [32]u8) [2 * 32 + 1]i8 { var e: [2 * 32 + 1]i8 = undefined; - for (s) |x, i| { + for (s, 0..) |x, i| { e[i * 2 + 0] = @as(i8, @truncate(u4, x)); e[i * 2 + 1] = @as(i8, @truncate(u4, x >> 4)); } diff --git a/lib/std/crypto/pcurves/p256/scalar.zig b/lib/std/crypto/pcurves/p256/scalar.zig index d3ac2a9b95..ce019082ef 100644 --- a/lib/std/crypto/pcurves/p256/scalar.zig +++ b/lib/std/crypto/pcurves/p256/scalar.zig @@ -187,7 +187,7 @@ const ScalarDouble = struct { var s = s_; if (endian == .Big) { - for (s_) |x, i| s[s.len - 1 - i] = x; + for (s_, 0..) |x, i| s[s.len - 1 - i] = x; } var t = ScalarDouble{ .x1 = undefined, .x2 = Fe.zero, .x3 = Fe.zero }; { diff --git a/lib/std/crypto/pcurves/p384.zig b/lib/std/crypto/pcurves/p384.zig index 0694d4f259..8ea787a417 100644 --- a/lib/std/crypto/pcurves/p384.zig +++ b/lib/std/crypto/pcurves/p384.zig @@ -321,7 +321,7 @@ pub const P384 = struct { fn slide(s: [48]u8) [2 * 48 + 1]i8 { var e: [2 * 48 + 1]i8 = undefined; - for (s) |x, i| { + for (s, 0..) |x, i| { e[i * 2 + 0] = @as(i8, @truncate(u4, x)); e[i * 2 + 1] = @as(i8, @truncate(u4, x >> 4)); } diff --git a/lib/std/crypto/pcurves/p384/scalar.zig b/lib/std/crypto/pcurves/p384/scalar.zig index b6db0c83d4..ec71a52efa 100644 --- a/lib/std/crypto/pcurves/p384/scalar.zig +++ b/lib/std/crypto/pcurves/p384/scalar.zig @@ -175,7 +175,7 @@ const ScalarDouble = struct { var s = s_; if (endian == .Big) { - for (s_) |x, i| s[s.len - 1 - i] = x; + for (s_, 0..) |x, i| s[s.len - 1 - i] = x; } var t = ScalarDouble{ .x1 = undefined, .x2 = Fe.zero }; { diff --git a/lib/std/crypto/pcurves/secp256k1.zig b/lib/std/crypto/pcurves/secp256k1.zig index 79698bd7dd..12bd022b11 100644 --- a/lib/std/crypto/pcurves/secp256k1.zig +++ b/lib/std/crypto/pcurves/secp256k1.zig @@ -349,7 +349,7 @@ pub const Secp256k1 = struct { fn slide(s: [32]u8) [2 * 32 + 1]i8 { var e: [2 * 32 + 1]i8 = undefined; - for (s) |x, i| { + for (s, 0..) |x, i| { e[i * 2 + 0] = @as(i8, @truncate(u4, x)); e[i * 2 + 1] = @as(i8, @truncate(u4, x >> 4)); } diff --git a/lib/std/crypto/pcurves/secp256k1/scalar.zig b/lib/std/crypto/pcurves/secp256k1/scalar.zig index 2d91f8bc99..0b7d6e952d 100644 --- a/lib/std/crypto/pcurves/secp256k1/scalar.zig +++ b/lib/std/crypto/pcurves/secp256k1/scalar.zig @@ -187,7 +187,7 @@ const ScalarDouble = struct { var s = s_; if (endian == .Big) { - for (s_) |x, i| s[s.len - 1 - i] = x; + for (s_, 0..) |x, i| s[s.len - 1 - i] = x; } var t = ScalarDouble{ .x1 = undefined, .x2 = Fe.zero, .x3 = Fe.zero }; { diff --git a/lib/std/crypto/poly1305.zig b/lib/std/crypto/poly1305.zig index 4f16f66cd0..e99cf144d5 100644 --- a/lib/std/crypto/poly1305.zig +++ b/lib/std/crypto/poly1305.zig @@ -82,7 +82,7 @@ pub const Poly1305 = struct { if (st.leftover > 0) { const want = std.math.min(block_length - st.leftover, mb.len); const mc = mb[0..want]; - for (mc) |x, i| { + for (mc, 0..) |x, i| { st.buf[st.leftover + i] = x; } mb = mb[want..]; @@ -103,7 +103,7 @@ pub const Poly1305 = struct { // store leftover if (mb.len > 0) { - for (mb) |x, i| { + for (mb, 0..) |x, i| { st.buf[st.leftover + i] = x; } st.leftover += mb.len; diff --git a/lib/std/crypto/salsa20.zig b/lib/std/crypto/salsa20.zig index 2027403ee2..492b8e9988 100644 --- a/lib/std/crypto/salsa20.zig +++ b/lib/std/crypto/salsa20.zig @@ -157,7 +157,7 @@ fn SalsaVecImpl(comptime rounds: comptime_int) type { fn hsalsa(input: [16]u8, key: [32]u8) [32]u8 { var c: [4]u32 = undefined; - for (c) |_, i| { + for (c, 0..) |_, i| { c[i] = mem.readIntLittle(u32, input[4 * i ..][0..4]); } const ctx = initContext(keyToWords(key), c); @@ -240,7 +240,7 @@ fn SalsaNonVecImpl(comptime rounds: comptime_int) type { } fn hashToBytes(out: *[64]u8, x: BlockVec) void { - for (x) |w, i| { + for (x, 0..) |w, i| { mem.writeIntLittle(u32, out[i * 4 ..][0..4], w); } } @@ -282,7 +282,7 @@ fn SalsaNonVecImpl(comptime rounds: comptime_int) type { fn hsalsa(input: [16]u8, key: [32]u8) [32]u8 { var c: [4]u32 = undefined; - for (c) |_, i| { + for (c, 0..) |_, i| { c[i] = mem.readIntLittle(u32, input[4 * i ..][0..4]); } const ctx = initContext(keyToWords(key), c); @@ -413,7 +413,7 @@ pub const XSalsa20Poly1305 = struct { var computedTag: [tag_length]u8 = undefined; mac.final(&computedTag); var acc: u8 = 0; - for (computedTag) |_, i| { + for (computedTag, 0..) |_, i| { acc |= computedTag[i] ^ tag[i]; } if (acc != 0) { diff --git a/lib/std/crypto/scrypt.zig b/lib/std/crypto/scrypt.zig index 9b2bf01022..dc73d974c7 100644 --- a/lib/std/crypto/scrypt.zig +++ b/lib/std/crypto/scrypt.zig @@ -31,7 +31,7 @@ fn blockCopy(dst: []align(16) u32, src: []align(16) const u32, n: usize) void { } fn blockXor(dst: []align(16) u32, src: []align(16) const u32, n: usize) void { - for (src[0 .. n * 16]) |v, i| { + for (src[0 .. n * 16], 0..) |v, i| { dst[i] ^= v; } } @@ -90,7 +90,7 @@ fn smix(b: []align(16) u8, r: u30, n: usize, v: []align(16) u32, xy: []align(16) var x = @alignCast(16, xy[0 .. 32 * r]); var y = @alignCast(16, xy[32 * r ..]); - for (x) |*v1, j| { + for (x, 0..) |*v1, j| { v1.* = mem.readIntSliceLittle(u32, b[4 * j ..]); } @@ -115,7 +115,7 @@ fn smix(b: []align(16) u8, r: u30, n: usize, v: []align(16) u32, xy: []align(16) blockMix(&tmp, y, x, r); } - for (x) |v1, j| { + for (x, 0..) |v1, j| { mem.writeIntLittle(u32, b[4 * j ..][0..4], v1); } } @@ -350,7 +350,7 @@ const crypt_format = struct { fn intDecode(comptime T: type, src: *const [(@bitSizeOf(T) + 5) / 6]u8) !T { var v: T = 0; - for (src) |x, i| { + for (src, 0..) |x, i| { const vi = mem.indexOfScalar(u8, &map64, x) orelse return EncodingError.InvalidEncoding; v |= @intCast(T, vi) << @intCast(math.Log2Int(T), i * 6); } @@ -365,10 +365,10 @@ const crypt_format = struct { } const leftover = src[i * 4 ..]; var v: u24 = 0; - for (leftover) |_, j| { + for (leftover, 0..) |_, j| { v |= @as(u24, try intDecode(u6, leftover[j..][0..1])) << @intCast(u5, j * 6); } - for (dst[i * 3 ..]) |*x, j| { + for (dst[i * 3 ..], 0..) |*x, j| { x.* = @truncate(u8, v >> @intCast(u5, j * 8)); } } @@ -381,7 +381,7 @@ const crypt_format = struct { } const leftover = src[i * 3 ..]; var v: u24 = 0; - for (leftover) |x, j| { + for (leftover, 0..) |x, j| { v |= @as(u24, x) << @intCast(u5, j * 8); } intEncode(dst[i * 4 ..], v); diff --git a/lib/std/crypto/sha1.zig b/lib/std/crypto/sha1.zig index 99289e35c4..4d11b04eb5 100644 --- a/lib/std/crypto/sha1.zig +++ b/lib/std/crypto/sha1.zig @@ -105,7 +105,7 @@ pub const Sha1 = struct { d.round(d.buf[0..]); - for (d.s) |s, j| { + for (d.s, 0..) |s, j| { mem.writeIntBig(u32, out[4 * j ..][0..4], s); } } diff --git a/lib/std/crypto/sha2.zig b/lib/std/crypto/sha2.zig index 217dea3723..24c22ecc9f 100644 --- a/lib/std/crypto/sha2.zig +++ b/lib/std/crypto/sha2.zig @@ -175,7 +175,7 @@ fn Sha2x32(comptime params: Sha2Params32) type { // May truncate for possible 224 output const rr = d.s[0 .. params.digest_bits / 32]; - for (rr) |s, j| { + for (rr, 0..) |s, j| { mem.writeIntBig(u32, out[4 * j ..][0..4], s); } } @@ -199,7 +199,7 @@ fn Sha2x32(comptime params: Sha2Params32) type { fn round(d: *Self, b: *const [64]u8) void { var s: [64]u32 align(16) = undefined; - for (@ptrCast(*align(1) const [16]u32, b)) |*elem, i| { + for (@ptrCast(*align(1) const [16]u32, b), 0..) |*elem, i| { s[i] = mem.readIntBig(u32, mem.asBytes(elem)); } @@ -665,7 +665,7 @@ fn Sha2x64(comptime params: Sha2Params64) type { // May truncate for possible 384 output const rr = d.s[0 .. params.digest_bits / 64]; - for (rr) |s, j| { + for (rr, 0..) |s, j| { mem.writeIntBig(u64, out[8 * j ..][0..8], s); } } diff --git a/lib/std/crypto/sha3.zig b/lib/std/crypto/sha3.zig index 7735d7bc71..c2801a4709 100644 --- a/lib/std/crypto/sha3.zig +++ b/lib/std/crypto/sha3.zig @@ -43,7 +43,7 @@ fn Keccak(comptime bits: usize, comptime delim: u8) type { // absorb while (len >= rate) { - for (d.s[offset .. offset + rate]) |*r, i| + for (d.s[offset .. offset + rate], 0..) |*r, i| r.* ^= b[ip..][i]; keccakF(1600, &d.s); @@ -54,7 +54,7 @@ fn Keccak(comptime bits: usize, comptime delim: u8) type { offset = 0; } - for (d.s[offset .. offset + len]) |*r, i| + for (d.s[offset .. offset + len], 0..) |*r, i| r.* ^= b[ip..][i]; d.offset = offset + len; @@ -126,7 +126,7 @@ fn keccakF(comptime F: usize, d: *[F / 8]u8) void { var t = [_]u64{0} ** 1; var c = [_]u64{0} ** 5; - for (s) |*r, i| { + for (&s, 0..) |*r, i| { r.* = mem.readIntLittle(u64, d[8 * i ..][0..8]); } @@ -171,7 +171,7 @@ fn keccakF(comptime F: usize, d: *[F / 8]u8) void { s[0] ^= round; } - for (s) |r, i| { + for (s, 0..) |r, i| { mem.writeIntLittle(u64, d[8 * i ..][0..8], r); } } diff --git a/lib/std/crypto/siphash.zig b/lib/std/crypto/siphash.zig index e527e4558a..16388439d1 100644 --- a/lib/std/crypto/siphash.zig +++ b/lib/std/crypto/siphash.zig @@ -339,7 +339,7 @@ test "siphash64-2-4 sanity" { const siphash = SipHash64(2, 4); var buffer: [64]u8 = undefined; - for (vectors) |vector, i| { + for (vectors, 0..) |vector, i| { buffer[i] = @intCast(u8, i); var out: [siphash.mac_length]u8 = undefined; @@ -419,7 +419,7 @@ test "siphash128-2-4 sanity" { const siphash = SipHash128(2, 4); var buffer: [64]u8 = undefined; - for (vectors) |vector, i| { + for (vectors, 0..) |vector, i| { buffer[i] = @intCast(u8, i); var out: [siphash.mac_length]u8 = undefined; @@ -430,7 +430,7 @@ test "siphash128-2-4 sanity" { test "iterative non-divisible update" { var buf: [1024]u8 = undefined; - for (buf) |*e, i| { + for (&buf, 0..) |*e, i| { e.* = @truncate(u8, i); } diff --git a/lib/std/crypto/test.zig b/lib/std/crypto/test.zig index 656fa89cfe..f891d8c320 100644 --- a/lib/std/crypto/test.zig +++ b/lib/std/crypto/test.zig @@ -13,7 +13,7 @@ pub fn assertEqualHash(comptime Hasher: anytype, comptime expected_hex: *const [ // Assert `expected` == hex(`input`) where `input` is a bytestring pub fn assertEqual(comptime expected_hex: [:0]const u8, input: []const u8) !void { var expected_bytes: [expected_hex.len / 2]u8 = undefined; - for (expected_bytes) |*r, i| { + for (&expected_bytes, 0..) |*r, i| { r.* = fmt.parseInt(u8, expected_hex[2 * i .. 2 * i + 2], 16) catch unreachable; } diff --git a/lib/std/crypto/tls.zig b/lib/std/crypto/tls.zig index 7d89da8929..526a5f2175 100644 --- a/lib/std/crypto/tls.zig +++ b/lib/std/crypto/tls.zig @@ -344,7 +344,7 @@ pub inline fn array(comptime elem_size: comptime_int, bytes: anytype) [2 + bytes pub inline fn enum_array(comptime E: type, comptime tags: []const E) [2 + @sizeOf(E) * tags.len]u8 { assert(@sizeOf(E) == 2); var result: [tags.len * 2]u8 = undefined; - for (tags) |elem, i| { + for (tags, 0..) |elem, i| { result[i * 2] = @truncate(u8, @enumToInt(elem) >> 8); result[i * 2 + 1] = @truncate(u8, @enumToInt(elem)); } diff --git a/lib/std/crypto/utils.zig b/lib/std/crypto/utils.zig index fd7264e737..ec4c322963 100644 --- a/lib/std/crypto/utils.zig +++ b/lib/std/crypto/utils.zig @@ -18,7 +18,7 @@ pub fn timingSafeEql(comptime T: type, a: T, b: T) bool { @compileError("Elements to be compared must be integers"); } var acc = @as(C, 0); - for (a) |x, i| { + for (a, 0..) |x, i| { acc |= x ^ b[i]; } const s = @typeInfo(C).Int.bits; @@ -64,7 +64,7 @@ pub fn timingSafeCompare(comptime T: type, a: []const T, b: []const T, endian: E eq &= @truncate(T, (@as(Cext, (x2 ^ x1)) -% 1) >> bits); } } else { - for (a) |x1, i| { + for (a, 0..) |x1, i| { const x2 = b[i]; gt |= @truncate(T, (@as(Cext, x2) -% @as(Cext, x1)) >> bits) & eq; eq &= @truncate(T, (@as(Cext, (x2 ^ x1)) -% 1) >> bits); diff --git a/lib/std/crypto/xoodoo.zig b/lib/std/crypto/xoodoo.zig index bbc579f073..ea3554a635 100644 --- a/lib/std/crypto/xoodoo.zig +++ b/lib/std/crypto/xoodoo.zig @@ -66,7 +66,7 @@ pub const State = struct { /// XOR bytes into the beginning of the state. pub fn addBytes(self: *State, bytes: []const u8) void { self.endianSwap(); - for (self.asBytes()[0..bytes.len]) |*byte, i| { + for (self.asBytes()[0..bytes.len], 0..) |*byte, i| { byte.* ^= bytes[i]; } self.endianSwap(); diff --git a/lib/std/debug.zig b/lib/std/debug.zig index 3708c4fe81..97acf81af6 100644 --- a/lib/std/debug.zig +++ b/lib/std/debug.zig @@ -213,7 +213,7 @@ pub fn captureStackTrace(first_address: ?usize, stack_trace: *std.builtin.StackT var addr_buf_stack: [32]usize = undefined; const addr_buf = if (addr_buf_stack.len > addrs.len) addr_buf_stack[0..] else addrs; const n = walkStackWindows(addr_buf[0..]); - const first_index = for (addr_buf[0..n]) |addr, i| { + const first_index = for (addr_buf[0..n], 0..) |addr, i| { if (addr == first_addr) { break i; } @@ -224,13 +224,13 @@ pub fn captureStackTrace(first_address: ?usize, stack_trace: *std.builtin.StackT const end_index = math.min(first_index + addrs.len, n); const slice = addr_buf[first_index..end_index]; // We use a for loop here because slice and addrs may alias. - for (slice) |addr, i| { + for (slice, 0..) |addr, i| { addrs[i] = addr; } stack_trace.index = slice.len; } else { var it = StackIterator.init(first_address, null); - for (stack_trace.instruction_addresses) |*addr, i| { + for (stack_trace.instruction_addresses, 0..) |*addr, i| { addr.* = it.next() orelse { stack_trace.index = i; return; @@ -621,7 +621,7 @@ pub fn writeCurrentStackTraceWindows( const n = walkStackWindows(addr_buf[0..]); const addrs = addr_buf[0..n]; var start_i: usize = if (start_addr) |saddr| blk: { - for (addrs) |addr, i| { + for (addrs, 0..) |addr, i| { if (addr == saddr) break :blk i; } return; @@ -2138,7 +2138,7 @@ pub fn ConfigurableTrace(comptime size: usize, comptime stack_frame_count: usize ) catch return; return; }; - for (t.addrs[0..end]) |frames_array, i| { + for (t.addrs[0..end], 0..) |frames_array, i| { stderr.print("{s}:\n", .{t.notes[i]}) catch return; var frames_array_mutable = frames_array; const frames = mem.sliceTo(frames_array_mutable[0..], 0); diff --git a/lib/std/dwarf.zig b/lib/std/dwarf.zig index a6f38db437..99dff14c36 100644 --- a/lib/std/dwarf.zig +++ b/lib/std/dwarf.zig @@ -1064,7 +1064,7 @@ pub const DwarfInfo = struct { .has_children = table_entry.has_children, }; try result.attrs.resize(allocator, table_entry.attrs.items.len); - for (table_entry.attrs.items) |attr, i| { + for (table_entry.attrs.items, 0..) |attr, i| { result.attrs.items[i] = Die.Attr{ .id = attr.attr_id, .value = try parseFormValue( diff --git a/lib/std/enums.zig b/lib/std/enums.zig index 2640e6aac9..61c2f01e23 100644 --- a/lib/std/enums.zig +++ b/lib/std/enums.zig @@ -35,7 +35,7 @@ pub fn EnumFieldStruct(comptime E: type, comptime Data: type, comptime field_def pub fn valuesFromFields(comptime E: type, comptime fields: []const EnumField) []const E { comptime { var result: [fields.len]E = undefined; - for (fields) |f, i| { + for (fields, 0..) |f, i| { result[i] = @field(E, f.name); } return &result; @@ -1331,7 +1331,7 @@ pub fn EnumIndexer(comptime E: type) type { pub const Key = E; pub const count = fields_len; pub fn indexOf(e: E) usize { - for (keys) |k, i| { + for (keys, 0..) |k, i| { if (k == e) return i; } unreachable; diff --git a/lib/std/event/loop.zig b/lib/std/event/loop.zig index c851a9b80c..34f74e10d2 100644 --- a/lib/std/event/loop.zig +++ b/lib/std/event/loop.zig @@ -278,7 +278,7 @@ pub const Loop = struct { const empty_kevs = &[0]os.Kevent{}; - for (self.eventfd_resume_nodes) |*eventfd_node, i| { + for (self.eventfd_resume_nodes, 0..) |*eventfd_node, i| { eventfd_node.* = std.atomic.Stack(ResumeNode.EventFd).Node{ .data = ResumeNode.EventFd{ .base = ResumeNode{ @@ -343,7 +343,7 @@ pub const Loop = struct { const empty_kevs = &[0]os.Kevent{}; - for (self.eventfd_resume_nodes) |*eventfd_node, i| { + for (self.eventfd_resume_nodes, 0..) |*eventfd_node, i| { eventfd_node.* = std.atomic.Stack(ResumeNode.EventFd).Node{ .data = ResumeNode.EventFd{ .base = ResumeNode{ diff --git a/lib/std/fmt.zig b/lib/std/fmt.zig index f2ee24a9e3..0da25fde78 100644 --- a/lib/std/fmt.zig +++ b/lib/std/fmt.zig @@ -570,7 +570,7 @@ pub fn formatType( return writer.writeAll("{ ... }"); } try writer.writeAll("{"); - inline for (info.fields) |f, i| { + inline for (info.fields, 0..) |f, i| { if (i == 0) { try writer.writeAll(" "); } else { @@ -585,7 +585,7 @@ pub fn formatType( return writer.writeAll("{ ... }"); } try writer.writeAll("{"); - inline for (info.fields) |f, i| { + inline for (info.fields, 0..) |f, i| { if (i == 0) { try writer.writeAll(" ."); } else { @@ -612,7 +612,7 @@ pub fn formatType( } } if (comptime std.meta.trait.isZigString(info.child)) { - for (value) |item, i| { + for (value, 0..) |item, i| { comptime checkTextFmt(actual_fmt); if (i != 0) try formatBuf(", ", options, writer); try formatBuf(item, options, writer); @@ -659,7 +659,7 @@ pub fn formatType( } } try writer.writeAll("{ "); - for (value) |elem, i| { + for (value, 0..) |elem, i| { try formatType(elem, actual_fmt, options, writer, max_depth - 1); if (i != value.len - 1) { try writer.writeAll(", "); @@ -684,7 +684,7 @@ pub fn formatType( } } try writer.writeAll("{ "); - for (value) |elem, i| { + for (value, 0..) |elem, i| { try formatType(elem, actual_fmt, options, writer, max_depth - 1); if (i < value.len - 1) { try writer.writeAll(", "); diff --git a/lib/std/fmt/parse_float/decimal.zig b/lib/std/fmt/parse_float/decimal.zig index 1a4c7ebb0d..9dbe7095ac 100644 --- a/lib/std/fmt/parse_float/decimal.zig +++ b/lib/std/fmt/parse_float/decimal.zig @@ -475,7 +475,7 @@ pub fn Decimal(comptime T: type) type { const x = pow2_to_pow5_table[shift]; // Compare leading digits of current to check if lexicographically less than cutoff. - for (x.cutoff) |p5, i| { + for (x.cutoff, 0..) |p5, i| { if (i >= self.num_digits) { return x.delta - 1; } else if (self.digits[i] == p5 - '0') { // digits are stored as integers diff --git a/lib/std/fs/path.zig b/lib/std/fs/path.zig index ebb2ec82d8..150eada38b 100644 --- a/lib/std/fs/path.zig +++ b/lib/std/fs/path.zig @@ -48,7 +48,7 @@ fn joinSepMaybeZ(allocator: Allocator, separator: u8, comptime sepPredicate: fn // Find first non-empty path index. const first_path_index = blk: { - for (paths) |path, index| { + for (paths, 0..) |path, index| { if (path.len == 0) continue else break :blk index; } @@ -476,7 +476,7 @@ pub fn resolveWindows(allocator: Allocator, paths: []const []const u8) ![]u8 { var drive_kind = WindowsPath.Kind.None; var have_abs_path = false; var first_index: usize = 0; - for (paths) |p, i| { + for (paths, 0..) |p, i| { const parsed = windowsParsePath(p); if (parsed.is_abs) { have_abs_path = true; @@ -504,7 +504,7 @@ pub fn resolveWindows(allocator: Allocator, paths: []const []const u8) ![]u8 { first_index = 0; var correct_disk_designator = false; - for (paths) |p, i| { + for (paths, 0..) |p, i| { const parsed = windowsParsePath(p); if (parsed.kind != WindowsPath.Kind.None) { if (parsed.kind == drive_kind) { diff --git a/lib/std/fs/wasi.zig b/lib/std/fs/wasi.zig index fa9de0dff1..75c9b1df78 100644 --- a/lib/std/fs/wasi.zig +++ b/lib/std/fs/wasi.zig @@ -15,7 +15,7 @@ pub const Preopens = struct { names: []const []const u8, pub fn find(p: Preopens, name: []const u8) ?os.fd_t { - for (p.names) |elem_name, i| { + for (p.names, 0..) |elem_name, i| { if (mem.eql(u8, elem_name, name)) { return @intCast(os.fd_t, i); } diff --git a/lib/std/hash/crc.zig b/lib/std/hash/crc.zig index 1c69978f80..271b4f93da 100644 --- a/lib/std/hash/crc.zig +++ b/lib/std/hash/crc.zig @@ -35,7 +35,7 @@ pub fn Crc(comptime W: type, comptime algorithm: Algorithm(W)) type { @as(I, algorithm.polynomial) << (@bitSizeOf(I) - @bitSizeOf(W)); var table: [256]I = undefined; - for (table) |*e, i| { + for (&table, 0..) |*e, i| { var crc: I = i; if (algorithm.reflect_input) { var j: usize = 0; @@ -124,7 +124,7 @@ pub fn Crc32WithPoly(comptime poly: Polynomial) type { @setEvalBranchQuota(20000); var tables: [8][256]u32 = undefined; - for (tables[0]) |*e, i| { + for (&tables[0], 0..) |*e, i| { var crc = @intCast(u32, i); var j: usize = 0; while (j < 8) : (j += 1) { @@ -217,7 +217,7 @@ pub fn Crc32SmallWithPoly(comptime poly: Polynomial) type { const lookup_table = block: { var table: [16]u32 = undefined; - for (table) |*e, i| { + for (&table, 0..) |*e, i| { var crc = @intCast(u32, i * 16); var j: usize = 0; while (j < 8) : (j += 1) { diff --git a/lib/std/hash/wyhash.zig b/lib/std/hash/wyhash.zig index 9dda198a06..2f30c26b75 100644 --- a/lib/std/hash/wyhash.zig +++ b/lib/std/hash/wyhash.zig @@ -207,7 +207,7 @@ test "test vectors streaming" { test "iterative non-divisible update" { var buf: [8192]u8 = undefined; - for (buf) |*e, i| { + for (&buf, 0..) |*e, i| { e.* = @truncate(u8, i); } diff --git a/lib/std/hash_map.zig b/lib/std/hash_map.zig index 05205e6f07..78fcf68b56 100644 --- a/lib/std/hash_map.zig +++ b/lib/std/hash_map.zig @@ -2119,7 +2119,7 @@ test "std.hash_map getOrPutAdapted" { var real_keys: [keys.len]u64 = undefined; - inline for (keys) |key_str, i| { + inline for (keys, 0..) |key_str, i| { const result = try map.getOrPutAdapted(key_str, AdaptedContext{}); try testing.expect(!result.found_existing); real_keys[i] = std.fmt.parseInt(u64, key_str, 10) catch unreachable; @@ -2129,7 +2129,7 @@ test "std.hash_map getOrPutAdapted" { try testing.expectEqual(map.count(), keys.len); - inline for (keys) |key_str, i| { + inline for (keys, 0..) |key_str, i| { const result = try map.getOrPutAdapted(key_str, AdaptedContext{}); try testing.expect(result.found_existing); try testing.expectEqual(real_keys[i], result.key_ptr.*); diff --git a/lib/std/heap.zig b/lib/std/heap.zig index d8e88c4933..c15e5d0ec2 100644 --- a/lib/std/heap.zig +++ b/lib/std/heap.zig @@ -724,7 +724,7 @@ pub fn testAllocator(base_allocator: mem.Allocator) !void { var slice = try allocator.alloc(*i32, 100); try testing.expect(slice.len == 100); - for (slice) |*item, i| { + for (slice, 0..) |*item, i| { item.* = try allocator.create(i32); item.*.* = @intCast(i32, i); } @@ -732,7 +732,7 @@ pub fn testAllocator(base_allocator: mem.Allocator) !void { slice = try allocator.realloc(slice, 20000); try testing.expect(slice.len == 20000); - for (slice[0..100]) |item, i| { + for (slice[0..100], 0..) |item, i| { try testing.expect(item.* == @intCast(i32, i)); allocator.destroy(item); } diff --git a/lib/std/heap/WasmPageAllocator.zig b/lib/std/heap/WasmPageAllocator.zig index 70b93c0508..4084eaa88e 100644 --- a/lib/std/heap/WasmPageAllocator.zig +++ b/lib/std/heap/WasmPageAllocator.zig @@ -62,7 +62,7 @@ const FreeBlock = struct { fn useRecycled(self: FreeBlock, num_pages: usize, log2_align: u8) usize { @setCold(true); - for (self.data) |segment, i| { + for (self.data, 0..) |segment, i| { const spills_into_next = @bitCast(i128, segment) < 0; const has_enough_bits = @popCount(segment) >= num_pages; diff --git a/lib/std/heap/general_purpose_allocator.zig b/lib/std/heap/general_purpose_allocator.zig index 4f8be3804c..452480dc7a 100644 --- a/lib/std/heap/general_purpose_allocator.zig +++ b/lib/std/heap/general_purpose_allocator.zig @@ -349,7 +349,7 @@ pub fn GeneralPurposeAllocator(comptime config: Config) type { /// Emits log messages for leaks and then returns whether there were any leaks. pub fn detectLeaks(self: *Self) bool { var leaks = false; - for (self.buckets) |optional_bucket, bucket_i| { + for (self.buckets, 0..) |optional_bucket, bucket_i| { const first_bucket = optional_bucket orelse continue; const size_class = @as(usize, 1) << @intCast(math.Log2Int(usize), bucket_i); const used_bits_count = usedBitsCount(size_class); diff --git a/lib/std/json.zig b/lib/std/json.zig index 96e41e93c2..0cce71b1e6 100644 --- a/lib/std/json.zig +++ b/lib/std/json.zig @@ -1280,7 +1280,7 @@ fn parsedEqual(a: anytype, b: @TypeOf(a)) bool { } }, .Array => { - for (a) |e, i| + for (a, 0..) |e, i| if (!parsedEqual(e, b[i])) return false; return true; }, @@ -1294,7 +1294,7 @@ fn parsedEqual(a: anytype, b: @TypeOf(a)) bool { .One => return parsedEqual(a.*, b.*), .Slice => { if (a.len != b.len) return false; - for (a) |e, i| + for (a, 0..) |e, i| if (!parsedEqual(e, b[i])) return false; return true; }, @@ -1518,7 +1518,7 @@ fn parseInternal( var r: T = undefined; var fields_seen = [_]bool{false} ** structInfo.fields.len; errdefer { - inline for (structInfo.fields) |field, i| { + inline for (structInfo.fields, 0..) |field, i| { if (fields_seen[i] and !field.is_comptime) { parseFree(field.type, @field(r, field.name), options); } @@ -1533,7 +1533,7 @@ fn parseInternal( var child_options = options; child_options.allow_trailing_data = true; var found = false; - inline for (structInfo.fields) |field, i| { + inline for (structInfo.fields, 0..) |field, i| { // TODO: using switches here segfault the compiler (#2727?) if ((stringToken.escapes == .None and mem.eql(u8, field.name, key_source_slice)) or (stringToken.escapes == .Some and (field.name.len == stringToken.decodedLength() and encodesTo(field.name, key_source_slice)))) { // if (switch (stringToken.escapes) { @@ -1584,7 +1584,7 @@ fn parseInternal( else => return error.UnexpectedToken, } } - inline for (structInfo.fields) |field, i| { + inline for (structInfo.fields, 0..) |field, i| { if (!fields_seen[i]) { if (field.default_value) |default_ptr| { if (!field.is_comptime) { @@ -2367,7 +2367,7 @@ pub fn stringify( if (child_options.whitespace) |*whitespace| { whitespace.indent_level += 1; } - for (value) |x, i| { + for (value, 0..) |x, i| { if (i != 0) { try out_stream.writeByte(','); } diff --git a/lib/std/json/test.zig b/lib/std/json/test.zig index 3c9414a59c..067bc2920b 100644 --- a/lib/std/json/test.zig +++ b/lib/std/json/test.zig @@ -2717,7 +2717,7 @@ test "string copy option" { const copy_addr = &obj_copy.get("noescape").?.String[0]; var found_nocopy = false; - for (input) |_, index| { + for (input, 0..) |_, index| { try testing.expect(copy_addr != &input[index]); if (nocopy_addr == &input[index]) { found_nocopy = true; diff --git a/lib/std/math/big/int.zig b/lib/std/math/big/int.zig index 21f5015c6c..b7725b9ae9 100644 --- a/lib/std/math/big/int.zig +++ b/lib/std/math/big/int.zig @@ -1478,11 +1478,11 @@ pub const Mutable = struct { // const x_trailing = std.mem.indexOfScalar(Limb, x.limbs[0..x.len], 0).?; // const y_trailing = std.mem.indexOfScalar(Limb, y.limbs[0..y.len], 0).?; - const x_trailing = for (x.limbs[0..x.len]) |xi, i| { + const x_trailing = for (x.limbs[0..x.len], 0..) |xi, i| { if (xi != 0) break i; } else unreachable; - const y_trailing = for (y.limbs[0..y.len]) |yi, i| { + const y_trailing = for (y.limbs[0..y.len], 0..) |yi, i| { if (yi != 0) break i; } else unreachable; @@ -2108,7 +2108,7 @@ pub const Const = struct { if (@sizeOf(UT) <= @sizeOf(Limb)) { r = @intCast(UT, self.limbs[0]); } else { - for (self.limbs[0..self.limbs.len]) |_, ri| { + for (self.limbs[0..self.limbs.len], 0..) |_, ri| { const limb = self.limbs[self.limbs.len - ri - 1]; r <<= limb_bits; r |= limb; @@ -3594,7 +3594,7 @@ fn lldiv1(quo: []Limb, rem: *Limb, a: []const Limb, b: Limb) void { assert(quo.len >= a.len); rem.* = 0; - for (a) |_, ri| { + for (a, 0..) |_, ri| { const i = a.len - ri - 1; const pdiv = ((@as(DoubleLimb, rem.*) << limb_bits) | a[i]); @@ -3620,7 +3620,7 @@ fn lldiv0p5(quo: []Limb, rem: *Limb, a: []const Limb, b: HalfLimb) void { assert(quo.len >= a.len); rem.* = 0; - for (a) |_, ri| { + for (a, 0..) |_, ri| { const i = a.len - ri - 1; const ai_high = a[i] >> half_limb_bits; const ai_low = a[i] & ((1 << half_limb_bits) - 1); @@ -4028,7 +4028,7 @@ fn llsquareBasecase(r: []Limb, x: []const Limb) void { // - Each mixed-product term appears twice for each column, // - Squares are always in the 2k (0 <= k < N) column - for (x_norm) |v, i| { + for (x_norm, 0..) |v, i| { // Accumulate all the x[i]*x[j] (with x!=j) products const overflow = llmulLimb(.add, r[2 * i + 1 ..], x_norm[i + 1 ..], v); assert(!overflow); @@ -4037,7 +4037,7 @@ fn llsquareBasecase(r: []Limb, x: []const Limb) void { // Each product appears twice, multiply by 2 llshl(r, r[0 .. 2 * x_norm.len], 1); - for (x_norm) |v, i| { + for (x_norm, 0..) |v, i| { // Compute and add the squares const overflow = llmulLimb(.add, r[2 * i ..], x[i .. i + 1], v); assert(!overflow); diff --git a/lib/std/math/big/rational.zig b/lib/std/math/big/rational.zig index 98433b26ff..c3609a6fa2 100644 --- a/lib/std/math/big/rational.zig +++ b/lib/std/math/big/rational.zig @@ -70,7 +70,7 @@ pub const Rational = struct { start += 1; } - for (str) |c, i| { + for (str, 0..) |c, i| { switch (state) { State.Integer => { switch (c) { diff --git a/lib/std/mem.zig b/lib/std/mem.zig index 371ef8fd8d..fdd1c05862 100644 --- a/lib/std/mem.zig +++ b/lib/std/mem.zig @@ -169,7 +169,7 @@ test "Allocator.resize" { var values = try testing.allocator.alloc(T, 100); defer testing.allocator.free(values); - for (values) |*v, i| v.* = @intCast(T, i); + for (values, 0..) |*v, i| v.* = @intCast(T, i); if (!testing.allocator.resize(values, values.len + 10)) return error.OutOfMemory; values = values.ptr[0 .. values.len + 10]; try testing.expect(values.len == 110); @@ -185,7 +185,7 @@ test "Allocator.resize" { var values = try testing.allocator.alloc(T, 100); defer testing.allocator.free(values); - for (values) |*v, i| v.* = @intToFloat(T, i); + for (values, 0..) |*v, i| v.* = @intToFloat(T, i); if (!testing.allocator.resize(values, values.len + 10)) return error.OutOfMemory; values = values.ptr[0 .. values.len + 10]; try testing.expect(values.len == 110); @@ -201,7 +201,7 @@ pub fn copy(comptime T: type, dest: []T, source: []const T) void { // this and automatically omit safety checks for loops @setRuntimeSafety(false); assert(dest.len >= source.len); - for (source) |s, i| + for (source, 0..) |s, i| dest[i] = s; } @@ -445,7 +445,7 @@ pub fn zeroInit(comptime T: type, init: anytype) T { var value: T = undefined; - inline for (struct_info.fields) |field, i| { + inline for (struct_info.fields, 0..) |field, i| { if (field.is_comptime) { continue; } @@ -611,7 +611,7 @@ test "lessThan" { pub fn eql(comptime T: type, a: []const T, b: []const T) bool { if (a.len != b.len) return false; if (a.ptr == b.ptr) return true; - for (a) |item, index| { + for (a, 0..) |item, index| { if (b[index] != item) return false; } return true; @@ -1261,7 +1261,7 @@ pub fn readVarInt(comptime ReturnType: type, bytes: []const u8, endian: Endian) }, .Little => { const ShiftType = math.Log2Int(ReturnType); - for (bytes) |b, index| { + for (bytes, 0..) |b, index| { result = result | (@as(ReturnType, b) << @intCast(ShiftType, index * 8)); } }, @@ -1328,7 +1328,7 @@ pub fn readVarPackedInt( }, .Little => { int = read_bytes[0] >> bit_shift; - for (read_bytes[1..]) |elem, i| { + for (read_bytes[1..], 0..) |elem, i| { int |= (@as(uN, elem) << @intCast(Log2N, (8 * (i + 1) - bit_shift))); } }, @@ -2907,7 +2907,7 @@ pub fn indexOfMin(comptime T: type, slice: []const T) usize { assert(slice.len > 0); var best = slice[0]; var index: usize = 0; - for (slice[1..]) |item, i| { + for (slice[1..], 0..) |item, i| { if (item < best) { best = item; index = i + 1; @@ -2928,7 +2928,7 @@ pub fn indexOfMax(comptime T: type, slice: []const T) usize { assert(slice.len > 0); var best = slice[0]; var index: usize = 0; - for (slice[1..]) |item, i| { + for (slice[1..], 0..) |item, i| { if (item > best) { best = item; index = i + 1; @@ -2952,7 +2952,7 @@ pub fn indexOfMinMax(comptime T: type, slice: []const T) struct { index_min: usi var maxVal = slice[0]; var minIdx: usize = 0; var maxIdx: usize = 0; - for (slice[1..]) |item, i| { + for (slice[1..], 0..) |item, i| { if (item < minVal) { minVal = item; minIdx = i + 1; @@ -3117,7 +3117,7 @@ test "replace" { /// Replace all occurences of `needle` with `replacement`. pub fn replaceScalar(comptime T: type, slice: []T, needle: T, replacement: T) void { - for (slice) |e, i| { + for (slice, 0..) |e, i| { if (e == needle) { slice[i] = replacement; } @@ -3372,7 +3372,7 @@ test "asBytes" { try testing.expect(eql(u8, asBytes(&deadbeef), deadbeef_bytes)); var codeface = @as(u32, 0xC0DEFACE); - for (asBytes(&codeface).*) |*b| + for (asBytes(&codeface)) |*b| b.* = 0; try testing.expect(codeface == 0); diff --git a/lib/std/meta.zig b/lib/std/meta.zig index 7ab4c9f25c..07f42075b4 100644 --- a/lib/std/meta.zig +++ b/lib/std/meta.zig @@ -117,7 +117,7 @@ pub fn stringToEnum(comptime T: type, str: []const u8) ?T { const kvs = comptime build_kvs: { const EnumKV = struct { []const u8, T }; var kvs_array: [@typeInfo(T).Enum.fields.len]EnumKV = undefined; - inline for (@typeInfo(T).Enum.fields) |enumField, i| { + inline for (@typeInfo(T).Enum.fields, 0..) |enumField, i| { kvs_array[i] = .{ enumField.name, @field(T, enumField.name) }; } break :build_kvs kvs_array[0..]; @@ -552,7 +552,7 @@ pub fn fieldNames(comptime T: type) *const [fields(T).len][]const u8 { comptime { const fieldInfos = fields(T); var names: [fieldInfos.len][]const u8 = undefined; - for (fieldInfos) |field, i| { + for (fieldInfos, 0..) |field, i| { names[i] = field.name; } return &names; @@ -593,7 +593,7 @@ pub fn tags(comptime T: type) *const [fields(T).len]T { comptime { const fieldInfos = fields(T); var res: [fieldInfos.len]T = undefined; - for (fieldInfos) |field, i| { + for (fieldInfos, 0..) |field, i| { res[i] = @field(T, field.name); } return &res; @@ -631,7 +631,7 @@ pub fn FieldEnum(comptime T: type) type { if (@typeInfo(T) == .Union) { if (@typeInfo(T).Union.tag_type) |tag_type| { - for (std.enums.values(tag_type)) |v, i| { + for (std.enums.values(tag_type), 0..) |v, i| { if (@enumToInt(v) != i) break; // enum values not consecutive if (!std.mem.eql(u8, @tagName(v), field_infos[i].name)) break; // fields out of order } else { @@ -642,7 +642,7 @@ pub fn FieldEnum(comptime T: type) type { var enumFields: [field_infos.len]std.builtin.Type.EnumField = undefined; var decls = [_]std.builtin.Type.Declaration{}; - inline for (field_infos) |field, i| { + inline for (field_infos, 0..) |field, i| { enumFields[i] = .{ .name = field.name, .value = i, @@ -672,7 +672,7 @@ fn expectEqualEnum(expected: anytype, actual: @TypeOf(expected)) !void { const expected_fields = @typeInfo(expected).Enum.fields; const actual_fields = @typeInfo(actual).Enum.fields; if (expected_fields.len != actual_fields.len) return error.FailedTest; - for (expected_fields) |expected_field, i| { + for (expected_fields, 0..) |expected_field, i| { const actual_field = actual_fields[i]; try testing.expectEqual(expected_field.value, actual_field.value); try testing.expectEqualStrings(expected_field.name, actual_field.name); @@ -682,7 +682,7 @@ fn expectEqualEnum(expected: anytype, actual: @TypeOf(expected)) !void { const expected_decls = @typeInfo(expected).Enum.decls; const actual_decls = @typeInfo(actual).Enum.decls; if (expected_decls.len != actual_decls.len) return error.FailedTest; - for (expected_decls) |expected_decl, i| { + for (expected_decls, 0..) |expected_decl, i| { const actual_decl = actual_decls[i]; try testing.expectEqual(expected_decl.is_pub, actual_decl.is_pub); try testing.expectEqualStrings(expected_decl.name, actual_decl.name); @@ -716,7 +716,7 @@ pub fn DeclEnum(comptime T: type) type { const fieldInfos = std.meta.declarations(T); var enumDecls: [fieldInfos.len]std.builtin.Type.EnumField = undefined; var decls = [_]std.builtin.Type.Declaration{}; - inline for (fieldInfos) |field, i| { + inline for (fieldInfos, 0..) |field, i| { enumDecls[i] = .{ .name = field.name, .value = i }; } return @Type(.{ @@ -870,7 +870,7 @@ pub fn eql(a: anytype, b: @TypeOf(a)) bool { }, .Array => { if (a.len != b.len) return false; - for (a) |e, i| + for (a, 0..) |e, i| if (!eql(e, b[i])) return false; return true; }, @@ -988,7 +988,7 @@ pub fn intToEnum(comptime EnumTag: type, tag_int: anytype) IntToEnumError!EnumTa /// Given a type and a name, return the field index according to source order. /// Returns `null` if the field is not found. pub fn fieldIndex(comptime T: type, comptime name: []const u8) ?comptime_int { - inline for (fields(T)) |field, i| { + inline for (fields(T), 0..) |field, i| { if (mem.eql(u8, field.name, name)) return i; } @@ -1008,7 +1008,7 @@ pub fn declList(comptime Namespace: type, comptime Decl: type) []const *const De comptime { const decls = declarations(Namespace); var array: [decls.len]*const Decl = undefined; - for (decls) |decl, i| { + for (decls, 0..) |decl, i| { array[i] = &@field(Namespace, decl.name); } std.sort.sort(*const Decl, &array, {}, S.declNameLessThan); @@ -1069,7 +1069,7 @@ pub fn ArgsTuple(comptime Function: type) type { @compileError("Cannot create ArgsTuple for variadic function"); var argument_field_list: [function_info.params.len]type = undefined; - inline for (function_info.params) |arg, i| { + inline for (function_info.params, 0..) |arg, i| { const T = arg.type.?; argument_field_list[i] = T; } @@ -1090,7 +1090,7 @@ pub fn Tuple(comptime types: []const type) type { fn CreateUniqueTuple(comptime N: comptime_int, comptime types: [N]type) type { var tuple_fields: [types.len]std.builtin.Type.StructField = undefined; - inline for (types) |T, i| { + inline for (types, 0..) |T, i| { @setEvalBranchQuota(10_000); var num_buf: [128]u8 = undefined; tuple_fields[i] = .{ @@ -1129,7 +1129,7 @@ const TupleTester = struct { if (expected.len != fields_list.len) @compileError("Argument count mismatch"); - inline for (fields_list) |fld, i| { + inline for (fields_list, 0..) |fld, i| { if (expected[i] != fld.type) { @compileError("Field " ++ fld.name ++ " expected to be type " ++ @typeName(expected[i]) ++ ", but was type " ++ @typeName(fld.type)); } diff --git a/lib/std/meta/trailer_flags.zig b/lib/std/meta/trailer_flags.zig index e50950018d..0c43a5ff28 100644 --- a/lib/std/meta/trailer_flags.zig +++ b/lib/std/meta/trailer_flags.zig @@ -21,7 +21,7 @@ pub fn TrailerFlags(comptime Fields: type) type { pub const ActiveFields = std.enums.EnumFieldStruct(FieldEnum, bool, false); pub const FieldValues = blk: { comptime var fields: [bit_count]Type.StructField = undefined; - inline for (@typeInfo(Fields).Struct.fields) |struct_field, i| { + inline for (@typeInfo(Fields).Struct.fields, 0..) |struct_field, i| { fields[i] = Type.StructField{ .name = struct_field.name, .type = ?struct_field.type, @@ -61,7 +61,7 @@ pub fn TrailerFlags(comptime Fields: type) type { /// `fields` is a boolean struct where each active field is set to `true` pub fn init(fields: ActiveFields) Self { var self: Self = .{ .bits = 0 }; - inline for (@typeInfo(Fields).Struct.fields) |field, i| { + inline for (@typeInfo(Fields).Struct.fields, 0..) |field, i| { if (@field(fields, field.name)) self.bits |= 1 << i; } @@ -70,7 +70,7 @@ pub fn TrailerFlags(comptime Fields: type) type { /// `fields` is a struct with each field set to an optional value pub fn setMany(self: Self, p: [*]align(@alignOf(Fields)) u8, fields: FieldValues) void { - inline for (@typeInfo(Fields).Struct.fields) |field, i| { + inline for (@typeInfo(Fields).Struct.fields, 0..) |field, i| { if (@field(fields, field.name)) |value| self.set(p, @intToEnum(FieldEnum, i), value); } @@ -101,7 +101,7 @@ pub fn TrailerFlags(comptime Fields: type) type { pub fn offset(self: Self, comptime field: FieldEnum) usize { var off: usize = 0; - inline for (@typeInfo(Fields).Struct.fields) |field_info, i| { + inline for (@typeInfo(Fields).Struct.fields, 0..) |field_info, i| { const active = (self.bits & (1 << i)) != 0; if (i == @enumToInt(field)) { assert(active); @@ -119,7 +119,7 @@ pub fn TrailerFlags(comptime Fields: type) type { pub fn sizeInBytes(self: Self) usize { var off: usize = 0; - inline for (@typeInfo(Fields).Struct.fields) |field, i| { + inline for (@typeInfo(Fields).Struct.fields, 0..) |field, i| { if (@sizeOf(field.type) == 0) continue; if ((self.bits & (1 << i)) != 0) { diff --git a/lib/std/multi_array_list.zig b/lib/std/multi_array_list.zig index 38c8276b9a..afdd6a5a8d 100644 --- a/lib/std/multi_array_list.zig +++ b/lib/std/multi_array_list.zig @@ -82,7 +82,7 @@ pub fn MultiArrayList(comptime S: type) type { alignment: usize, }; var data: [fields.len]Data = undefined; - for (fields) |field_info, i| { + for (fields, 0..) |field_info, i| { data[i] = .{ .size = @sizeOf(field_info.type), .size_index = i, @@ -98,7 +98,7 @@ pub fn MultiArrayList(comptime S: type) type { std.sort.sort(Data, &data, {}, Sort.lessThan); var sizes_bytes: [fields.len]usize = undefined; var field_indexes: [fields.len]usize = undefined; - for (data) |elem, i| { + for (data, 0..) |elem, i| { sizes_bytes[i] = elem.size; field_indexes[i] = elem.size_index; } @@ -131,7 +131,7 @@ pub fn MultiArrayList(comptime S: type) type { .capacity = self.capacity, }; var ptr: [*]u8 = self.bytes; - for (sizes.bytes) |field_size, i| { + for (sizes.bytes, 0..) |field_size, i| { result.ptrs[sizes.fields[i]] = ptr; ptr += field_size * self.capacity; } @@ -148,7 +148,7 @@ pub fn MultiArrayList(comptime S: type) type { /// Overwrite one array element with new data. pub fn set(self: *Self, index: usize, elem: S) void { const slices = self.slice(); - inline for (fields) |field_info, i| { + inline for (fields, 0..) |field_info, i| { slices.items(@intToEnum(Field, i))[index] = @field(elem, field_info.name); } } @@ -157,7 +157,7 @@ pub fn MultiArrayList(comptime S: type) type { pub fn get(self: Self, index: usize) S { const slices = self.slice(); var result: S = undefined; - inline for (fields) |field_info, i| { + inline for (fields, 0..) |field_info, i| { @field(result, field_info.name) = slices.items(@intToEnum(Field, i))[index]; } return result; @@ -230,7 +230,7 @@ pub fn MultiArrayList(comptime S: type) type { assert(index <= self.len); self.len += 1; const slices = self.slice(); - inline for (fields) |field_info, field_index| { + inline for (fields, 0..) |field_info, field_index| { const field_slice = slices.items(@intToEnum(Field, field_index)); var i: usize = self.len - 1; while (i > index) : (i -= 1) { @@ -245,7 +245,7 @@ pub fn MultiArrayList(comptime S: type) type { /// retain list ordering. pub fn swapRemove(self: *Self, index: usize) void { const slices = self.slice(); - inline for (fields) |_, i| { + inline for (fields, 0..) |_, i| { const field_slice = slices.items(@intToEnum(Field, i)); field_slice[index] = field_slice[self.len - 1]; field_slice[self.len - 1] = undefined; @@ -257,7 +257,7 @@ pub fn MultiArrayList(comptime S: type) type { /// after it to preserve order. pub fn orderedRemove(self: *Self, index: usize) void { const slices = self.slice(); - inline for (fields) |_, field_index| { + inline for (fields, 0..) |_, field_index| { const field_slice = slices.items(@intToEnum(Field, field_index)); var i = index; while (i < self.len - 1) : (i += 1) { @@ -293,7 +293,7 @@ pub fn MultiArrayList(comptime S: type) type { capacityInBytes(new_len), ) catch { const self_slice = self.slice(); - inline for (fields) |field_info, i| { + inline for (fields, 0..) |field_info, i| { if (@sizeOf(field_info.type) != 0) { const field = @intToEnum(Field, i); const dest_slice = self_slice.items(field)[new_len..]; @@ -315,7 +315,7 @@ pub fn MultiArrayList(comptime S: type) type { self.len = new_len; const self_slice = self.slice(); const other_slice = other.slice(); - inline for (fields) |field_info, i| { + inline for (fields, 0..) |field_info, i| { if (@sizeOf(field_info.type) != 0) { const field = @intToEnum(Field, i); mem.copy(field_info.type, other_slice.items(field), self_slice.items(field)); @@ -376,7 +376,7 @@ pub fn MultiArrayList(comptime S: type) type { }; const self_slice = self.slice(); const other_slice = other.slice(); - inline for (fields) |field_info, i| { + inline for (fields, 0..) |field_info, i| { if (@sizeOf(field_info.type) != 0) { const field = @intToEnum(Field, i); mem.copy(field_info.type, other_slice.items(field), self_slice.items(field)); @@ -395,7 +395,7 @@ pub fn MultiArrayList(comptime S: type) type { result.len = self.len; const self_slice = self.slice(); const result_slice = result.slice(); - inline for (fields) |field_info, i| { + inline for (fields, 0..) |field_info, i| { if (@sizeOf(field_info.type) != 0) { const field = @intToEnum(Field, i); mem.copy(field_info.type, result_slice.items(field), self_slice.items(field)); @@ -412,7 +412,7 @@ pub fn MultiArrayList(comptime S: type) type { slice: Slice, pub fn swap(sc: @This(), a_index: usize, b_index: usize) void { - inline for (fields) |field_info, i| { + inline for (fields, 0..) |field_info, i| { if (@sizeOf(field_info.type) != 0) { const field = @intToEnum(Field, i); const ptr = sc.slice.items(field); diff --git a/lib/std/net.zig b/lib/std/net.zig index fa7c489b70..50a0f8b9d7 100644 --- a/lib/std/net.zig +++ b/lib/std/net.zig @@ -325,7 +325,7 @@ pub const Ip6Address = extern struct { var index: u8 = 0; var scope_id = false; var abbrv = false; - for (buf) |c, i| { + for (buf, 0..) |c, i| { if (scope_id) { if (c >= '0' and c <= '9') { const digit = c - '0'; @@ -444,7 +444,7 @@ pub const Ip6Address = extern struct { var scope_id_value: [os.IFNAMESIZE - 1]u8 = undefined; var scope_id_index: usize = 0; - for (buf) |c, i| { + for (buf, 0..) |c, i| { if (scope_id) { // Handling of percent-encoding should be for an URI library. if ((c >= '0' and c <= '9') or @@ -602,7 +602,7 @@ pub const Ip6Address = extern struct { .Big => big_endian_parts.*, .Little => blk: { var buf: [8]u16 = undefined; - for (big_endian_parts) |part, i| { + for (big_endian_parts, 0..) |part, i| { buf[i] = mem.bigToNative(u16, part); } break :blk buf; @@ -909,7 +909,7 @@ pub fn getAddressList(allocator: mem.Allocator, name: []const u8, port: u16) !*A result.canon_name = try canon.toOwnedSlice(); } - for (lookup_addrs.items) |lookup_addr, i| { + for (lookup_addrs.items, 0..) |lookup_addr, i| { result.addrs[i] = lookup_addr.addr; assert(result.addrs[i].getPort() == port); } @@ -989,7 +989,7 @@ fn linuxLookupName( // So far the label/precedence table cannot be customized. // This implementation is ported from musl libc. // A more idiomatic "ziggy" implementation would be welcome. - for (addrs.items) |*addr, i| { + for (addrs.items, 0..) |*addr, i| { var key: i32 = 0; var sa6: os.sockaddr.in6 = undefined; @memset(@ptrCast([*]u8, &sa6), 0, @sizeOf(os.sockaddr.in6)); @@ -1118,7 +1118,7 @@ const defined_policies = [_]Policy{ }; fn policyOf(a: [16]u8) *const Policy { - for (defined_policies) |*policy| { + for (&defined_policies) |*policy| { if (!mem.eql(u8, a[0..policy.len], policy.addr[0..policy.len])) continue; if ((a[policy.len] & policy.mask) != policy.addr[policy.len]) continue; return policy; @@ -1502,7 +1502,7 @@ fn resMSendRc( try ns_list.resize(rc.ns.items.len); const ns = ns_list.items; - for (rc.ns.items) |iplit, i| { + for (rc.ns.items, 0..) |iplit, i| { ns[i] = iplit.addr; assert(ns[i].getPort() == 53); if (iplit.addr.any.family != os.AF.INET) { diff --git a/lib/std/net/test.zig b/lib/std/net/test.zig index f2946777bd..30a63d9e3d 100644 --- a/lib/std/net/test.zig +++ b/lib/std/net/test.zig @@ -30,7 +30,7 @@ test "parse and render IPv6 addresses" { "ff01::fb", "::ffff:123.5.123.5", }; - for (ips) |ip, i| { + for (ips, 0..) |ip, i| { var addr = net.Address.parseIp6(ip, 0) catch unreachable; var newIp = std.fmt.bufPrint(buffer[0..], "{}", .{addr}) catch unreachable; try std.testing.expect(std.mem.eql(u8, printed[i], newIp[1 .. newIp.len - 3])); diff --git a/lib/std/once.zig b/lib/std/once.zig index 775c4328a2..f012e017dd 100644 --- a/lib/std/once.zig +++ b/lib/std/once.zig @@ -53,7 +53,7 @@ test "Once executes its function just once" { var threads: [10]std.Thread = undefined; defer for (threads) |handle| handle.join(); - for (threads) |*handle| { + for (&threads) |*handle| { handle.* = try std.Thread.spawn(.{}, struct { fn thread_fn(x: u8) void { _ = x; diff --git a/lib/std/os/linux.zig b/lib/std/os/linux.zig index 5d6c9f5cc9..fe2f8404e2 100644 --- a/lib/std/os/linux.zig +++ b/lib/std/os/linux.zig @@ -1245,7 +1245,7 @@ pub fn sendmmsg(fd: i32, msgvec: [*]mmsghdr_const, vlen: u32, flags: u32) usize // see https://www.openwall.com/lists/musl/2014/06/07/5 const kvlen = if (vlen > IOV_MAX) IOV_MAX else vlen; // matches kernel var next_unsent: usize = 0; - for (msgvec[0..kvlen]) |*msg, i| { + for (msgvec[0..kvlen], 0..) |*msg, i| { var size: i32 = 0; const msg_iovlen = @intCast(usize, msg.msg_hdr.msg_iovlen); // kernel side this is treated as unsigned for (msg.msg_hdr.msg_iov[0..msg_iovlen]) |iov| { diff --git a/lib/std/os/uefi/protocols/device_path_protocol.zig b/lib/std/os/uefi/protocols/device_path_protocol.zig index 6df6442fe6..fb497a79da 100644 --- a/lib/std/os/uefi/protocols/device_path_protocol.zig +++ b/lib/std/os/uefi/protocols/device_path_protocol.zig @@ -61,7 +61,7 @@ pub const DevicePathProtocol = extern struct { // The same as new.getPath(), but not const as we're filling it in. var ptr = @ptrCast([*:0]align(1) u16, @ptrCast([*]u8, new) + @sizeOf(MediaDevicePath.FilePathDevicePath)); - for (path) |s, i| + for (path, 0..) |s, i| ptr[i] = s; ptr[path.len] = 0; diff --git a/lib/std/os/windows.zig b/lib/std/os/windows.zig index 711bc9f349..fe0ebc4951 100644 --- a/lib/std/os/windows.zig +++ b/lib/std/os/windows.zig @@ -2858,7 +2858,7 @@ pub const GUID = extern struct { assert(s[18] == '-'); assert(s[23] == '-'); var bytes: [16]u8 = undefined; - for (hex_offsets) |hex_offset, i| { + for (hex_offsets, 0..) |hex_offset, i| { bytes[i] = (try std.fmt.charToDigit(s[hex_offset], 16)) << 4 | try std.fmt.charToDigit(s[hex_offset + 1], 16); } diff --git a/lib/std/packed_int_array.zig b/lib/std/packed_int_array.zig index f15ddbe974..f42e1016aa 100644 --- a/lib/std/packed_int_array.zig +++ b/lib/std/packed_int_array.zig @@ -215,7 +215,7 @@ pub fn PackedIntArrayEndian(comptime Int: type, comptime endian: Endian, comptim /// or, more likely, an array literal. pub fn init(ints: [int_count]Int) Self { var self = @as(Self, undefined); - for (ints) |int, i| self.set(i, int); + for (ints, 0..) |int, i| self.set(i, int); return self; } diff --git a/lib/std/pdb.zig b/lib/std/pdb.zig index 287b65b59d..fdd162a34f 100644 --- a/lib/std/pdb.zig +++ b/lib/std/pdb.zig @@ -922,7 +922,7 @@ const Msf = struct { } const streams = try allocator.alloc(MsfStream, stream_count); - for (streams) |*stream, i| { + for (streams, 0..) |*stream, i| { const size = stream_sizes[i]; if (size == 0) { stream.* = MsfStream{ diff --git a/lib/std/priority_dequeue.zig b/lib/std/priority_dequeue.zig index d710288105..db55be3804 100644 --- a/lib/std/priority_dequeue.zig +++ b/lib/std/priority_dequeue.zig @@ -430,7 +430,7 @@ pub fn PriorityDequeue(comptime T: type, comptime Context: type, comptime compar const print = std.debug.print; print("{{ ", .{}); print("items: ", .{}); - for (self.items) |e, i| { + for (self.items, 0..) |e, i| { if (i >= self.len) break; print("{}, ", .{e}); } diff --git a/lib/std/priority_queue.zig b/lib/std/priority_queue.zig index 6e5e85a819..8925202c32 100644 --- a/lib/std/priority_queue.zig +++ b/lib/std/priority_queue.zig @@ -263,7 +263,7 @@ pub fn PriorityQueue(comptime T: type, comptime Context: type, comptime compareF const print = std.debug.print; print("{{ ", .{}); print("items: ", .{}); - for (self.items) |e, i| { + for (self.items, 0..) |e, i| { if (i >= self.len) break; print("{}, ", .{e}); } diff --git a/lib/std/process.zig b/lib/std/process.zig index b901a9f0fa..777bcbbab0 100644 --- a/lib/std/process.zig +++ b/lib/std/process.zig @@ -874,7 +874,7 @@ pub fn argsAlloc(allocator: Allocator) ![][:0]u8 { mem.copy(u8, result_contents, contents_slice); var contents_index: usize = 0; - for (slice_sizes) |len, i| { + for (slice_sizes, 0..) |len, i| { const new_index = contents_index + len; result_slice_list[i] = result_contents[contents_index..new_index :0]; contents_index = new_index + 1; @@ -1148,7 +1148,7 @@ pub fn execve( const arena = arena_allocator.allocator(); const argv_buf = try arena.allocSentinel(?[*:0]u8, argv.len, null); - for (argv) |arg, i| argv_buf[i] = (try arena.dupeZ(u8, arg)).ptr; + for (argv, 0..) |arg, i| argv_buf[i] = (try arena.dupeZ(u8, arg)).ptr; const envp = m: { if (env_map) |m| { diff --git a/lib/std/rand.zig b/lib/std/rand.zig index f5a1ffe57e..9722a47682 100644 --- a/lib/std/rand.zig +++ b/lib/std/rand.zig @@ -414,7 +414,7 @@ pub const Random = struct { std.debug.assert(point < sum); var accumulator: T = 0; - for (proportions) |p, index| { + for (proportions, 0..) |p, index| { accumulator += p; if (point < accumulator) return index; } diff --git a/lib/std/rand/ziggurat.zig b/lib/std/rand/ziggurat.zig index ec6dd0f080..fba8dfad96 100644 --- a/lib/std/rand/ziggurat.zig +++ b/lib/std/rand/ziggurat.zig @@ -83,13 +83,13 @@ fn ZigTableGen( tables.x[0] = v / f(r); tables.x[1] = r; - for (tables.x[2..256]) |*entry, i| { + for (tables.x[2..256], 0..) |*entry, i| { const last = tables.x[2 + i - 1]; entry.* = f_inv(v / last + f(last)); } tables.x[256] = 0; - for (tables.f[0..]) |*entry, i| { + for (tables.f[0..], 0..) |*entry, i| { entry.* = f(tables.x[i]); } diff --git a/lib/std/simd.zig b/lib/std/simd.zig index 868f9864e7..71d56daec3 100644 --- a/lib/std/simd.zig +++ b/lib/std/simd.zig @@ -89,7 +89,7 @@ pub fn VectorCount(comptime VectorType: type) type { pub inline fn iota(comptime T: type, comptime len: usize) @Vector(len, T) { comptime { var out: [len]T = undefined; - for (out) |*element, i| { + for (&out, 0..) |*element, i| { element.* = switch (@typeInfo(T)) { .Int => @intCast(T, i), .Float => @intToFloat(T, i), diff --git a/lib/std/sort.zig b/lib/std/sort.zig index 64b0711d83..fa1e33e7ce 100644 --- a/lib/std/sort.zig +++ b/lib/std/sort.zig @@ -1219,9 +1219,9 @@ fn testStableSort() !void { IdAndValue{ .id = 2, .value = 0 }, }, }; - for (cases) |*case| { + for (&cases) |*case| { insertionSort(IdAndValue, (case.*)[0..], {}, cmpByValue); - for (case.*) |item, i| { + for (case.*, 0..) |item, i| { try testing.expect(item.id == expected[i].id); try testing.expect(item.value == expected[i].value); } @@ -1373,7 +1373,7 @@ fn fuzzTest(rng: std.rand.Random) !void { var array = try testing.allocator.alloc(IdAndValue, array_size); defer testing.allocator.free(array); // populate with random data - for (array) |*item, index| { + for (array, 0..) |*item, index| { item.id = index; item.value = rng.intRangeLessThan(i32, 0, 100); } @@ -1401,7 +1401,7 @@ pub fn argMin( var smallest = items[0]; var smallest_index: usize = 0; - for (items[1..]) |item, i| { + for (items[1..], 0..) |item, i| { if (lessThan(context, item, smallest)) { smallest = item; smallest_index = i + 1; @@ -1453,7 +1453,7 @@ pub fn argMax( var biggest = items[0]; var biggest_index: usize = 0; - for (items[1..]) |item, i| { + for (items[1..], 0..) |item, i| { if (lessThan(context, biggest, item)) { biggest = item; biggest_index = i + 1; diff --git a/lib/std/target.zig b/lib/std/target.zig index 4429f8be2d..9e3a8d62f4 100644 --- a/lib/std/target.zig +++ b/lib/std/target.zig @@ -720,7 +720,7 @@ pub const Target = struct { /// Adds the specified feature set but not its dependencies. pub fn addFeatureSet(set: *Set, other_set: Set) void { if (builtin.zig_backend == .stage2_c) { - for (set.ints) |*int, i| int.* |= other_set.ints[i]; + for (&set.ints, 0..) |*int, i| int.* |= other_set.ints[i]; } else { set.ints = @as(@Vector(usize_count, usize), set.ints) | @as(@Vector(usize_count, usize), other_set.ints); } @@ -736,7 +736,7 @@ pub const Target = struct { /// Removes the specified feature but not its dependents. pub fn removeFeatureSet(set: *Set, other_set: Set) void { if (builtin.zig_backend == .stage2_c) { - for (set.ints) |*int, i| int.* &= ~other_set.ints[i]; + for (&set.ints, 0..) |*int, i| int.* &= ~other_set.ints[i]; } else { set.ints = @as(@Vector(usize_count, usize), set.ints) & ~@as(@Vector(usize_count, usize), other_set.ints); } @@ -747,7 +747,7 @@ pub const Target = struct { var old = set.ints; while (true) { - for (all_features_list) |feature, index_usize| { + for (all_features_list, 0..) |feature, index_usize| { const index = @intCast(Index, index_usize); if (set.isEnabled(index)) { set.addFeatureSet(feature.dependencies); @@ -1330,7 +1330,7 @@ pub const Target = struct { fn allCpusFromDecls(comptime cpus: type) []const *const Cpu.Model { const decls = @typeInfo(cpus).Struct.decls; var array: [decls.len]*const Cpu.Model = undefined; - for (decls) |decl, i| { + for (decls, 0..) |decl, i| { array[i] = &@field(cpus, decl.name); } return &array; diff --git a/lib/std/target/aarch64.zig b/lib/std/target/aarch64.zig index af50c9d890..b84e2f5d8e 100644 --- a/lib/std/target/aarch64.zig +++ b/lib/std/target/aarch64.zig @@ -1269,7 +1269,7 @@ pub const all_features = blk: { .dependencies = featureSet(&[_]Feature{}), }; const ti = @typeInfo(Feature); - for (result) |*elem, i| { + for (&result, 0..) |*elem, i| { elem.index = i; elem.name = ti.Enum.fields[i].name; } diff --git a/lib/std/target/amdgpu.zig b/lib/std/target/amdgpu.zig index 7138845d69..4451a0cc9b 100644 --- a/lib/std/target/amdgpu.zig +++ b/lib/std/target/amdgpu.zig @@ -1033,7 +1033,7 @@ pub const all_features = blk: { .dependencies = featureSet(&[_]Feature{}), }; const ti = @typeInfo(Feature); - for (result) |*elem, i| { + for (&result, 0..) |*elem, i| { elem.index = i; elem.name = ti.Enum.fields[i].name; } diff --git a/lib/std/target/arc.zig b/lib/std/target/arc.zig index 822104b466..86d803c217 100644 --- a/lib/std/target/arc.zig +++ b/lib/std/target/arc.zig @@ -23,7 +23,7 @@ pub const all_features = blk: { .dependencies = featureSet(&[_]Feature{}), }; const ti = @typeInfo(Feature); - for (result) |*elem, i| { + for (&result, 0..) |*elem, i| { elem.index = i; elem.name = ti.Enum.fields[i].name; } diff --git a/lib/std/target/arm.zig b/lib/std/target/arm.zig index 2f5371187e..14241b4b7e 100644 --- a/lib/std/target/arm.zig +++ b/lib/std/target/arm.zig @@ -1631,7 +1631,7 @@ pub const all_features = blk: { .dependencies = featureSet(&[_]Feature{}), }; const ti = @typeInfo(Feature); - for (result) |*elem, i| { + for (&result, 0..) |*elem, i| { elem.index = i; elem.name = ti.Enum.fields[i].name; } diff --git a/lib/std/target/avr.zig b/lib/std/target/avr.zig index c9e5d1de23..ef234e3502 100644 --- a/lib/std/target/avr.zig +++ b/lib/std/target/avr.zig @@ -329,7 +329,7 @@ pub const all_features = blk: { }), }; const ti = @typeInfo(Feature); - for (result) |*elem, i| { + for (&result, 0..) |*elem, i| { elem.index = i; elem.name = ti.Enum.fields[i].name; } diff --git a/lib/std/target/bpf.zig b/lib/std/target/bpf.zig index a8c7a81a3b..82503c11a4 100644 --- a/lib/std/target/bpf.zig +++ b/lib/std/target/bpf.zig @@ -35,7 +35,7 @@ pub const all_features = blk: { .dependencies = featureSet(&[_]Feature{}), }; const ti = @typeInfo(Feature); - for (result) |*elem, i| { + for (&result, 0..) |*elem, i| { elem.index = i; elem.name = ti.Enum.fields[i].name; } diff --git a/lib/std/target/csky.zig b/lib/std/target/csky.zig index 4c719c776f..0a985f0648 100644 --- a/lib/std/target/csky.zig +++ b/lib/std/target/csky.zig @@ -416,7 +416,7 @@ pub const all_features = blk: { .dependencies = featureSet(&[_]Feature{}), }; const ti = @typeInfo(Feature); - for (result) |*elem, i| { + for (&result, 0..) |*elem, i| { elem.index = i; elem.name = ti.Enum.fields[i].name; } diff --git a/lib/std/target/hexagon.zig b/lib/std/target/hexagon.zig index 1bab66fb05..5d167ca3ee 100644 --- a/lib/std/target/hexagon.zig +++ b/lib/std/target/hexagon.zig @@ -268,7 +268,7 @@ pub const all_features = blk: { .dependencies = featureSet(&[_]Feature{}), }; const ti = @typeInfo(Feature); - for (result) |*elem, i| { + for (&result, 0..) |*elem, i| { elem.index = i; elem.name = ti.Enum.fields[i].name; } diff --git a/lib/std/target/m68k.zig b/lib/std/target/m68k.zig index 6e147dffd7..10a8ae4dc2 100644 --- a/lib/std/target/m68k.zig +++ b/lib/std/target/m68k.zig @@ -153,7 +153,7 @@ pub const all_features = blk: { .dependencies = featureSet(&[_]Feature{}), }; const ti = @typeInfo(Feature); - for (result) |*elem, i| { + for (&result, 0..) |*elem, i| { elem.index = i; elem.name = ti.Enum.fields[i].name; } diff --git a/lib/std/target/mips.zig b/lib/std/target/mips.zig index 881a46694b..5650bd64c2 100644 --- a/lib/std/target/mips.zig +++ b/lib/std/target/mips.zig @@ -387,7 +387,7 @@ pub const all_features = blk: { .dependencies = featureSet(&[_]Feature{}), }; const ti = @typeInfo(Feature); - for (result) |*elem, i| { + for (&result, 0..) |*elem, i| { elem.index = i; elem.name = ti.Enum.fields[i].name; } diff --git a/lib/std/target/msp430.zig b/lib/std/target/msp430.zig index 6e8aac29b9..8e2b8536c8 100644 --- a/lib/std/target/msp430.zig +++ b/lib/std/target/msp430.zig @@ -41,7 +41,7 @@ pub const all_features = blk: { .dependencies = featureSet(&[_]Feature{}), }; const ti = @typeInfo(Feature); - for (result) |*elem, i| { + for (&result, 0..) |*elem, i| { elem.index = i; elem.name = ti.Enum.fields[i].name; } diff --git a/lib/std/target/nvptx.zig b/lib/std/target/nvptx.zig index 4863d82bde..b062b21327 100644 --- a/lib/std/target/nvptx.zig +++ b/lib/std/target/nvptx.zig @@ -221,7 +221,7 @@ pub const all_features = blk: { .dependencies = featureSet(&[_]Feature{}), }; const ti = @typeInfo(Feature); - for (result) |*elem, i| { + for (&result, 0..) |*elem, i| { elem.index = i; elem.name = ti.Enum.fields[i].name; } diff --git a/lib/std/target/powerpc.zig b/lib/std/target/powerpc.zig index 25c4162b0d..0532671a5b 100644 --- a/lib/std/target/powerpc.zig +++ b/lib/std/target/powerpc.zig @@ -592,7 +592,7 @@ pub const all_features = blk: { }), }; const ti = @typeInfo(Feature); - for (result) |*elem, i| { + for (&result, 0..) |*elem, i| { elem.index = i; elem.name = ti.Enum.fields[i].name; } diff --git a/lib/std/target/riscv.zig b/lib/std/target/riscv.zig index b3b24fece3..fba5bbfdf6 100644 --- a/lib/std/target/riscv.zig +++ b/lib/std/target/riscv.zig @@ -660,7 +660,7 @@ pub const all_features = blk: { }), }; const ti = @typeInfo(Feature); - for (result) |*elem, i| { + for (&result, 0..) |*elem, i| { elem.index = i; elem.name = ti.Enum.fields[i].name; } diff --git a/lib/std/target/s390x.zig b/lib/std/target/s390x.zig index 8b93019e24..546cbadfbd 100644 --- a/lib/std/target/s390x.zig +++ b/lib/std/target/s390x.zig @@ -263,7 +263,7 @@ pub const all_features = blk: { .dependencies = featureSet(&[_]Feature{}), }; const ti = @typeInfo(Feature); - for (result) |*elem, i| { + for (&result, 0..) |*elem, i| { elem.index = i; elem.name = ti.Enum.fields[i].name; } diff --git a/lib/std/target/sparc.zig b/lib/std/target/sparc.zig index 1c1d5082cc..7deb01db24 100644 --- a/lib/std/target/sparc.zig +++ b/lib/std/target/sparc.zig @@ -131,7 +131,7 @@ pub const all_features = blk: { .dependencies = featureSet(&[_]Feature{}), }; const ti = @typeInfo(Feature); - for (result) |*elem, i| { + for (&result, 0..) |*elem, i| { elem.index = i; elem.name = ti.Enum.fields[i].name; } diff --git a/lib/std/target/spirv.zig b/lib/std/target/spirv.zig index 84b92a764c..39a91c7537 100644 --- a/lib/std/target/spirv.zig +++ b/lib/std/target/spirv.zig @@ -2075,7 +2075,7 @@ pub const all_features = blk: { .dependencies = featureSet(&[_]Feature{}), }; const ti = @typeInfo(Feature); - for (result) |*elem, i| { + for (&result, 0..) |*elem, i| { elem.index = i; elem.name = ti.Enum.fields[i].name; } diff --git a/lib/std/target/ve.zig b/lib/std/target/ve.zig index f77c07883d..224da897c8 100644 --- a/lib/std/target/ve.zig +++ b/lib/std/target/ve.zig @@ -23,7 +23,7 @@ pub const all_features = blk: { .dependencies = featureSet(&[_]Feature{}), }; const ti = @typeInfo(Feature); - for (result) |*elem, i| { + for (&result, 0..) |*elem, i| { elem.index = i; elem.name = ti.Enum.fields[i].name; } diff --git a/lib/std/target/wasm.zig b/lib/std/target/wasm.zig index 514b765a97..d894670646 100644 --- a/lib/std/target/wasm.zig +++ b/lib/std/target/wasm.zig @@ -89,7 +89,7 @@ pub const all_features = blk: { .dependencies = featureSet(&[_]Feature{}), }; const ti = @typeInfo(Feature); - for (result) |*elem, i| { + for (&result, 0..) |*elem, i| { elem.index = i; elem.name = ti.Enum.fields[i].name; } diff --git a/lib/std/target/x86.zig b/lib/std/target/x86.zig index a561c317bd..8b8e47a813 100644 --- a/lib/std/target/x86.zig +++ b/lib/std/target/x86.zig @@ -1045,7 +1045,7 @@ pub const all_features = blk: { }), }; const ti = @typeInfo(Feature); - for (result) |*elem, i| { + for (&result, 0..) |*elem, i| { elem.index = i; elem.name = ti.Enum.fields[i].name; } diff --git a/lib/std/testing.zig b/lib/std/testing.zig index 895a9a0973..37e15ff08b 100644 --- a/lib/std/testing.zig +++ b/lib/std/testing.zig @@ -384,7 +384,7 @@ fn SliceDiffer(comptime T: type) type { const Self = @This(); pub fn write(self: Self, writer: anytype) !void { - for (self.expected) |value, i| { + for (self.expected, 0..) |value, i| { var full_index = self.start_index + i; const diff = if (i < self.actual.len) !std.meta.eql(self.actual[i], value) else true; if (diff) try self.ttyconf.setColor(writer, .Red); @@ -405,7 +405,7 @@ const BytesDiffer = struct { while (expected_iterator.next()) |chunk| { // to avoid having to calculate diffs twice per chunk var diffs: std.bit_set.IntegerBitSet(16) = .{ .mask = 0 }; - for (chunk) |byte, i| { + for (chunk, 0..) |byte, i| { var absolute_byte_index = (expected_iterator.index - chunk.len) + i; const diff = if (absolute_byte_index < self.actual.len) self.actual[absolute_byte_index] != byte else true; if (diff) diffs.set(i); @@ -418,7 +418,7 @@ const BytesDiffer = struct { if (chunk.len < 8) missing_columns += 1; try writer.writeByteNTimes(' ', missing_columns); } - for (chunk) |byte, i| { + for (chunk, 0..) |byte, i| { const byte_to_print = if (std.ascii.isPrint(byte)) byte else '.'; try self.writeByteDiff(writer, "{c}", byte_to_print, diffs.isSet(i)); } @@ -1059,7 +1059,7 @@ pub fn checkAllAllocationFailures(backing_allocator: std.mem.Allocator, comptime // Setup the tuple that will actually be used with @call (we'll need to insert // the failing allocator in field @"0" before each @call) var args: ArgsTuple = undefined; - inline for (@typeInfo(@TypeOf(extra_args)).Struct.fields) |field, i| { + inline for (@typeInfo(@TypeOf(extra_args)).Struct.fields, 0..) |field, i| { const arg_i_str = comptime str: { var str_buf: [100]u8 = undefined; const args_i = i + 1; diff --git a/lib/std/wasm.zig b/lib/std/wasm.zig index 2d519ace8b..25a0bb7abf 100644 --- a/lib/std/wasm.zig +++ b/lib/std/wasm.zig @@ -636,7 +636,7 @@ pub const Type = struct { if (fmt.len != 0) std.fmt.invalidFmtError(fmt, self); _ = opt; try writer.writeByte('('); - for (self.params) |param, i| { + for (self.params, 0..) |param, i| { try writer.print("{s}", .{@tagName(param)}); if (i + 1 != self.params.len) { try writer.writeAll(", "); @@ -646,7 +646,7 @@ pub const Type = struct { if (self.returns.len == 0) { try writer.writeAll("nil"); } else { - for (self.returns) |return_ty, i| { + for (self.returns, 0..) |return_ty, i| { try writer.print("{s}", .{@tagName(return_ty)}); if (i + 1 != self.returns.len) { try writer.writeAll(", "); diff --git a/lib/std/zig/Ast.zig b/lib/std/zig/Ast.zig index 3784f06160..0ba717e974 100644 --- a/lib/std/zig/Ast.zig +++ b/lib/std/zig/Ast.zig @@ -136,7 +136,7 @@ pub fn tokenLocation(self: Ast, start_offset: ByteOffset, token_index: TokenInde .line_end = self.source.len, }; const token_start = self.tokens.items(.start)[token_index]; - for (self.source[start_offset..]) |c, i| { + for (self.source[start_offset..], 0..) |c, i| { if (i + start_offset == token_start) { loc.line_end = i + start_offset; while (loc.line_end < self.source.len and self.source[loc.line_end] != '\n') { @@ -179,7 +179,7 @@ pub fn tokenSlice(tree: Ast, token_index: TokenIndex) []const u8 { pub fn extraData(tree: Ast, index: usize, comptime T: type) T { const fields = std.meta.fields(T); var result: T = undefined; - inline for (fields) |field, i| { + inline for (fields, 0..) |field, i| { comptime assert(field.type == Node.Index); @field(result, field.name) = tree.extra_data[index + i]; } @@ -2183,7 +2183,7 @@ fn fullAsmComponents(tree: Ast, info: full.Asm.Components) full.Asm { if (token_tags[info.asm_token + 1] == .keyword_volatile) { result.volatile_token = info.asm_token + 1; } - const outputs_end: usize = for (info.items) |item, i| { + const outputs_end: usize = for (info.items, 0..) |item, i| { switch (node_tags[item]) { .asm_output => continue, else => break i, diff --git a/lib/std/zig/CrossTarget.zig b/lib/std/zig/CrossTarget.zig index aad0cb42f2..93b6d97d75 100644 --- a/lib/std/zig/CrossTarget.zig +++ b/lib/std/zig/CrossTarget.zig @@ -317,7 +317,7 @@ pub fn parse(args: ParseOptions) !CrossTarget { index += 1; } const feature_name = cpu_features[start..index]; - for (all_features) |feature, feat_index_usize| { + for (all_features, 0..) |feature, feat_index_usize| { const feat_index = @intCast(Target.Cpu.Feature.Set.Index, feat_index_usize); if (mem.eql(u8, feature_name, feature.name)) { set.addFeature(feat_index); diff --git a/lib/std/zig/fmt.zig b/lib/std/zig/fmt.zig index bc9d694b0e..4afcc7ac2e 100644 --- a/lib/std/zig/fmt.zig +++ b/lib/std/zig/fmt.zig @@ -25,7 +25,7 @@ pub fn fmtId(bytes: []const u8) std.fmt.Formatter(formatId) { pub fn isValidId(bytes: []const u8) bool { if (bytes.len == 0) return false; if (mem.eql(u8, bytes, "_")) return false; - for (bytes) |c, i| { + for (bytes, 0..) |c, i| { switch (c) { '_', 'a'...'z', 'A'...'Z' => {}, '0'...'9' => if (i == 0) return false, diff --git a/lib/std/zig/parser_test.zig b/lib/std/zig/parser_test.zig index d24dedfeff..4346ee6286 100644 --- a/lib/std/zig/parser_test.zig +++ b/lib/std/zig/parser_test.zig @@ -6158,7 +6158,7 @@ fn testError(source: [:0]const u8, expected_errors: []const Error) !void { std.debug.print("errors found: {any}\n", .{tree.errors}); return err; }; - for (expected_errors) |expected, i| { + for (expected_errors, 0..) |expected, i| { try std.testing.expectEqual(expected, tree.errors[i].tag); } } diff --git a/lib/std/zig/render.zig b/lib/std/zig/render.zig index ea3748a9bd..61d789c3c4 100644 --- a/lib/std/zig/render.zig +++ b/lib/std/zig/render.zig @@ -1407,7 +1407,7 @@ fn renderBuiltinCall( // Render all on one line, no trailing comma. try renderToken(ais, tree, builtin_token + 1, .none); // ( - for (params) |param_node, i| { + for (params, 0..) |param_node, i| { const first_param_token = tree.firstToken(param_node); if (token_tags[first_param_token] == .multiline_string_literal_line or hasSameLineComment(tree, first_param_token - 1)) @@ -1739,7 +1739,7 @@ fn renderBlock( try renderToken(ais, tree, lbrace, .none); } else { try renderToken(ais, tree, lbrace, .newline); - for (statements) |stmt, i| { + for (statements, 0..) |stmt, i| { if (i != 0) try renderExtraNewline(ais, tree, stmt); switch (node_tags[stmt]) { .global_var_decl, @@ -1902,7 +1902,7 @@ fn renderArrayInit( const section_end = sec_end: { var this_line_first_expr: usize = 0; var this_line_size = rowSize(tree, row_exprs, rbrace); - for (row_exprs) |expr, i| { + for (row_exprs, 0..) |expr, i| { // Ignore comment on first line of this section. if (i == 0) continue; const expr_last_token = tree.lastToken(expr); @@ -1941,7 +1941,7 @@ fn renderArrayInit( var column_counter: usize = 0; var single_line = true; var contains_newline = false; - for (section_exprs) |expr, i| { + for (section_exprs, 0..) |expr, i| { const start = sub_expr_buffer.items.len; sub_expr_buffer_starts[i] = start; @@ -1983,7 +1983,7 @@ fn renderArrayInit( // Render exprs in current section. column_counter = 0; - for (section_exprs) |expr, i| { + for (section_exprs, 0..) |expr, i| { const start = sub_expr_buffer_starts[i]; const end = sub_expr_buffer_starts[i + 1]; const expr_text = sub_expr_buffer.items[start..end]; @@ -2140,7 +2140,7 @@ fn renderContainerDecl( if (token_tags[lbrace + 1] == .container_doc_comment) { try renderContainerDocComments(ais, tree, lbrace + 1); } - for (container_decl.ast.members) |member, i| { + for (container_decl.ast.members, 0..) |member, i| { if (i != 0) try renderExtraNewline(ais, tree, member); switch (tree.nodes.items(.tag)[member]) { // For container fields, ensure a trailing comma is added if necessary. @@ -2226,7 +2226,7 @@ fn renderAsm( try renderToken(ais, tree, colon1, .space); // : ais.pushIndent(); - for (asm_node.outputs) |asm_output, i| { + for (asm_node.outputs, 0..) |asm_output, i| { if (i + 1 < asm_node.outputs.len) { const next_asm_output = asm_node.outputs[i + 1]; try renderAsmOutput(gpa, ais, tree, asm_output, .none); @@ -2258,7 +2258,7 @@ fn renderAsm( } else colon3: { try renderToken(ais, tree, colon2, .space); // : ais.pushIndent(); - for (asm_node.inputs) |asm_input, i| { + for (asm_node.inputs, 0..) |asm_input, i| { if (i + 1 < asm_node.inputs.len) { const next_asm_input = asm_node.inputs[i + 1]; try renderAsmInput(gpa, ais, tree, asm_input, .none); @@ -2352,7 +2352,7 @@ fn renderParamList( if (token_tags[after_last_param_tok] == .comma) { ais.pushIndentNextLine(); try renderToken(ais, tree, lparen, .newline); // ( - for (params) |param_node, i| { + for (params, 0..) |param_node, i| { if (i + 1 < params.len) { try renderExpression(gpa, ais, tree, param_node, .none); @@ -2377,7 +2377,7 @@ fn renderParamList( try renderToken(ais, tree, lparen, .none); // ( - for (params) |param_node, i| { + for (params, 0..) |param_node, i| { const first_param_token = tree.firstToken(param_node); if (token_tags[first_param_token] == .multiline_string_literal_line or hasSameLineComment(tree, first_param_token - 1)) @@ -3015,7 +3015,7 @@ fn rowSize(tree: Ast, exprs: []const Ast.Node.Index, rtoken: Ast.TokenIndex) usi } var count: usize = 1; - for (exprs) |expr, i| { + for (exprs, 0..) |expr, i| { if (i + 1 < exprs.len) { const expr_last_token = tree.lastToken(expr) + 1; if (!tree.tokensOnSameLine(expr_last_token, tree.firstToken(exprs[i + 1]))) return count; diff --git a/lib/std/zig/system/NativeTargetInfo.zig b/lib/std/zig/system/NativeTargetInfo.zig index 7e57cdda9b..dbbebb43c9 100644 --- a/lib/std/zig/system/NativeTargetInfo.zig +++ b/lib/std/zig/system/NativeTargetInfo.zig @@ -273,7 +273,7 @@ fn detectAbiAndDynamicLinker( assert(@enumToInt(Target.Abi.none) == 0); const fields = std.meta.fields(Target.Abi)[1..]; var array: [fields.len]Target.Abi = undefined; - inline for (fields) |field, i| { + inline for (fields, 0..) |field, i| { array[i] = @field(Target.Abi, field.name); } break :blk array; diff --git a/lib/std/zig/system/linux.zig b/lib/std/zig/system/linux.zig index 63a49c6472..ee07daebe9 100644 --- a/lib/std/zig/system/linux.zig +++ b/lib/std/zig/system/linux.zig @@ -223,7 +223,7 @@ const ArmCpuinfoImpl = struct { }; var known_models: [self.cores.len]?*const Target.Cpu.Model = undefined; - for (self.cores[0..self.core_no]) |core, i| { + for (self.cores[0..self.core_no], 0..) |core, i| { known_models[i] = cpu_models.isKnown(.{ .architecture = core.architecture, .implementer = core.implementer, diff --git a/lib/std/zig/system/windows.zig b/lib/std/zig/system/windows.zig index 9dded69ca0..45b44560a2 100644 --- a/lib/std/zig/system/windows.zig +++ b/lib/std/zig/system/windows.zig @@ -34,7 +34,7 @@ pub fn detectRuntimeVersion() WindowsVersion { // checking the build number against a known set of // values var last_idx: usize = 0; - for (WindowsVersion.known_win10_build_numbers) |build, i| { + for (WindowsVersion.known_win10_build_numbers, 0..) |build, i| { if (version_info.dwBuildNumber >= build) last_idx = i; } @@ -92,7 +92,7 @@ fn getCpuInfoFromRegistry(core: usize, args: anytype) !void { var tmp_bufs: [fields_info.len][max_value_len]u8 align(@alignOf(std.os.windows.UNICODE_STRING)) = undefined; - inline for (fields_info) |field, i| { + inline for (fields_info, 0..) |field, i| { const ctx: *anyopaque = blk: { switch (@field(args, field.name).value_type) { REG.SZ, @@ -153,7 +153,7 @@ fn getCpuInfoFromRegistry(core: usize, args: anytype) !void { ); switch (res) { .SUCCESS => { - inline for (fields_info) |field, i| switch (@field(args, field.name).value_type) { + inline for (fields_info, 0..) |field, i| switch (@field(args, field.name).value_type) { REG.SZ, REG.EXPAND_SZ, REG.MULTI_SZ, diff --git a/lib/test_runner.zig b/lib/test_runner.zig index 3f57b42bf5..5968fdaa54 100644 --- a/lib/test_runner.zig +++ b/lib/test_runner.zig @@ -33,7 +33,7 @@ pub fn main() void { async_frame_buffer = &[_]u8{}; var leaks: usize = 0; - for (test_fn_list) |test_fn, i| { + for (test_fn_list, 0..) |test_fn, i| { std.testing.allocator_instance = .{}; defer { if (std.testing.allocator_instance.deinit()) { diff --git a/src/AstGen.zig b/src/AstGen.zig index 98883b0f8d..9b96b16677 100644 --- a/src/AstGen.zig +++ b/src/AstGen.zig @@ -1505,7 +1505,7 @@ fn arrayInitExprInner( extra_index += 1; } - for (elements) |elem_init, i| { + for (elements, 0..) |elem_init, i| { const ri = if (elem_ty != .none) ResultInfo{ .rl = .{ .coerced_ty = elem_ty } } else if (array_ty_inst != .none and nodeMayNeedMemoryLocation(astgen.tree, elem_init, true)) ri: { @@ -1562,7 +1562,7 @@ fn arrayInitExprRlPtrInner( }); var extra_index = try reserveExtra(astgen, elements.len); - for (elements) |elem_init, i| { + for (elements, 0..) |elem_init, i| { const elem_ptr = try gz.addPlNode(.elem_ptr_imm, elem_init, Zir.Inst.ElemPtrImm{ .ptr = result_ptr, .index = @intCast(u32, i), @@ -6342,7 +6342,7 @@ fn forExpr( { var capture_token = for_full.payload_token; - for (for_full.ast.inputs) |input, i_usize| { + for (for_full.ast.inputs, 0..) |input, i_usize| { const i = @intCast(u32, i_usize); const capture_is_ref = token_tags[capture_token] == .asterisk; const ident_tok = capture_token + @boolToInt(capture_is_ref); @@ -6464,7 +6464,7 @@ fn forExpr( const then_sub_scope = blk: { var capture_token = for_full.payload_token; var capture_sub_scope: *Scope = &then_scope.base; - for (for_full.ast.inputs) |input, i_usize| { + for (for_full.ast.inputs, 0..) |input, i_usize| { const i = @intCast(u32, i_usize); const capture_is_ref = token_tags[capture_token] == .asterisk; const ident_tok = capture_token + @boolToInt(capture_is_ref); @@ -6974,7 +6974,7 @@ fn switchExpr( zir_datas[switch_block].pl_node.payload_index = payload_index; const strat = ri.rl.strategy(&block_scope); - for (payloads.items[case_table_start..case_table_end]) |start_index, i| { + for (payloads.items[case_table_start..case_table_end], 0..) |start_index, i| { var body_len_index = start_index; var end_index = start_index; const table_index = case_table_start + i; @@ -7638,7 +7638,7 @@ fn asmExpr( var output_type_bits: u32 = 0; - for (full.outputs) |output_node, i| { + for (full.outputs, 0..) |output_node, i| { const symbolic_name = main_tokens[output_node]; const name = try astgen.identAsString(symbolic_name); const constraint_token = symbolic_name + 2; @@ -7675,7 +7675,7 @@ fn asmExpr( var inputs_buffer: [32]Zir.Inst.Asm.Input = undefined; const inputs = inputs_buffer[0..full.inputs.len]; - for (full.inputs) |input_node, i| { + for (full.inputs, 0..) |input_node, i| { const symbolic_name = main_tokens[input_node]; const name = try astgen.identAsString(symbolic_name); const constraint_token = symbolic_name + 2; @@ -7848,7 +7848,7 @@ fn typeOf( var typeof_scope = gz.makeSubBlock(scope); typeof_scope.force_comptime = false; - for (args) |arg, i| { + for (args, 0..) |arg, i| { const param_ref = try reachableExpr(&typeof_scope, &typeof_scope.base, .{ .rl = .none }, arg, node); astgen.extra.items[args_index + i] = @enumToInt(param_ref); } diff --git a/src/Autodoc.zig b/src/Autodoc.zig index 44325e3836..2fc54cc0ec 100644 --- a/src/Autodoc.zig +++ b/src/Autodoc.zig @@ -1647,7 +1647,7 @@ fn walkInstruction( std.debug.assert(operands.len > 0); var array_type = try self.walkRef(file, parent_scope, parent_src, operands[0], false); - for (operands[1..]) |op, idx| { + for (operands[1..], 0..) |op, idx| { const wr = try self.walkRef(file, parent_scope, parent_src, op, false); const expr_index = self.exprs.items.len; try self.exprs.append(self.arena, wr.expr); @@ -1665,7 +1665,7 @@ fn walkInstruction( const operands = file.zir.refSlice(extra.end, extra.data.operands_len); const array_data = try self.arena.alloc(usize, operands.len); - for (operands) |op, idx| { + for (operands, 0..) |op, idx| { const wr = try self.walkRef(file, parent_scope, parent_src, op, false); const expr_index = self.exprs.items.len; try self.exprs.append(self.arena, wr.expr); @@ -1686,7 +1686,7 @@ fn walkInstruction( std.debug.assert(operands.len > 0); var array_type = try self.walkRef(file, parent_scope, parent_src, operands[0], false); - for (operands[1..]) |op, idx| { + for (operands[1..], 0..) |op, idx| { const wr = try self.walkRef(file, parent_scope, parent_src, op, false); const expr_index = self.exprs.items.len; try self.exprs.append(self.arena, wr.expr); @@ -1715,7 +1715,7 @@ fn walkInstruction( const operands = file.zir.refSlice(extra.end, extra.data.operands_len); const array_data = try self.arena.alloc(usize, operands.len); - for (operands) |op, idx| { + for (operands, 0..) |op, idx| { const wr = try self.walkRef(file, parent_scope, parent_src, op, false); const expr_index = self.exprs.items.len; try self.exprs.append(self.arena, wr.expr); @@ -2386,7 +2386,7 @@ fn walkInstruction( const array_data = try self.arena.alloc(usize, args.len); var array_type: ?DocData.Expr = null; - for (args) |arg, idx| { + for (args, 0..) |arg, idx| { const wr = try self.walkRef(file, parent_scope, parent_src, arg, idx == 0); if (idx == 0) { array_type = wr.typeRef; @@ -3470,7 +3470,7 @@ fn tryResolveRefPath( } } - for (self.ast_nodes.items[t_enum.src].fields.?) |ast_node, idx| { + for (self.ast_nodes.items[t_enum.src].fields.?, 0..) |ast_node, idx| { const name = self.ast_nodes.items[ast_node].name.?; if (std.mem.eql(u8, name, child_string)) { // TODO: should we really create an artificial @@ -3517,7 +3517,7 @@ fn tryResolveRefPath( } } - for (self.ast_nodes.items[t_union.src].fields.?) |ast_node, idx| { + for (self.ast_nodes.items[t_union.src].fields.?, 0..) |ast_node, idx| { const name = self.ast_nodes.items[ast_node].name.?; if (std.mem.eql(u8, name, child_string)) { // TODO: should we really create an artificial @@ -3564,7 +3564,7 @@ fn tryResolveRefPath( } } - for (self.ast_nodes.items[t_struct.src].fields.?) |ast_node, idx| { + for (self.ast_nodes.items[t_struct.src].fields.?, 0..) |ast_node, idx| { const name = self.ast_nodes.items[ast_node].name.?; if (std.mem.eql(u8, name, child_string)) { // TODO: should we really create an artificial diff --git a/src/Compilation.zig b/src/Compilation.zig index ce0bfb9908..ebc0e9b563 100644 --- a/src/Compilation.zig +++ b/src/Compilation.zig @@ -641,7 +641,7 @@ pub const AllErrors = struct { } const reference_trace = try allocator.alloc(Message, module_err_msg.reference_trace.len); - for (reference_trace) |*reference, i| { + for (reference_trace, 0..) |*reference, i| { const module_reference = module_err_msg.reference_trace[i]; if (module_reference.hidden != 0) { reference.* = .{ .plain = .{ .msg = undefined, .count = module_reference.hidden } }; @@ -714,7 +714,7 @@ pub const AllErrors = struct { const block = file.zir.extraData(Zir.Inst.Block, item.data.notes); const body = file.zir.extra[block.end..][0..block.data.body_len]; notes = try arena.alloc(Message, body.len); - for (notes) |*note, i| { + for (notes, 0..) |*note, i| { const note_item = file.zir.extraData(Zir.Inst.CompileErrors.Item, body[i]); const msg = file.zir.nullTerminatedString(note_item.data.msg); const span = blk: { @@ -786,7 +786,7 @@ pub const AllErrors = struct { fn dupeList(list: []const Message, arena: Allocator) Allocator.Error![]Message { const duped_list = try arena.alloc(Message, list.len); - for (list) |item, i| { + for (list, 0..) |item, i| { duped_list[i] = switch (item) { .src => |src| .{ .src = .{ .msg = try arena.dupe(u8, src.msg), @@ -1441,7 +1441,7 @@ pub fn create(gpa: Allocator, options: InitOptions) !*Compilation { const llvm_cpu_features: ?[*:0]const u8 = if (build_options.have_llvm and use_llvm) blk: { var buf = std.ArrayList(u8).init(arena); - for (options.target.cpu.arch.allFeaturesList()) |feature, index_usize| { + for (options.target.cpu.arch.allFeaturesList(), 0..) |feature, index_usize| { const index = @intCast(Target.Cpu.Feature.Set.Index, index_usize); const is_enabled = options.target.cpu.features.isEnabled(index); @@ -1818,7 +1818,7 @@ pub fn create(gpa: Allocator, options: InitOptions) !*Compilation { var system_libs: std.StringArrayHashMapUnmanaged(SystemLib) = .{}; errdefer system_libs.deinit(gpa); try system_libs.ensureTotalCapacity(gpa, options.system_lib_names.len); - for (options.system_lib_names) |lib_name, i| { + for (options.system_lib_names, 0..) |lib_name, i| { system_libs.putAssumeCapacity(lib_name, options.system_lib_infos[i]); } @@ -2880,7 +2880,7 @@ pub fn getAllErrorsAlloc(self: *Compilation) !AllErrors { } for (self.lld_errors.items) |lld_error| { const notes = try arena_allocator.alloc(AllErrors.Message, lld_error.context_lines.len); - for (lld_error.context_lines) |context_line, i| { + for (lld_error.context_lines, 0..) |context_line, i| { notes[i] = .{ .plain = .{ .msg = try arena_allocator.dupe(u8, context_line), } }; @@ -3007,7 +3007,7 @@ pub fn getAllErrorsAlloc(self: *Compilation) !AllErrors { }; defer self.gpa.free(err_msg.notes); - for (keys[1..]) |key, i| { + for (keys[1..], 0..) |key, i| { const note_decl = module.declPtr(key); err_msg.notes[i] = .{ .src_loc = note_decl.nodeOffsetSrcLoc(values[i + 1]), @@ -3104,7 +3104,7 @@ pub fn performAllTheWork( const notes = try mod.gpa.alloc(Module.ErrorMsg, file.references.items.len); errdefer mod.gpa.free(notes); - for (notes) |*note, i| { + for (notes, 0..) |*note, i| { errdefer for (notes[0..i]) |*n| n.deinit(mod.gpa); note.* = switch (file.references.items[i]) { .import => |loc| try Module.ErrorMsg.init( @@ -3740,7 +3740,7 @@ pub fn cImport(comp: *Compilation, c_src: []const u8) !CImportResult { const new_argv_with_sentinel = try arena.alloc(?[*:0]const u8, argv.items.len + 1); new_argv_with_sentinel[argv.items.len] = null; const new_argv = new_argv_with_sentinel[0..argv.items.len :null]; - for (argv.items) |arg, i| { + for (argv.items, 0..) |arg, i| { new_argv[i] = try arena.dupeZ(u8, arg); } @@ -4375,7 +4375,7 @@ pub fn addCCArgs( // It would be really nice if there was a more compact way to communicate this info to Clang. const all_features_list = target.cpu.arch.allFeaturesList(); try argv.ensureUnusedCapacity(all_features_list.len * 4); - for (all_features_list) |feature, index_usize| { + for (all_features_list, 0..) |feature, index_usize| { const index = @intCast(std.Target.Cpu.Feature.Set.Index, index_usize); const is_enabled = target.cpu.features.isEnabled(index); @@ -5203,7 +5203,7 @@ pub fn generateBuiltinZigSource(comp: *Compilation, allocator: Allocator) Alloca std.zig.fmtId(generic_arch_name), }); - for (target.cpu.arch.allFeaturesList()) |feature, index_usize| { + for (target.cpu.arch.allFeaturesList(), 0..) |feature, index_usize| { const index = @intCast(std.Target.Cpu.Feature.Set.Index, index_usize); const is_enabled = target.cpu.features.isEnabled(index); if (is_enabled) { diff --git a/src/Liveness.zig b/src/Liveness.zig index e775883b1f..481cf25d04 100644 --- a/src/Liveness.zig +++ b/src/Liveness.zig @@ -384,7 +384,7 @@ pub fn categorizeOperand( const args = @ptrCast([]const Air.Inst.Ref, air.extra[extra.end..][0..extra.data.args_len]); if (args.len + 1 <= bpi - 1) { if (callee == operand_ref) return matchOperandSmallIndex(l, inst, 0, .write); - for (args) |arg, i| { + for (args, 0..) |arg, i| { if (arg == operand_ref) return matchOperandSmallIndex(l, inst, @intCast(OperandInt, i + 1), .write); } return .write; @@ -436,7 +436,7 @@ pub fn categorizeOperand( const elements = @ptrCast([]const Air.Inst.Ref, air.extra[ty_pl.payload..][0..len]); if (elements.len <= bpi - 1) { - for (elements) |elem, i| { + for (elements, 0..) |elem, i| { if (elem == operand_ref) return matchOperandSmallIndex(l, inst, @intCast(OperandInt, i), .none); } return .none; @@ -1272,12 +1272,12 @@ fn analyzeInst( defer for (case_deaths) |*cd| cd.deinit(gpa); var total_deaths: u32 = 0; - for (case_tables) |*ct, i| { + for (case_tables, 0..) |*ct, i| { total_deaths += ct.count(); var it = ct.keyIterator(); while (it.next()) |key| { const case_death = key.*; - for (case_tables) |*ct_inner, j| { + for (case_tables, 0..) |*ct_inner, j| { if (i == j) continue; if (!ct_inner.contains(case_death)) { // instruction is not referenced in this case diff --git a/src/Manifest.zig b/src/Manifest.zig index c3f77aec98..068a14942f 100644 --- a/src/Manifest.zig +++ b/src/Manifest.zig @@ -123,7 +123,7 @@ pub fn hexDigest(digest: [Hash.digest_length]u8) [multihash_len * 2]u8 { result[2] = hex_charset[Hash.digest_length >> 4]; result[3] = hex_charset[Hash.digest_length & 15]; - for (digest) |byte, i| { + for (digest, 0..) |byte, i| { result[4 + i * 2] = hex_charset[byte >> 4]; result[5 + i * 2] = hex_charset[byte & 15]; } diff --git a/src/Module.zig b/src/Module.zig index a129cb0cb6..4feb04abdd 100644 --- a/src/Module.zig +++ b/src/Module.zig @@ -268,7 +268,7 @@ pub const MemoizedCall = struct { if (a.func != b.func) return false; assert(a.args.len == b.args.len); - for (a.args) |a_arg, arg_i| { + for (a.args, 0..) |a_arg, arg_i| { const b_arg = b.args[arg_i]; if (!a_arg.eql(b_arg, ctx.module)) { return false; @@ -1082,7 +1082,7 @@ pub const Struct = struct { assert(s.layout == .Packed); assert(s.haveLayout()); var bit_sum: u64 = 0; - for (s.fields.values()) |field, i| { + for (s.fields.values(), 0..) |field, i| { if (i == index) { return @intCast(u16, bit_sum); } @@ -1341,7 +1341,7 @@ pub const Union = struct { assert(u.haveFieldTypes()); var most_alignment: u32 = 0; var most_index: usize = undefined; - for (u.fields.values()) |field, i| { + for (u.fields.values(), 0..) |field, i| { if (!field.ty.hasRuntimeBits()) continue; const field_align = field.normalAlignment(target); @@ -1405,7 +1405,7 @@ pub const Union = struct { var payload_size: u64 = 0; var payload_align: u32 = 0; const fields = u.fields.values(); - for (fields) |field, i| { + for (fields, 0..) |field, i| { if (!field.ty.hasRuntimeBitsIgnoreComptime()) continue; const field_align = a: { @@ -3553,7 +3553,7 @@ pub fn astGenFile(mod: *Module, file: *File) !void { } if (data_has_safety_tag) { const tags = zir.instructions.items(.tag); - for (zir.instructions.items(.data)) |*data, i| { + for (zir.instructions.items(.data), 0..) |*data, i| { const union_tag = Zir.Inst.Tag.data_tags[@enumToInt(tags[i])]; const as_struct = @ptrCast(*HackDataLayout, data); as_struct.* = .{ @@ -3740,7 +3740,7 @@ pub fn astGenFile(mod: *Module, file: *File) !void { @ptrCast([*]const u8, file.zir.instructions.items(.data).ptr); if (data_has_safety_tag) { // The `Data` union has a safety tag but in the file format we store it without. - for (file.zir.instructions.items(.data)) |*data, i| { + for (file.zir.instructions.items(.data), 0..) |*data, i| { const as_struct = @ptrCast(*const HackDataLayout, data); safety_buffer[i] = as_struct.data; } @@ -6293,7 +6293,7 @@ pub fn populateTestFunctions( // Add a dependency on each test name and function pointer. try array_decl.dependencies.ensureUnusedCapacity(gpa, test_fn_vals.len * 2); - for (mod.test_functions.keys()) |test_decl_index, i| { + for (mod.test_functions.keys(), 0..) |test_decl_index, i| { const test_decl = mod.declPtr(test_decl_index); const test_name_slice = mem.sliceTo(test_decl.name, 0); const test_name_decl_index = n: { diff --git a/src/Package.zig b/src/Package.zig index a3afe21009..5878e7bad6 100644 --- a/src/Package.zig +++ b/src/Package.zig @@ -207,7 +207,7 @@ pub fn fetchAndAddDependencies( var any_error = false; const deps_list = manifest.dependencies.values(); - for (manifest.dependencies.keys()) |name, i| { + for (manifest.dependencies.keys(), 0..) |name, i| { const dep = deps_list[i]; const sub_prefix = try std.fmt.allocPrint(arena, "{s}{s}.", .{ name_prefix, name }); diff --git a/src/RangeSet.zig b/src/RangeSet.zig index a5007ef7c8..7e501f984b 100644 --- a/src/RangeSet.zig +++ b/src/RangeSet.zig @@ -79,7 +79,7 @@ pub fn spans(self: *RangeSet, first: Value, last: Value, ty: Type) !bool { const target = self.module.getTarget(); // look for gaps - for (self.ranges.items[1..]) |cur, i| { + for (self.ranges.items[1..], 0..) |cur, i| { // i starts counting from the second item. const prev = self.ranges.items[i]; diff --git a/src/Sema.zig b/src/Sema.zig index aeb4e25a24..fde9072d71 100644 --- a/src/Sema.zig +++ b/src/Sema.zig @@ -3801,7 +3801,7 @@ fn zirResolveInferredAlloc(sema: *Sema, block: *Block, inst: Zir.Inst.Index) Com const dummy_ptr = try trash_block.addTy(.alloc, mut_final_ptr_ty); const empty_trash_count = trash_block.instructions.items.len; - for (placeholders) |bitcast_inst, i| { + for (placeholders, 0..) |bitcast_inst, i| { const sub_ptr_ty = sema.typeOf(Air.indexToRef(bitcast_inst)); if (mut_final_ptr_ty.eql(sub_ptr_ty, sema.mod)) { @@ -3917,7 +3917,7 @@ fn zirForLen(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air. defer gpa.free(runtime_arg_lens); // First pass to look for comptime values. - for (args) |zir_arg, i| { + for (args, 0..) |zir_arg, i| { runtime_arg_lens[i] = .none; if (zir_arg == .none) continue; const object = try sema.resolveInst(zir_arg); @@ -3957,7 +3957,7 @@ fn zirForLen(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air. // Now for the runtime checks. if (any_runtime and block.wantSafety()) { - for (runtime_arg_lens) |arg_len, i| { + for (runtime_arg_lens, 0..) |arg_len, i| { if (arg_len == .none) continue; if (i == len_idx) continue; const ok = try block.addBinOp(.cmp_eq, len, arg_len); @@ -4247,7 +4247,7 @@ fn validateStructInit( // In this case the only thing we need to do is evaluate the implicit // store instructions for default field values, and report any missing fields. // Avoid the cost of the extra machinery for detecting a comptime struct init value. - for (found_fields) |field_ptr, i| { + for (found_fields, 0..) |field_ptr, i| { if (field_ptr != 0) continue; const default_val = struct_ty.structFieldDefaultValue(i); @@ -4313,7 +4313,7 @@ fn validateStructInit( // ends up being comptime-known. const field_values = try sema.arena.alloc(Value, struct_ty.structFieldCount()); - field: for (found_fields) |field_ptr, i| { + field: for (found_fields, 0..) |field_ptr, i| { if (field_ptr != 0) { // Determine whether the value stored to this pointer is comptime-known. const field_ty = struct_ty.structFieldType(i); @@ -4446,7 +4446,7 @@ fn validateStructInit( try sema.resolveStructLayout(struct_ty); // Our task is to insert `store` instructions for all the default field values. - for (found_fields) |field_ptr, i| { + for (found_fields, 0..) |field_ptr, i| { if (field_ptr != 0) continue; const field_src = init_src; // TODO better source location @@ -4540,7 +4540,7 @@ fn zirValidateArrayInit( const air_tags = sema.air_instructions.items(.tag); const air_datas = sema.air_instructions.items(.data); - outer: for (instrs) |elem_ptr, i| { + outer: for (instrs, 0..) |elem_ptr, i| { // Determine whether the value stored to this pointer is comptime-known. if (array_ty.isTuple()) { @@ -5059,7 +5059,7 @@ fn zirCompileLog( const src_node = extra.data.src_node; const args = sema.code.refSlice(extra.end, extended.small); - for (args) |arg_ref, i| { + for (args, 0..) |arg_ref, i| { if (i != 0) try writer.print(", ", .{}); const arg = try sema.resolveInst(arg_ref); @@ -6277,7 +6277,7 @@ const GenericCallAdapter = struct { if (ctx.generic_fn.owner_decl != other_key.generic_owner_decl.unwrap().?) return false; const other_comptime_args = other_key.comptime_args.?; - for (other_comptime_args[0..ctx.func_ty_info.param_types.len]) |other_arg, i| { + for (other_comptime_args[0..ctx.func_ty_info.param_types.len], 0..) |other_arg, i| { const this_arg = ctx.args[i]; const this_is_comptime = this_arg.val.tag() != .generic_poison; const other_is_comptime = other_arg.val.tag() != .generic_poison; @@ -6793,7 +6793,7 @@ fn analyzeCall( assert(!func_ty_info.is_generic); const args = try sema.arena.alloc(Air.Inst.Ref, uncasted_args.len); - for (uncasted_args) |uncasted_arg, i| { + for (uncasted_args, 0..) |uncasted_arg, i| { if (i < fn_params_len) { const opts: CoerceOpts = .{ .param_src = .{ .func_inst = func, @@ -7568,7 +7568,7 @@ fn resolveGenericInstantiationType( fn resolveTupleLazyValues(sema: *Sema, block: *Block, src: LazySrcLoc, ty: Type) CompileError!void { if (!ty.isSimpleTupleOrAnonStruct()) return; const tuple = ty.tupleFields(); - for (tuple.values) |field_val, i| { + for (tuple.values, 0..) |field_val, i| { try sema.resolveTupleLazyValues(block, src, tuple.types[i]); if (field_val.tag() == .unreachable_value) continue; try sema.resolveLazyValue(field_val); @@ -8642,7 +8642,7 @@ fn funcCommon( const cc_resolved = cc orelse .Unspecified; const param_types = try sema.arena.alloc(Type, block.params.items.len); const comptime_params = try sema.arena.alloc(bool, block.params.items.len); - for (block.params.items) |param, i| { + for (block.params.items, 0..) |param, i| { const is_noalias = blk: { const index = std.math.cast(u5, i) orelse break :blk false; break :blk @truncate(u1, noalias_bits >> index) != 0; @@ -8751,7 +8751,7 @@ fn funcCommon( const tags = sema.code.instructions.items(.tag); const data = sema.code.instructions.items(.data); const param_body = sema.code.getParamBody(func_inst); - for (block.params.items) |param, i| { + for (block.params.items, 0..) |param, i| { if (!param.is_comptime) { const param_index = param_body[i]; const param_src = switch (tags[param_index]) { @@ -9850,7 +9850,7 @@ fn zirSwitchCapture( const first_field_index = @intCast(u32, operand_ty.unionTagFieldIndex(first_item_val, sema.mod).?); const first_field = union_obj.fields.values()[first_field_index]; - for (items[1..]) |item, i| { + for (items[1..], 0..) |item, i| { const item_ref = try sema.resolveInst(item); // Previous switch validation ensured this will succeed const item_val = sema.resolveConstValue(block, .unneeded, item_ref, "") catch unreachable; @@ -10180,7 +10180,7 @@ fn zirSwitchBlock(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError const items = sema.code.refSlice(extra_index, items_len); extra_index += items_len + body_len; - for (items) |item_ref, item_i| { + for (items, 0..) |item_ref, item_i| { try sema.validateSwitchItemEnum( block, seen_enum_fields, @@ -10214,7 +10214,7 @@ fn zirSwitchBlock(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError .{}, ); errdefer msg.destroy(sema.gpa); - for (seen_enum_fields) |seen_src, i| { + for (seen_enum_fields, 0..) |seen_src, i| { if (seen_src != null) continue; const field_name = operand_ty.enumFieldName(i); @@ -10276,7 +10276,7 @@ fn zirSwitchBlock(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError const items = sema.code.refSlice(extra_index, items_len); extra_index += items_len + body_len; - for (items) |item_ref, item_i| { + for (items, 0..) |item_ref, item_i| { try sema.validateSwitchItemError( block, &seen_errors, @@ -10418,7 +10418,7 @@ fn zirSwitchBlock(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError const items = sema.code.refSlice(extra_index, items_len); extra_index += items_len; - for (items) |item_ref, item_i| { + for (items, 0..) |item_ref, item_i| { try sema.validateSwitchItem( block, &range_set, @@ -10513,7 +10513,7 @@ fn zirSwitchBlock(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError const items = sema.code.refSlice(extra_index, items_len); extra_index += items_len + body_len; - for (items) |item_ref, item_i| { + for (items, 0..) |item_ref, item_i| { try sema.validateSwitchItemBool( block, &true_count, @@ -10597,7 +10597,7 @@ fn zirSwitchBlock(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError const items = sema.code.refSlice(extra_index, items_len); extra_index += items_len + body_len; - for (items) |item_ref, item_i| { + for (items, 0..) |item_ref, item_i| { try sema.validateSwitchItemSparse( block, &seen_values, @@ -10908,7 +10908,7 @@ fn zirSwitchBlock(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError } } - for (items) |item_ref, item_i| { + for (items, 0..) |item_ref, item_i| { cases_len += 1; const item = try sema.resolveInst(item_ref); @@ -11094,7 +11094,7 @@ fn zirSwitchBlock(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError operand_ty.fmt(sema.mod), }); } - for (seen_enum_fields) |f, i| { + for (seen_enum_fields, 0..) |f, i| { if (f != null) continue; cases_len += 1; @@ -11237,7 +11237,7 @@ fn zirSwitchBlock(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError } const analyze_body = if (union_originally and !special.is_inline) - for (seen_enum_fields) |seen_field, index| { + for (seen_enum_fields, 0..) |seen_field, index| { if (seen_field != null) continue; const union_obj = maybe_union_ty.cast(Type.Payload.Union).?.data; const field_ty = union_obj.fields.values()[index].ty; @@ -12217,7 +12217,7 @@ fn zirBitNot(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air. const vec_len = try sema.usizeCast(block, operand_src, operand_type.vectorLen()); var elem_val_buf: Value.ElemValueBuffer = undefined; const elems = try sema.arena.alloc(Value, vec_len); - for (elems) |*elem, i| { + for (elems, 0..) |*elem, i| { const elem_val = val.elemValueBuffer(sema.mod, i, &elem_val_buf); elem.* = try elem_val.bitwiseNot(scalar_type, sema.arena, sema.mod); } @@ -13661,7 +13661,7 @@ fn intRem( ) CompileError!Value { if (ty.zigTypeTag() == .Vector) { const result_data = try sema.arena.alloc(Value, ty.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(sema.mod, i, &lhs_buf); @@ -14771,7 +14771,7 @@ fn zirAsm( const outputs = try sema.arena.alloc(ConstraintName, outputs_len); var expr_ty = Air.Inst.Ref.void_type; - for (out_args) |*arg, out_i| { + for (out_args, 0..) |*arg, out_i| { const output = sema.code.extraData(Zir.Inst.Asm.Output, extra_i); extra_i = output.end; @@ -14798,7 +14798,7 @@ fn zirAsm( const args = try sema.arena.alloc(Air.Inst.Ref, inputs_len); const inputs = try sema.arena.alloc(ConstraintName, inputs_len); - for (args) |*arg, arg_i| { + for (args, 0..) |*arg, arg_i| { const input = sema.code.extraData(Zir.Inst.Asm.Input, extra_i); extra_i = input.end; @@ -15522,7 +15522,7 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai defer params_anon_decl.deinit(); const param_vals = try params_anon_decl.arena().alloc(Value, info.param_types.len); - for (param_vals) |*param_val, i| { + for (param_vals, 0..) |*param_val, i| { const param_ty = info.param_types[i]; const is_generic = param_ty.tag() == .generic_poison; const param_ty_val = if (is_generic) @@ -15766,7 +15766,7 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai const error_field_vals: ?[]Value = if (ty.isAnyError()) null else blk: { const names = ty.errorSetNames(); const vals = try fields_anon_decl.arena().alloc(Value, names.len); - for (vals) |*field_val, i| { + for (vals, 0..) |*field_val, i| { const name = names[i]; const name_val = v: { var anon_decl = try block.startAnonDecl(); @@ -15868,7 +15868,7 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai const enum_fields = ty.enumFields(); const enum_field_vals = try fields_anon_decl.arena().alloc(Value, enum_fields.count()); - for (enum_field_vals) |*field_val, i| { + for (enum_field_vals, 0..) |*field_val, i| { var tag_val_payload: Value.Payload.U32 = .{ .base = .{ .tag = .enum_field_index }, .data = @intCast(u32, i), @@ -15965,7 +15965,7 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai const union_fields = union_ty.unionFields(); const union_field_vals = try fields_anon_decl.arena().alloc(Value, union_fields.count()); - for (union_field_vals) |*field_val, i| { + for (union_field_vals, 0..) |*field_val, i| { const field = union_fields.values()[i]; const name = union_fields.keys()[i]; const name_val = v: { @@ -16074,7 +16074,7 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai const tuple = struct_ty.tupleFields(); const field_types = tuple.types; const struct_field_vals = try fields_anon_decl.arena().alloc(Value, field_types.len); - for (struct_field_vals) |*struct_field_val, i| { + for (struct_field_vals, 0..) |*struct_field_val, i| { const field_ty = field_types[i]; const name_val = v: { var anon_decl = try block.startAnonDecl(); @@ -16118,7 +16118,7 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai const struct_fields = struct_ty.structFields(); const struct_field_vals = try fields_anon_decl.arena().alloc(Value, struct_fields.count()); - for (struct_field_vals) |*field_val, i| { + for (struct_field_vals, 0..) |*field_val, i| { const field = struct_fields.values()[i]; const name = struct_fields.keys()[i]; const name_val = v: { @@ -16457,7 +16457,7 @@ fn zirTypeofPeer( const inst_list = try sema.gpa.alloc(Air.Inst.Ref, args.len); defer sema.gpa.free(inst_list); - for (args) |arg_ref, i| { + for (args, 0..) |arg_ref, i| { inst_list[i] = try sema.resolveInst(arg_ref); } @@ -17568,7 +17568,7 @@ fn finishStructInit( if (struct_ty.isAnonStruct()) { const struct_obj = struct_ty.castTag(.anon_struct).?.data; - for (struct_obj.values) |default_val, i| { + for (struct_obj.values, 0..) |default_val, i| { if (field_inits[i] != .none) continue; if (default_val.tag() == .unreachable_value) { @@ -17604,7 +17604,7 @@ fn finishStructInit( } } else { const struct_obj = struct_ty.castTag(.@"struct").?.data; - for (struct_obj.fields.values()) |field, i| { + for (struct_obj.fields.values(), 0..) |field, i| { if (field_inits[i] != .none) continue; if (field.default_val.tag() == .unreachable_value) { @@ -17645,7 +17645,7 @@ fn finishStructInit( if (is_comptime) { const values = try sema.arena.alloc(Value, field_inits.len); - for (field_inits) |field_init, i| { + for (field_inits, 0..) |field_init, i| { values[i] = (sema.resolveMaybeUndefVal(field_init) catch unreachable).?; } const struct_val = try Value.Tag.aggregate.create(sema.arena, values); @@ -17660,7 +17660,7 @@ fn finishStructInit( .@"addrspace" = target_util.defaultAddressSpace(target, .local), }); const alloc = try block.addTy(.alloc, alloc_ty); - for (field_inits) |field_init, i_usize| { + for (field_inits, 0..) |field_init, i_usize| { const i = @intCast(u32, i_usize); const field_src = dest_src; const field_ptr = try sema.structFieldPtrByIndex(block, dest_src, alloc, i, field_src, struct_ty, true); @@ -17693,7 +17693,7 @@ fn zirStructInitAnon( const opt_runtime_index = rs: { var runtime_index: ?usize = null; var extra_index = extra.end; - for (types) |*field_ty, i| { + for (types, 0..) |*field_ty, i| { const item = sema.code.extraData(Zir.Inst.StructInitAnon.Item, extra_index); extra_index = item.end; @@ -17767,7 +17767,7 @@ fn zirStructInitAnon( }); const alloc = try block.addTy(.alloc, alloc_ty); var extra_index = extra.end; - for (types) |field_ty, i_usize| { + for (types, 0..) |field_ty, i_usize| { const i = @intCast(u32, i_usize); const item = sema.code.extraData(Zir.Inst.StructInitAnon.Item, extra_index); extra_index = item.end; @@ -17789,7 +17789,7 @@ fn zirStructInitAnon( const element_refs = try sema.arena.alloc(Air.Inst.Ref, types.len); var extra_index = extra.end; - for (types) |_, i| { + for (types, 0..) |_, i| { const item = sema.code.extraData(Zir.Inst.StructInitAnon.Item, extra_index); extra_index = item.end; element_refs[i] = try sema.resolveInst(item.data.init); @@ -17817,7 +17817,7 @@ fn zirArrayInit( const resolved_args = try gpa.alloc(Air.Inst.Ref, args.len - 1 + @boolToInt(sentinel_val != null)); defer gpa.free(resolved_args); - for (args[1..]) |arg, i| { + for (args[1..], 0..) |arg, i| { const resolved_arg = try sema.resolveInst(arg); const elem_ty = if (array_ty.zigTypeTag() == .Struct) array_ty.structFieldType(i) @@ -17838,7 +17838,7 @@ fn zirArrayInit( resolved_args[resolved_args.len - 1] = try sema.addConstant(array_ty.elemType2(), some); } - const opt_runtime_index: ?u32 = for (resolved_args) |arg, i| { + const opt_runtime_index: ?u32 = for (resolved_args, 0..) |arg, i| { const comptime_known = try sema.isComptimeKnown(arg); if (!comptime_known) break @intCast(u32, i); } else null; @@ -17846,7 +17846,7 @@ fn zirArrayInit( const runtime_index = opt_runtime_index orelse { const elem_vals = try sema.arena.alloc(Value, resolved_args.len); - for (resolved_args) |arg, i| { + for (resolved_args, 0..) |arg, i| { // We checked that all args are comptime above. elem_vals[i] = (sema.resolveMaybeUndefVal(arg) catch unreachable).?; } @@ -17875,7 +17875,7 @@ fn zirArrayInit( const alloc = try block.addTy(.alloc, alloc_ty); if (array_ty.isTuple()) { - for (resolved_args) |arg, i| { + for (resolved_args, 0..) |arg, i| { const elem_ptr_ty = try Type.ptr(sema.arena, sema.mod, .{ .mutable = true, .@"addrspace" = target_util.defaultAddressSpace(target, .local), @@ -17897,7 +17897,7 @@ fn zirArrayInit( }); const elem_ptr_ty_ref = try sema.addType(elem_ptr_ty); - for (resolved_args) |arg, i| { + for (resolved_args, 0..) |arg, i| { const index = try sema.addIntUnsigned(Type.usize, i); const elem_ptr = try block.addPtrElemPtrTypeRef(alloc, index, elem_ptr_ty_ref); _ = try block.addBinOp(.store, elem_ptr, arg); @@ -17924,7 +17924,7 @@ fn zirArrayInitAnon( const opt_runtime_src = rs: { var runtime_src: ?LazySrcLoc = null; - for (operands) |operand, i| { + for (operands, 0..) |operand, i| { const operand_src = src; // TODO better source location const elem = try sema.resolveInst(operand); types[i] = sema.typeOf(elem); @@ -17967,7 +17967,7 @@ fn zirArrayInitAnon( .@"addrspace" = target_util.defaultAddressSpace(target, .local), }); const alloc = try block.addTy(.alloc, alloc_ty); - for (operands) |operand, i_usize| { + for (operands, 0..) |operand, i_usize| { const i = @intCast(u32, i_usize); const field_ptr_ty = try Type.ptr(sema.arena, sema.mod, .{ .mutable = true, @@ -17984,7 +17984,7 @@ fn zirArrayInitAnon( } const element_refs = try sema.arena.alloc(Air.Inst.Ref, operands.len); - for (operands) |operand, i| { + for (operands, 0..) |operand, i| { element_refs[i] = try sema.resolveInst(operand); } @@ -18187,7 +18187,7 @@ fn zirUnaryMath( var elem_buf: Value.ElemValueBuffer = undefined; const elems = try sema.arena.alloc(Value, vec_len); - for (elems) |*elem, i| { + for (elems, 0..) |*elem, i| { const elem_val = val.elemValueBuffer(sema.mod, i, &elem_buf); elem.* = try eval(elem_val, scalar_ty, sema.arena, sema.mod); } @@ -19191,7 +19191,7 @@ fn reifyStruct( if (layout == .Packed) { struct_obj.status = .layout_wip; - for (struct_obj.fields.values()) |field, index| { + for (struct_obj.fields.values(), 0..) |field, index| { sema.resolveTypeLayout(field.ty) catch |err| switch (err) { error.AnalysisFail => { const msg = sema.err orelse return err; @@ -19820,7 +19820,7 @@ fn zirTruncate(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai } var elem_buf: Value.ElemValueBuffer = undefined; const elems = try sema.arena.alloc(Value, operand_ty.vectorLen()); - for (elems) |*elem, i| { + for (elems, 0..) |*elem, i| { const elem_val = val.elemValueBuffer(sema.mod, i, &elem_buf); elem.* = try elem_val.intTrunc(operand_scalar_ty, sema.arena, dest_info.signedness, dest_info.bits, sema.mod); } @@ -19922,7 +19922,7 @@ fn zirBitCount( var elem_buf: Value.ElemValueBuffer = undefined; const elems = try sema.arena.alloc(Value, vec_len); const scalar_ty = operand_ty.scalarType(); - for (elems) |*elem, i| { + for (elems, 0..) |*elem, i| { const elem_val = val.elemValueBuffer(sema.mod, i, &elem_buf); const count = comptimeOp(elem_val, scalar_ty, target); elem.* = try Value.Tag.int_u64.create(sema.arena, count); @@ -19991,7 +19991,7 @@ fn zirByteSwap(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai const vec_len = operand_ty.vectorLen(); var elem_buf: Value.ElemValueBuffer = undefined; const elems = try sema.arena.alloc(Value, vec_len); - for (elems) |*elem, i| { + for (elems, 0..) |*elem, i| { const elem_val = val.elemValueBuffer(sema.mod, i, &elem_buf); elem.* = try elem_val.byteSwap(operand_ty, target, sema.arena); } @@ -20040,7 +20040,7 @@ fn zirBitReverse(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError! const vec_len = operand_ty.vectorLen(); var elem_buf: Value.ElemValueBuffer = undefined; const elems = try sema.arena.alloc(Value, vec_len); - for (elems) |*elem, i| { + for (elems, 0..) |*elem, i| { const elem_val = val.elemValueBuffer(sema.mod, i, &elem_buf); elem.* = try elem_val.bitReverse(scalar_ty, target, sema.arena); } @@ -20109,7 +20109,7 @@ fn bitOffsetOf(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!u6 .Packed => { var bit_sum: u64 = 0; const fields = ty.structFields(); - for (fields.values()) |field, i| { + for (fields.values(), 0..) |field, i| { if (i == field_index) { return bit_sum; } @@ -21046,7 +21046,7 @@ fn zirSelect(sema: *Sema, block: *Block, extended: Zir.Inst.Extended.InstData) C var buf: Value.ElemValueBuffer = undefined; const elems = try sema.gpa.alloc(Value, vec_len); - for (elems) |*elem, i| { + for (elems, 0..) |*elem, i| { const pred_elem_val = pred_val.elemValueBuffer(sema.mod, i, &buf); const should_choose_a = pred_elem_val.toBool(); if (should_choose_a) { @@ -21396,12 +21396,12 @@ fn zirBuiltinCall(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError func = bound_data.func_inst; resolved_args = try sema.arena.alloc(Air.Inst.Ref, args_ty.structFieldCount() + 1); resolved_args[0] = bound_data.arg0_inst; - for (resolved_args[1..]) |*resolved, i| { + for (resolved_args[1..], 0..) |*resolved, i| { resolved.* = try sema.tupleFieldValByIndex(block, args_src, args, @intCast(u32, i), args_ty); } } else { resolved_args = try sema.arena.alloc(Air.Inst.Ref, args_ty.structFieldCount()); - for (resolved_args) |*resolved, i| { + for (resolved_args, 0..) |*resolved, i| { resolved.* = try sema.tupleFieldValByIndex(block, args_src, args, @intCast(u32, i), args_ty); } } @@ -21556,7 +21556,7 @@ fn analyzeMinMax( var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const elems = try sema.arena.alloc(Value, vec_len); - for (elems) |*elem, i| { + for (elems, 0..) |*elem, i| { const lhs_elem_val = lhs_val.elemValueBuffer(sema.mod, i, &lhs_buf); const rhs_elem_val = rhs_val.elemValueBuffer(sema.mod, i, &rhs_buf); elem.* = opFunc(lhs_elem_val, rhs_elem_val, target); @@ -22453,7 +22453,7 @@ fn explainWhyTypeIsComptimeInner( if (ty.castTag(.@"struct")) |payload| { const struct_obj = payload.data; - for (struct_obj.fields.values()) |field, i| { + for (struct_obj.fields.values(), 0..) |field, i| { const field_src_loc = struct_obj.fieldSrcLoc(sema.mod, .{ .index = i, .range = .type, @@ -22473,7 +22473,7 @@ fn explainWhyTypeIsComptimeInner( if (ty.cast(Type.Payload.Union)) |payload| { const union_obj = payload.data; - for (union_obj.fields.values()) |field, i| { + for (union_obj.fields.values(), 0..) |field, i| { const field_src_loc = union_obj.fieldSrcLoc(sema.mod, .{ .index = i, .range = .type, @@ -23744,7 +23744,7 @@ fn structFieldPtrByIndex( comptime assert(Type.packed_struct_layout_version == 2); var running_bits: u16 = 0; - for (struct_obj.fields.values()) |f, i| { + for (struct_obj.fields.values(), 0..) |f, i| { if (!(try sema.typeHasRuntimeBits(f.ty))) continue; if (i == field_index) { @@ -26053,7 +26053,7 @@ fn coerceInMemoryAllowedFns( } }; } - for (dest_info.param_types) |dest_param_ty, i| { + for (dest_info.param_types, 0..) |dest_param_ty, i| { const src_param_ty = src_info.param_types[i]; if (dest_info.comptime_params[i] != src_info.comptime_params[i]) { @@ -26583,7 +26583,7 @@ fn beginComptimePtrMutation( // assigning `[N:S]T` to `[N]T`. This is allowed; the sentinel is omitted. assert(bytes.len >= dest_len); const elems = try arena.alloc(Value, @intCast(usize, dest_len)); - for (elems) |*elem, i| { + for (elems, 0..) |*elem, i| { elem.* = try Value.Tag.int_u64.create(arena, bytes[i]); } @@ -26612,7 +26612,7 @@ fn beginComptimePtrMutation( const dest_len = parent.ty.arrayLenIncludingSentinel(); const bytes = sema.mod.string_literal_bytes.items[str_lit.index..][0..str_lit.len]; const elems = try arena.alloc(Value, @intCast(usize, dest_len)); - for (bytes) |byte, i| { + for (bytes, 0..) |byte, i| { elems[i] = try Value.Tag.int_u64.create(arena, byte); } if (parent.ty.sentinel()) |sent_val| { @@ -27583,7 +27583,7 @@ fn coerceEnumToUnion( var msg: ?*Module.ErrorMsg = null; errdefer if (msg) |some| some.destroy(sema.gpa); - for (union_obj.fields.values()) |field, i| { + for (union_obj.fields.values(), 0..) |field, i| { if (field.ty.zigTypeTag() == .NoReturn) { const err_msg = msg orelse try sema.errMsg( block, @@ -27742,7 +27742,7 @@ fn coerceArrayLike( const element_refs = try sema.arena.alloc(Air.Inst.Ref, dest_len); var runtime_src: ?LazySrcLoc = null; - for (element_vals) |*elem, i| { + for (element_vals, 0..) |*elem, i| { const index_ref = try sema.addConstant( Type.usize, try Value.Tag.int_u64.create(sema.arena, i), @@ -27804,7 +27804,7 @@ fn coerceTupleToArray( const dest_elem_ty = dest_ty.childType(); var runtime_src: ?LazySrcLoc = null; - for (element_vals) |*elem, i_usize| { + for (element_vals, 0..) |*elem, i_usize| { const i = @intCast(u32, i_usize); if (i_usize == inst_len) { elem.* = dest_ty.sentinel().?; @@ -27933,7 +27933,7 @@ fn coerceTupleToStruct( var root_msg: ?*Module.ErrorMsg = null; errdefer if (root_msg) |msg| msg.destroy(sema.gpa); - for (field_refs) |*field_ref, i| { + for (field_refs, 0..) |*field_ref, i| { if (field_ref.* != .none) continue; const field_name = fields.keys()[i]; @@ -28031,7 +28031,7 @@ fn coerceTupleToTuple( var root_msg: ?*Module.ErrorMsg = null; errdefer if (root_msg) |msg| msg.destroy(sema.gpa); - for (field_refs) |*field_ref, i| { + for (field_refs, 0..) |*field_ref, i| { if (field_ref.* != .none) continue; const default_val = tuple_ty.structFieldDefaultValue(i); @@ -29407,7 +29407,7 @@ fn resolvePeerTypes( var seen_const = false; var convert_to_slice = false; var chosen_i: usize = 0; - for (instructions[1..]) |candidate, candidate_i| { + for (instructions[1..], 0..) |candidate, candidate_i| { const candidate_ty = sema.typeOf(candidate); const chosen_ty = sema.typeOf(chosen); @@ -30066,7 +30066,7 @@ fn resolveStructLayout(sema: *Sema, ty: Type) CompileError!void { }; struct_obj.status = .layout_wip; - for (struct_obj.fields.values()) |field, i| { + for (struct_obj.fields.values(), 0..) |field, i| { sema.resolveTypeLayout(field.ty) catch |err| switch (err) { error.AnalysisFail => { const msg = sema.err orelse return err; @@ -30104,7 +30104,7 @@ fn resolveStructLayout(sema: *Sema, ty: Type) CompileError!void { break :blk try decl_arena_allocator.alloc(u32, struct_obj.fields.count()); }; - for (struct_obj.fields.values()) |field, i| { + for (struct_obj.fields.values(), 0..) |field, i| { optimized_order[i] = if (field.ty.hasRuntimeBits()) @intCast(u32, i) else @@ -30309,7 +30309,7 @@ fn resolveUnionLayout(sema: *Sema, ty: Type) CompileError!void { }; union_obj.status = .layout_wip; - for (union_obj.fields.values()) |field, i| { + for (union_obj.fields.values(), 0..) |field, i| { sema.resolveTypeLayout(field.ty) catch |err| switch (err) { error.AnalysisFail => { const msg = sema.err orelse return err; @@ -30457,7 +30457,7 @@ pub fn resolveTypeRequiresComptime(sema: *Sema, ty: Type) CompileError!bool { .tuple, .anon_struct => { const tuple = ty.tupleFields(); - for (tuple.types) |field_ty, i| { + for (tuple.types, 0..) |field_ty, i| { const have_comptime_val = tuple.values[i].tag() != .unreachable_value; if (!have_comptime_val and try sema.resolveTypeRequiresComptime(field_ty)) { return true; @@ -30972,7 +30972,7 @@ fn semaStructFields(mod: *Module, struct_obj: *Module.Struct) CompileError!void // so that init values may depend on type layout. const bodies_index = extra_index; - for (fields) |zir_field, field_i| { + for (fields, 0..) |zir_field, field_i| { const field_ty: Type = ty: { if (zir_field.type_ref != .none) { break :ty sema.resolveType(&block_scope, .unneeded, zir_field.type_ref) catch |err| switch (err) { @@ -31094,7 +31094,7 @@ fn semaStructFields(mod: *Module, struct_obj: *Module.Struct) CompileError!void if (any_inits) { extra_index = bodies_index; - for (fields) |zir_field, field_i| { + for (fields, 0..) |zir_field, field_i| { extra_index += zir_field.type_body_len; extra_index += zir_field.align_body_len; if (zir_field.init_body_len > 0) { @@ -31814,7 +31814,7 @@ pub fn typeHasOnePossibleValue(sema: *Sema, ty: Type) CompileError!?Value { .@"struct" => { const resolved_ty = try sema.resolveTypeFields(ty); const s = resolved_ty.castTag(.@"struct").?.data; - for (s.fields.values()) |field, i| { + for (s.fields.values(), 0..) |field, i| { if (field.is_comptime) continue; if (field.ty.eql(resolved_ty, sema.mod)) { const msg = try Module.ErrorMsg.create( @@ -31835,7 +31835,7 @@ pub fn typeHasOnePossibleValue(sema: *Sema, ty: Type) CompileError!?Value { .tuple, .anon_struct => { const tuple = ty.tupleFields(); - for (tuple.values) |val, i| { + for (tuple.values, 0..) |val, i| { const is_comptime = val.tag() != .unreachable_value; if (is_comptime) continue; if ((try sema.typeHasOnePossibleValue(tuple.types[i])) != null) continue; @@ -32475,7 +32475,7 @@ pub fn typeRequiresComptime(sema: *Sema, ty: Type) CompileError!bool { .tuple, .anon_struct => { const tuple = ty.tupleFields(); - for (tuple.types) |field_ty, i| { + for (tuple.types, 0..) |field_ty, i| { const have_comptime_val = tuple.values[i].tag() != .unreachable_value; if (!have_comptime_val and try sema.typeRequiresComptime(field_ty)) { return true; @@ -32635,7 +32635,7 @@ fn anonStructFieldIndex( field_src: LazySrcLoc, ) !u32 { const anon_struct = struct_ty.castTag(.anon_struct).?.data; - for (anon_struct.names) |name, i| { + for (anon_struct.names, 0..) |name, i| { if (mem.eql(u8, name, field_name)) { return @intCast(u32, i); } @@ -32653,7 +32653,7 @@ fn queueFullTypeResolution(sema: *Sema, ty: Type) !void { fn intAdd(sema: *Sema, lhs: Value, rhs: Value, ty: Type) !Value { if (ty.zigTypeTag() == .Vector) { const result_data = try sema.arena.alloc(Value, ty.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(sema.mod, i, &lhs_buf); @@ -32711,7 +32711,7 @@ fn intSub( ) !Value { if (ty.zigTypeTag() == .Vector) { const result_data = try sema.arena.alloc(Value, ty.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(sema.mod, i, &lhs_buf); @@ -32769,7 +32769,7 @@ fn floatAdd( ) !Value { if (float_type.zigTypeTag() == .Vector) { const result_data = try sema.arena.alloc(Value, float_type.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(sema.mod, i, &lhs_buf); @@ -32826,7 +32826,7 @@ fn floatSub( ) !Value { if (float_type.zigTypeTag() == .Vector) { const result_data = try sema.arena.alloc(Value, float_type.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(sema.mod, i, &lhs_buf); @@ -32884,7 +32884,7 @@ fn intSubWithOverflow( if (ty.zigTypeTag() == .Vector) { const overflowed_data = try sema.arena.alloc(Value, ty.vectorLen()); const result_data = try sema.arena.alloc(Value, ty.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(sema.mod, i, &lhs_buf); @@ -32938,7 +32938,7 @@ fn floatToInt( if (float_ty.zigTypeTag() == .Vector) { const elem_ty = float_ty.childType(); const result_data = try sema.arena.alloc(Value, float_ty.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var buf: Value.ElemValueBuffer = undefined; const elem_val = val.elemValueBuffer(sema.mod, i, &buf); scalar.* = try sema.floatToIntScalar(block, src, elem_val, elem_ty, int_ty.scalarType()); @@ -33138,7 +33138,7 @@ fn intFitsInType( .aggregate => { assert(ty.zigTypeTag() == .Vector); - for (val.castTag(.aggregate).?.data) |elem, i| { + for (val.castTag(.aggregate).?.data, 0..) |elem, i| { if (!(try sema.intFitsInType(elem, ty.scalarType(), null))) { if (vector_index) |some| some.* = i; return false; @@ -33235,7 +33235,7 @@ fn intAddWithOverflow( if (ty.zigTypeTag() == .Vector) { const overflowed_data = try sema.arena.alloc(Value, ty.vectorLen()); const result_data = try sema.arena.alloc(Value, ty.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(sema.mod, i, &lhs_buf); @@ -33339,7 +33339,7 @@ fn compareVector( ) !Value { assert(ty.zigTypeTag() == .Vector); const result_data = try sema.arena.alloc(Value, ty.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(sema.mod, i, &lhs_buf); diff --git a/src/arch/aarch64/CodeGen.zig b/src/arch/aarch64/CodeGen.zig index 473a62fd83..5b0db30757 100644 --- a/src/arch/aarch64/CodeGen.zig +++ b/src/arch/aarch64/CodeGen.zig @@ -515,7 +515,7 @@ fn gen(self: *Self) !void { self.ret_mcv = MCValue{ .stack_offset = stack_offset }; } - for (self.args) |*arg, arg_index| { + for (self.args, 0..) |*arg, arg_index| { // Copy register arguments to the stack switch (arg.*) { .register => |reg| { @@ -1633,14 +1633,14 @@ fn allocRegs( var reused_read_arg: ?usize = null; // Lock all args which are already allocated to registers - for (read_args) |arg, i| { + for (read_args, 0..) |arg, i| { const mcv = try arg.bind.resolveToMcv(self); if (mcv == .register) { read_locks[i] = self.register_manager.lockReg(mcv.register); } } - for (write_args) |arg, i| { + for (write_args, 0..) |arg, i| { if (arg.bind == .reg) { write_locks[i] = self.register_manager.lockReg(arg.bind.reg); } @@ -1648,7 +1648,7 @@ fn allocRegs( // Allocate registers for all args which aren't allocated to // registers yet - for (read_args) |arg, i| { + for (read_args, 0..) |arg, i| { const mcv = try arg.bind.resolveToMcv(self); if (mcv == .register) { const raw_reg = mcv.register; @@ -1672,7 +1672,7 @@ fn allocRegs( const raw_reg = arg.bind.reg; arg.reg.* = self.registerAlias(raw_reg, arg.ty); } else { - reuse_operand: for (read_args) |read_arg, i| { + reuse_operand: for (read_args, 0..) |read_arg, i| { if (read_arg.bind == .inst) { const operand = read_arg.bind.inst; const mcv = try self.resolveInst(operand); @@ -1694,7 +1694,7 @@ fn allocRegs( } } } else { - for (write_args) |arg, i| { + for (write_args, 0..) |arg, i| { if (arg.bind == .reg) { const raw_reg = arg.bind.reg; arg.reg.* = self.registerAlias(raw_reg, arg.ty); @@ -1708,7 +1708,7 @@ fn allocRegs( // For all read_args which need to be moved from non-register to // register, perform the move - for (read_args) |arg, i| { + for (read_args, 0..) |arg, i| { if (reused_read_arg) |j| { // Check whether this read_arg was reused if (i == j) continue; @@ -4267,7 +4267,7 @@ fn airCall(self: *Self, inst: Air.Inst.Index, modifier: std.builtin.CallModifier // Make space for the arguments passed via the stack self.max_end_stack += info.stack_byte_count; - for (info.args) |mc_arg, arg_i| { + for (info.args, 0..) |mc_arg, arg_i| { const arg = args[arg_i]; const arg_ty = self.air.typeOf(arg); const arg_mcv = try self.resolveInst(args[arg_i]); @@ -4757,7 +4757,7 @@ fn airCondBr(self: *Self, inst: Air.Inst.Index) !void { const else_slice = else_branch.inst_table.entries.slice(); const else_keys = else_slice.items(.key); const else_values = else_slice.items(.value); - for (else_keys) |else_key, else_idx| { + for (else_keys, 0..) |else_key, else_idx| { const else_value = else_values[else_idx]; const canon_mcv = if (saved_then_branch.inst_table.fetchSwapRemove(else_key)) |then_entry| blk: { // The instruction's MCValue is overridden in both branches. @@ -4790,7 +4790,7 @@ fn airCondBr(self: *Self, inst: Air.Inst.Index) !void { const then_slice = saved_then_branch.inst_table.entries.slice(); const then_keys = then_slice.items(.key); const then_values = then_slice.items(.value); - for (then_keys) |then_key, then_idx| { + for (then_keys, 0..) |then_key, then_idx| { const then_value = then_values[then_idx]; // We already deleted the items from this table that matched the else_branch. // So these are all instructions that are only overridden in the then branch. @@ -5069,7 +5069,7 @@ fn airSwitch(self: *Self, inst: Air.Inst.Index) !void { const branch_into_prong_relocs = try self.gpa.alloc(u32, items.len); defer self.gpa.free(branch_into_prong_relocs); - for (items) |item, idx| { + for (items, 0..) |item, idx| { const cmp_result = try self.cmp(.{ .inst = pl_op.operand }, .{ .inst = item }, condition_ty, .neq); branch_into_prong_relocs[idx] = try self.condBr(cmp_result); } @@ -6373,7 +6373,7 @@ fn resolveCallingConventionValues(self: *Self, fn_ty: Type) !CallMCValues { } } - for (param_types) |ty, i| { + for (param_types, 0..) |ty, i| { const param_size = @intCast(u32, ty.abiSize(self.target.*)); if (param_size == 0) { result.args[i] = .{ .none = {} }; @@ -6438,7 +6438,7 @@ fn resolveCallingConventionValues(self: *Self, fn_ty: Type) !CallMCValues { var stack_offset: u32 = 0; - for (param_types) |ty, i| { + for (param_types, 0..) |ty, i| { if (ty.abiSize(self.target.*) > 0) { const param_size = @intCast(u32, ty.abiSize(self.target.*)); const param_alignment = ty.abiAlignment(self.target.*); diff --git a/src/arch/aarch64/Emit.zig b/src/arch/aarch64/Emit.zig index 3c2a81d5d1..b2e23c6278 100644 --- a/src/arch/aarch64/Emit.zig +++ b/src/arch/aarch64/Emit.zig @@ -80,7 +80,7 @@ pub fn emitMir( try emit.lowerBranches(); // Emit machine code - for (mir_tags) |tag, index| { + for (mir_tags, 0..) |tag, index| { const inst = @intCast(u32, index); switch (tag) { .add_immediate => try emit.mirAddSubtractImmediate(inst), @@ -323,7 +323,7 @@ fn lowerBranches(emit: *Emit) !void { // // TODO optimization opportunity: do this in codegen while // generating MIR - for (mir_tags) |tag, index| { + for (mir_tags, 0..) |tag, index| { const inst = @intCast(u32, index); if (isBranch(tag)) { const target_inst = emit.branchTarget(inst); @@ -368,7 +368,7 @@ fn lowerBranches(emit: *Emit) !void { all_branches_lowered = true; var current_code_offset: usize = 0; - for (mir_tags) |tag, index| { + for (mir_tags, 0..) |tag, index| { const inst = @intCast(u32, index); // If this instruction contained in the code offset diff --git a/src/arch/arm/CodeGen.zig b/src/arch/arm/CodeGen.zig index 57a8aed699..0fbf1ee984 100644 --- a/src/arch/arm/CodeGen.zig +++ b/src/arch/arm/CodeGen.zig @@ -513,7 +513,7 @@ fn gen(self: *Self) !void { self.ret_mcv = MCValue{ .stack_offset = stack_offset }; } - for (self.args) |*arg, arg_index| { + for (self.args, 0..) |*arg, arg_index| { // Copy register arguments to the stack switch (arg.*) { .register => |reg| { @@ -3105,14 +3105,14 @@ fn allocRegs( var reused_read_arg: ?usize = null; // Lock all args which are already allocated to registers - for (read_args) |arg, i| { + for (read_args, 0..) |arg, i| { const mcv = try arg.bind.resolveToMcv(self); if (mcv == .register) { read_locks[i] = self.register_manager.lockReg(mcv.register); } } - for (write_args) |arg, i| { + for (write_args, 0..) |arg, i| { if (arg.bind == .reg) { write_locks[i] = self.register_manager.lockReg(arg.bind.reg); } @@ -3120,7 +3120,7 @@ fn allocRegs( // Allocate registers for all args which aren't allocated to // registers yet - for (read_args) |arg, i| { + for (read_args, 0..) |arg, i| { const mcv = try arg.bind.resolveToMcv(self); if (mcv == .register) { arg.reg.* = mcv.register; @@ -3141,7 +3141,7 @@ fn allocRegs( if (arg.bind == .reg) { arg.reg.* = arg.bind.reg; } else { - reuse_operand: for (read_args) |read_arg, i| { + reuse_operand: for (read_args, 0..) |read_arg, i| { if (read_arg.bind == .inst) { const operand = read_arg.bind.inst; const mcv = try self.resolveInst(operand); @@ -3161,7 +3161,7 @@ fn allocRegs( } } } else { - for (write_args) |arg, i| { + for (write_args, 0..) |arg, i| { if (arg.bind == .reg) { arg.reg.* = arg.bind.reg; } else { @@ -3173,7 +3173,7 @@ fn allocRegs( // For all read_args which need to be moved from non-register to // register, perform the move - for (read_args) |arg, i| { + for (read_args, 0..) |arg, i| { if (reused_read_arg) |j| { // Check whether this read_arg was reused if (i == j) continue; @@ -4217,7 +4217,7 @@ fn airCall(self: *Self, inst: Air.Inst.Index, modifier: std.builtin.CallModifier // Make space for the arguments passed via the stack self.max_end_stack += info.stack_byte_count; - for (info.args) |mc_arg, arg_i| { + for (info.args, 0..) |mc_arg, arg_i| { const arg = args[arg_i]; const arg_ty = self.air.typeOf(arg); const arg_mcv = try self.resolveInst(args[arg_i]); @@ -4669,7 +4669,7 @@ fn airCondBr(self: *Self, inst: Air.Inst.Index) !void { const else_slice = else_branch.inst_table.entries.slice(); const else_keys = else_slice.items(.key); const else_values = else_slice.items(.value); - for (else_keys) |else_key, else_idx| { + for (else_keys, 0..) |else_key, else_idx| { const else_value = else_values[else_idx]; const canon_mcv = if (saved_then_branch.inst_table.fetchSwapRemove(else_key)) |then_entry| blk: { // The instruction's MCValue is overridden in both branches. @@ -4702,7 +4702,7 @@ fn airCondBr(self: *Self, inst: Air.Inst.Index) !void { const then_slice = saved_then_branch.inst_table.entries.slice(); const then_keys = then_slice.items(.key); const then_values = then_slice.items(.value); - for (then_keys) |then_key, then_idx| { + for (then_keys, 0..) |then_key, then_idx| { const then_value = then_values[then_idx]; // We already deleted the items from this table that matched the else_branch. // So these are all instructions that are only overridden in the then branch. @@ -4991,7 +4991,7 @@ fn airSwitch(self: *Self, inst: Air.Inst.Index) !void { const branch_into_prong_relocs = try self.gpa.alloc(u32, items.len); defer self.gpa.free(branch_into_prong_relocs); - for (items) |item, idx| { + for (items, 0..) |item, idx| { const cmp_result = try self.cmp(.{ .inst = pl_op.operand }, .{ .inst = item }, condition_ty, .neq); branch_into_prong_relocs[idx] = try self.condBr(cmp_result); } @@ -6296,7 +6296,7 @@ fn resolveCallingConventionValues(self: *Self, fn_ty: Type) !CallMCValues { } } - for (param_types) |ty, i| { + for (param_types, 0..) |ty, i| { if (ty.abiAlignment(self.target.*) == 8) ncrn = std.mem.alignForwardGeneric(usize, ncrn, 2); @@ -6346,7 +6346,7 @@ fn resolveCallingConventionValues(self: *Self, fn_ty: Type) !CallMCValues { var stack_offset: u32 = 0; - for (param_types) |ty, i| { + for (param_types, 0..) |ty, i| { if (ty.abiSize(self.target.*) > 0) { const param_size = @intCast(u32, ty.abiSize(self.target.*)); const param_alignment = ty.abiAlignment(self.target.*); diff --git a/src/arch/arm/Emit.zig b/src/arch/arm/Emit.zig index fe34a28b6e..17540f0968 100644 --- a/src/arch/arm/Emit.zig +++ b/src/arch/arm/Emit.zig @@ -77,7 +77,7 @@ pub fn emitMir( try emit.lowerBranches(); // Emit machine code - for (mir_tags) |tag, index| { + for (mir_tags, 0..) |tag, index| { const inst = @intCast(u32, index); switch (tag) { .add => try emit.mirDataProcessing(inst), @@ -239,7 +239,7 @@ fn lowerBranches(emit: *Emit) !void { // // TODO optimization opportunity: do this in codegen while // generating MIR - for (mir_tags) |tag, index| { + for (mir_tags, 0..) |tag, index| { const inst = @intCast(u32, index); if (isBranch(tag)) { const target_inst = emit.branchTarget(inst); @@ -284,7 +284,7 @@ fn lowerBranches(emit: *Emit) !void { all_branches_lowered = true; var current_code_offset: usize = 0; - for (mir_tags) |tag, index| { + for (mir_tags, 0..) |tag, index| { const inst = @intCast(u32, index); // If this instruction contained in the code offset diff --git a/src/arch/arm/bits.zig b/src/arch/arm/bits.zig index af7fb301b9..8e76ae9409 100644 --- a/src/arch/arm/bits.zig +++ b/src/arch/arm/bits.zig @@ -452,11 +452,11 @@ pub const Instruction = union(enum) { const masks = comptime blk: { const base_mask: u32 = std.math.maxInt(u8); var result = [_]u32{0} ** 16; - for (result) |*mask, i| mask.* = std.math.rotr(u32, base_mask, 2 * i); + for (&result, 0..) |*mask, i| mask.* = std.math.rotr(u32, base_mask, 2 * i); break :blk result; }; - return for (masks) |mask, i| { + return for (masks, 0..) |mask, i| { if (x & mask == x) { break Operand{ .immediate = .{ diff --git a/src/arch/riscv64/CodeGen.zig b/src/arch/riscv64/CodeGen.zig index 8b8fca4859..b97ac727c1 100644 --- a/src/arch/riscv64/CodeGen.zig +++ b/src/arch/riscv64/CodeGen.zig @@ -1689,7 +1689,7 @@ fn airCall(self: *Self, inst: Air.Inst.Index, modifier: std.builtin.CallModifier // Due to incremental compilation, how function calls are generated depends // on linking. if (self.bin_file.cast(link.File.Elf)) |elf_file| { - for (info.args) |mc_arg, arg_i| { + for (info.args, 0..) |mc_arg, arg_i| { const arg = args[arg_i]; const arg_ty = self.air.typeOf(arg); const arg_mcv = try self.resolveInst(args[arg_i]); @@ -2727,7 +2727,7 @@ fn resolveCallingConventionValues(self: *Self, fn_ty: Type) !CallMCValues { var next_stack_offset: u32 = 0; const argument_registers = [_]Register{ .a0, .a1, .a2, .a3, .a4, .a5, .a6, .a7 }; - for (param_types) |ty, i| { + for (param_types, 0..) |ty, i| { const param_size = @intCast(u32, ty.abiSize(self.target.*)); if (param_size <= 8) { if (next_register < argument_registers.len) { diff --git a/src/arch/riscv64/Emit.zig b/src/arch/riscv64/Emit.zig index 4b2dad4981..387c735896 100644 --- a/src/arch/riscv64/Emit.zig +++ b/src/arch/riscv64/Emit.zig @@ -38,7 +38,7 @@ pub fn emitMir( const mir_tags = emit.mir.instructions.items(.tag); // Emit machine code - for (mir_tags) |tag, index| { + for (mir_tags, 0..) |tag, index| { const inst = @intCast(u32, index); switch (tag) { .add => try emit.mirRType(inst), diff --git a/src/arch/sparc64/CodeGen.zig b/src/arch/sparc64/CodeGen.zig index 418c67c580..8344b6e0cc 100644 --- a/src/arch/sparc64/CodeGen.zig +++ b/src/arch/sparc64/CodeGen.zig @@ -1189,7 +1189,7 @@ fn airCall(self: *Self, inst: Air.Inst.Index, modifier: std.builtin.CallModifier try self.register_manager.getReg(reg, null); } - for (info.args) |mc_arg, arg_i| { + for (info.args, 0..) |mc_arg, arg_i| { const arg = args[arg_i]; const arg_ty = self.air.typeOf(arg); const arg_mcv = try self.resolveInst(arg); @@ -1450,7 +1450,7 @@ fn airCondBr(self: *Self, inst: Air.Inst.Index) !void { const else_slice = else_branch.inst_table.entries.slice(); const else_keys = else_slice.items(.key); const else_values = else_slice.items(.value); - for (else_keys) |else_key, else_idx| { + for (else_keys, 0..) |else_key, else_idx| { const else_value = else_values[else_idx]; const canon_mcv = if (saved_then_branch.inst_table.fetchSwapRemove(else_key)) |then_entry| blk: { // The instruction's MCValue is overridden in both branches. @@ -1484,7 +1484,7 @@ fn airCondBr(self: *Self, inst: Air.Inst.Index) !void { const then_slice = saved_then_branch.inst_table.entries.slice(); const then_keys = then_slice.items(.key); const then_values = then_slice.items(.value); - for (then_keys) |then_key, then_idx| { + for (then_keys, 0..) |then_key, then_idx| { const then_value = then_values[then_idx]; // We already deleted the items from this table that matched the else_branch. // So these are all instructions that are only overridden in the then branch. @@ -4363,7 +4363,7 @@ fn resolveCallingConventionValues(self: *Self, fn_ty: Type, role: RegisterView) .callee => abi.c_abi_int_param_regs_callee_view, }; - for (param_types) |ty, i| { + for (param_types, 0..) |ty, i| { const param_size = @intCast(u32, ty.abiSize(self.target.*)); if (param_size <= 8) { if (next_register < argument_registers.len) { diff --git a/src/arch/sparc64/Emit.zig b/src/arch/sparc64/Emit.zig index 8500f338ec..7e71492af7 100644 --- a/src/arch/sparc64/Emit.zig +++ b/src/arch/sparc64/Emit.zig @@ -69,7 +69,7 @@ pub fn emitMir( try emit.lowerBranches(); // Emit machine code - for (mir_tags) |tag, index| { + for (mir_tags, 0..) |tag, index| { const inst = @intCast(u32, index); switch (tag) { .dbg_line => try emit.mirDbgLine(inst), @@ -513,7 +513,7 @@ fn lowerBranches(emit: *Emit) !void { // // TODO optimization opportunity: do this in codegen while // generating MIR - for (mir_tags) |tag, index| { + for (mir_tags, 0..) |tag, index| { const inst = @intCast(u32, index); if (isBranch(tag)) { const target_inst = emit.branchTarget(inst); @@ -558,7 +558,7 @@ fn lowerBranches(emit: *Emit) !void { all_branches_lowered = true; var current_code_offset: usize = 0; - for (mir_tags) |tag, index| { + for (mir_tags, 0..) |tag, index| { const inst = @intCast(u32, index); // If this instruction contained in the code offset diff --git a/src/arch/wasm/CodeGen.zig b/src/arch/wasm/CodeGen.zig index 7ce6a0482b..53dc28626c 100644 --- a/src/arch/wasm/CodeGen.zig +++ b/src/arch/wasm/CodeGen.zig @@ -1255,7 +1255,7 @@ fn genFunc(func: *CodeGen) InnerError!void { // reserve space and insert all prologue instructions at the front of the instruction list // We insert them in reserve order as there is no insertSlice in multiArrayList. try func.mir_instructions.ensureUnusedCapacity(func.gpa, prologue.items.len); - for (prologue.items) |_, index| { + for (prologue.items, 0..) |_, index| { const inst = prologue.items[prologue.items.len - 1 - index]; func.mir_instructions.insertAssumeCapacity(0, inst); } @@ -3117,7 +3117,7 @@ fn mergeBranch(func: *CodeGen, branch: *const Branch) !void { const target_values = target_slice.items(.value); try parent.values.ensureUnusedCapacity(func.gpa, branch.values.count()); - for (target_keys) |key, index| { + for (target_keys, 0..) |key, index| { // TODO: process deaths from branches parent.values.putAssumeCapacity(key, target_values[index]); } @@ -3501,7 +3501,7 @@ fn airSwitchBr(func: *CodeGen, inst: Air.Inst.Index) InnerError!void { const values = try func.gpa.alloc(CaseValue, items.len); errdefer func.gpa.free(values); - for (items) |ref, i| { + for (items, 0..) |ref, i| { const item_val = func.air.value(ref).?; const int_val = func.valueAsI32(item_val, target_ty); if (lowest_maybe == null or int_val < lowest_maybe.?) { @@ -3561,7 +3561,7 @@ fn airSwitchBr(func: *CodeGen, inst: Air.Inst.Index) InnerError!void { while (value <= highest) : (value += 1) { // idx represents the branch we jump to const idx = blk: { - for (case_list.items) |case, idx| { + for (case_list.items, 0..) |case, idx| { for (case.values) |case_value| { if (case_value.integer == value) break :blk @intCast(u32, idx); } @@ -3588,7 +3588,7 @@ fn airSwitchBr(func: *CodeGen, inst: Air.Inst.Index) InnerError!void { }; try func.branches.ensureUnusedCapacity(func.gpa, case_list.items.len + @boolToInt(has_else_body)); - for (case_list.items) |case, index| { + for (case_list.items, 0..) |case, index| { // when sparse, we use if/else-chain, so emit conditional checks if (is_sparse) { // for single value prong we can emit a simple if @@ -4558,7 +4558,7 @@ fn airAggregateInit(func: *CodeGen, inst: Air.Inst.Index) InnerError!void { // copy stack pointer into a temporary local, which is // moved for each element to store each value in the right position. const offset = try func.buildPointerOffset(result, 0, .new); - for (elements) |elem, elem_index| { + for (elements, 0..) |elem, elem_index| { const elem_val = try func.resolveInst(elem); try func.store(offset, elem_val, elem_ty, 0); @@ -4587,7 +4587,7 @@ fn airAggregateInit(func: *CodeGen, inst: Air.Inst.Index) InnerError!void { // we ensure a new local is created so it's zero-initialized const result = try func.ensureAllocLocal(backing_type); var current_bit: u16 = 0; - for (elements) |elem, elem_index| { + for (elements, 0..) |elem, elem_index| { const field = fields[elem_index]; if (!field.ty.hasRuntimeBitsIgnoreComptime()) continue; @@ -4623,7 +4623,7 @@ fn airAggregateInit(func: *CodeGen, inst: Air.Inst.Index) InnerError!void { else => { const result = try func.allocStack(result_ty); const offset = try func.buildPointerOffset(result, 0, .new); // pointer to offset - for (elements) |elem, elem_index| { + for (elements, 0..) |elem, elem_index| { if (result_ty.structFieldValueComptime(elem_index) != null) continue; const elem_ty = result_ty.structFieldType(elem_index); @@ -6149,7 +6149,7 @@ fn callIntrinsic( } else WValue{ .none = {} }; // Lower all arguments to the stack before we call our function - for (args) |arg, arg_i| { + for (args, 0..) |arg, arg_i| { assert(!(want_sret_param and arg == .stack)); assert(param_types[arg_i].hasRuntimeBitsIgnoreComptime()); try func.lowerArg(.C, param_types[arg_i], arg); diff --git a/src/arch/wasm/Emit.zig b/src/arch/wasm/Emit.zig index a340ac5da8..7d44d3622f 100644 --- a/src/arch/wasm/Emit.zig +++ b/src/arch/wasm/Emit.zig @@ -44,7 +44,7 @@ pub fn emitMir(emit: *Emit) InnerError!void { // before we emit the function body when lowering MIR try emit.emitLocals(); - for (mir_tags) |tag, index| { + for (mir_tags, 0..) |tag, index| { const inst = @intCast(u32, index); switch (tag) { // block instructions diff --git a/src/arch/x86_64/CodeGen.zig b/src/arch/x86_64/CodeGen.zig index c11ea4e63e..f63d80486e 100644 --- a/src/arch/x86_64/CodeGen.zig +++ b/src/arch/x86_64/CodeGen.zig @@ -186,7 +186,7 @@ const Branch = struct { _ = options; comptime assert(unused_format_string.len == 0); try writer.writeAll("Branch {\n"); - for (ctx.insts) |inst, i| { + for (ctx.insts, 0..) |inst, i| { const mcv = ctx.mcvs[i]; try writer.print(" %{d} => {}\n", .{ inst, mcv }); } @@ -3951,7 +3951,7 @@ fn airCall(self: *Self, inst: Air.Inst.Index, modifier: std.builtin.CallModifier }; defer if (ret_reg_lock) |lock| self.register_manager.unlockReg(lock); - for (args) |arg, arg_i| { + for (args, 0..) |arg, arg_i| { const mc_arg = info.args[arg_i]; const arg_ty = self.air.typeOf(arg); const arg_mcv = try self.resolveInst(args[arg_i]); @@ -4912,7 +4912,7 @@ fn airSwitch(self: *Self, inst: Air.Inst.Index) !void { var relocs = try self.gpa.alloc(u32, items.len); defer self.gpa.free(relocs); - for (items) |item, item_i| { + for (items, 0..) |item, item_i| { const item_mcv = try self.resolveInst(item); relocs[item_i] = try self.genCondSwitchMir(condition_ty, condition, item_mcv); } @@ -4974,7 +4974,7 @@ fn airSwitch(self: *Self, inst: Air.Inst.Index) !void { for (self.branch_stack.items) |bs| { log.debug("{}", .{bs.fmtDebug()}); } - for (branch_stack.items) |bs, i| { + for (branch_stack.items, 0..) |bs, i| { log.debug("Case-{d} branch: {}", .{ i, bs.fmtDebug() }); } @@ -4999,7 +4999,7 @@ fn canonicaliseBranches(self: *Self, parent_branch: *Branch, canon_branch: *Bran const target_keys = target_slice.items(.key); const target_values = target_slice.items(.value); - for (target_keys) |target_key, target_idx| { + for (target_keys, 0..) |target_key, target_idx| { const target_value = target_values[target_idx]; const canon_mcv = if (canon_branch.inst_table.fetchSwapRemove(target_key)) |canon_entry| blk: { // The instruction's MCValue is overridden in both branches. @@ -5032,7 +5032,7 @@ fn canonicaliseBranches(self: *Self, parent_branch: *Branch, canon_branch: *Bran const canon_slice = canon_branch.inst_table.entries.slice(); const canon_keys = canon_slice.items(.key); const canon_values = canon_slice.items(.value); - for (canon_keys) |canon_key, canon_idx| { + for (canon_keys, 0..) |canon_key, canon_idx| { const canon_value = canon_values[canon_idx]; // We already deleted the items from this table that matched the target_branch. // So these are all instructions that are only overridden in the canon branch. @@ -6571,7 +6571,7 @@ fn airAggregateInit(self: *Self, inst: Air.Inst.Index) !void { switch (result_ty.zigTypeTag()) { .Struct => { const stack_offset = @intCast(i32, try self.allocMem(inst, abi_size, abi_align)); - for (elements) |elem, elem_i| { + for (elements, 0..) |elem, elem_i| { if (result_ty.structFieldValueComptime(elem_i) != null) continue; // comptime elem const elem_ty = result_ty.structFieldType(elem_i); @@ -6586,7 +6586,7 @@ fn airAggregateInit(self: *Self, inst: Air.Inst.Index) !void { const elem_ty = result_ty.childType(); const elem_size = @intCast(u32, elem_ty.abiSize(self.target.*)); - for (elements) |elem, elem_i| { + for (elements, 0..) |elem, elem_i| { const elem_mcv = try self.resolveInst(elem); const elem_off = @intCast(i32, elem_size * elem_i); try self.genSetStack(elem_ty, stack_offset - elem_off, elem_mcv, .{}); @@ -6963,7 +6963,7 @@ fn resolveCallingConventionValues(self: *Self, fn_ty: Type) !CallMCValues { else => 0, }; - for (param_types) |ty, i| { + for (param_types, 0..) |ty, i| { assert(ty.hasRuntimeBits()); const classes: []const abi.Class = switch (self.target.os.tag) { @@ -7039,7 +7039,7 @@ fn resolveCallingConventionValues(self: *Self, fn_ty: Type) !CallMCValues { else => 0, }; - for (param_types) |ty, i| { + for (param_types, 0..) |ty, i| { if (!ty.hasRuntimeBits()) { result.args[i] = .{ .none = {} }; continue; diff --git a/src/arch/x86_64/Emit.zig b/src/arch/x86_64/Emit.zig index c4f9b4eb42..12c19915c6 100644 --- a/src/arch/x86_64/Emit.zig +++ b/src/arch/x86_64/Emit.zig @@ -61,7 +61,7 @@ const Reloc = struct { pub fn lowerMir(emit: *Emit) InnerError!void { const mir_tags = emit.mir.instructions.items(.tag); - for (mir_tags) |tag, index| { + for (mir_tags, 0..) |tag, index| { const inst = @intCast(u32, index); try emit.code_offset_mapping.putNoClobber(emit.bin_file.allocator, inst, emit.code.items.len); switch (tag) { @@ -1544,7 +1544,7 @@ const OpCode = struct { fn init(comptime in_bytes: []const u8) OpCode { comptime assert(in_bytes.len <= 3); comptime var bytes: [3]u8 = undefined; - inline for (in_bytes) |x, i| { + inline for (in_bytes, 0..) |x, i| { bytes[i] = x; } return .{ .bytes = bytes, .count = in_bytes.len }; diff --git a/src/arch/x86_64/Mir.zig b/src/arch/x86_64/Mir.zig index df2052ca6e..112d9a5982 100644 --- a/src/arch/x86_64/Mir.zig +++ b/src/arch/x86_64/Mir.zig @@ -535,7 +535,7 @@ pub const RegisterList = struct { const Self = @This(); fn getIndexForReg(registers: []const Register, reg: Register) BitSet.MaskInt { - for (registers) |cpreg, i| { + for (registers, 0..) |cpreg, i| { if (reg.id() == cpreg.id()) return @intCast(u32, i); } unreachable; // register not in input register list! diff --git a/src/arch/x86_64/abi.zig b/src/arch/x86_64/abi.zig index 35ac3dcb55..193efa6dc4 100644 --- a/src/arch/x86_64/abi.zig +++ b/src/arch/x86_64/abi.zig @@ -335,7 +335,7 @@ pub fn classifySystemV(ty: Type, target: Target, ctx: Context) [8]Class { // "If one of the classes is MEMORY, the whole argument is passed in memory" // "If X87UP is not preceded by X87, the whole argument is passed in memory." var found_sseup = false; - for (result) |item, i| switch (item) { + for (result, 0..) |item, i| switch (item) { .memory => return memory_class, .x87up => if (i == 0 or result[i - 1] != .x87) return memory_class, .sseup => found_sseup = true, @@ -347,7 +347,7 @@ pub fn classifySystemV(ty: Type, target: Target, ctx: Context) [8]Class { if (ty_size > 16 and (result[0] != .sse or !found_sseup)) return memory_class; // "If SSEUP is not preceded by SSE or SSEUP, it is converted to SSE." - for (result) |*item, i| { + for (&result, 0..) |*item, i| { if (item.* == .sseup) switch (result[i - 1]) { .sse, .sseup => continue, else => item.* = .sse, @@ -379,7 +379,7 @@ pub fn classifySystemV(ty: Type, target: Target, ctx: Context) [8]Class { } // Combine this field with the previous one. const field_class = classifySystemV(field.ty, target, .other); - for (result) |*result_item, i| { + for (&result, 0..) |*result_item, i| { const field_item = field_class[i]; // "If both classes are equal, this is the resulting class." if (result_item.* == field_item) { @@ -431,7 +431,7 @@ pub fn classifySystemV(ty: Type, target: Target, ctx: Context) [8]Class { // "If one of the classes is MEMORY, the whole argument is passed in memory" // "If X87UP is not preceded by X87, the whole argument is passed in memory." var found_sseup = false; - for (result) |item, i| switch (item) { + for (result, 0..) |item, i| switch (item) { .memory => return memory_class, .x87up => if (i == 0 or result[i - 1] != .x87) return memory_class, .sseup => found_sseup = true, @@ -443,7 +443,7 @@ pub fn classifySystemV(ty: Type, target: Target, ctx: Context) [8]Class { if (ty_size > 16 and (result[0] != .sse or !found_sseup)) return memory_class; // "If SSEUP is not preceded by SSE or SSEUP, it is converted to SSE." - for (result) |*item, i| { + for (&result, 0..) |*item, i| { if (item.* == .sseup) switch (result[i - 1]) { .sse, .sseup => continue, else => item.* = .sse, diff --git a/src/codegen.zig b/src/codegen.zig index c0a04765b0..9eea1c667d 100644 --- a/src/codegen.zig +++ b/src/codegen.zig @@ -511,7 +511,7 @@ pub fn generateSymbol( try code.resize(current_pos + abi_size); var bits: u16 = 0; - for (field_vals) |field_val, index| { + for (field_vals, 0..) |field_val, index| { const field_ty = fields[index].ty; // pointer may point to a decl which must be marked used // but can also result in a relocation. Therefore we handle those seperately. @@ -537,7 +537,7 @@ pub fn generateSymbol( const struct_begin = code.items.len; const field_vals = typed_value.val.castTag(.aggregate).?.data; - for (field_vals) |field_val, index| { + for (field_vals, 0..) |field_val, index| { const field_ty = typed_value.ty.structFieldType(index); if (!field_ty.hasRuntimeBits()) continue; diff --git a/src/codegen/c.zig b/src/codegen/c.zig index 2f721e1b4b..0beb00b236 100644 --- a/src/codegen/c.zig +++ b/src/codegen/c.zig @@ -253,7 +253,7 @@ fn formatIdent( if (solo and isReservedIdent(ident)) { try writer.writeAll("zig_e_"); } - for (ident) |c, i| { + for (ident, 0..) |c, i| { switch (c) { 'a'...'z', 'A'...'Z', '_' => try writer.writeByte(c), '.' => try writer.writeByte('_'), @@ -361,7 +361,7 @@ pub const Function = struct { _ = mutability; if (f.getFreeLocals().getPtrContext(ty, f.tyHashCtx())) |locals_list| { - for (locals_list.items) |local_index, i| { + for (locals_list.items, 0..) |local_index, i| { const local = &f.locals.items[local_index]; if (local.alignment >= alignment) { local.loop_depth = @intCast(LoopDepth, f.free_locals_stack.items.len - 1); @@ -1283,7 +1283,7 @@ pub const DeclGen = struct { try writer.writeByte('{'); var empty = true; - for (field_vals) |field_val, field_index| { + for (field_vals, 0..) |field_val, field_index| { const field_ty = ty.structFieldType(field_index); if (!field_ty.hasRuntimeBits()) continue; @@ -1309,7 +1309,7 @@ pub const DeclGen = struct { const bit_offset_val = Value.initPayload(&bit_offset_val_pl.base); var eff_num_fields: usize = 0; - for (field_vals) |_, index| { + for (field_vals, 0..) |_, index| { const field_ty = ty.structFieldType(index); if (!field_ty.hasRuntimeBitsIgnoreComptime()) continue; @@ -1331,7 +1331,7 @@ pub const DeclGen = struct { var eff_index: usize = 0; var needs_closing_paren = false; - for (field_vals) |field_val, index| { + for (field_vals, 0..) |field_val, index| { const field_ty = ty.structFieldType(index); if (!field_ty.hasRuntimeBitsIgnoreComptime()) continue; @@ -1359,7 +1359,7 @@ pub const DeclGen = struct { try writer.writeByte('('); // a << a_off | b << b_off | c << c_off var empty = true; - for (field_vals) |field_val, index| { + for (field_vals, 0..) |field_val, index| { const field_ty = ty.structFieldType(index); if (!field_ty.hasRuntimeBitsIgnoreComptime()) continue; @@ -1719,7 +1719,7 @@ pub const DeclGen = struct { { const fields = t.tupleFields(); var field_id: usize = 0; - for (fields.types) |field_ty, i| { + for (fields.types, 0..) |field_ty, i| { if (!field_ty.hasRuntimeBits() or fields.values[i].tag() != .unreachable_value) continue; try buffer.append(' '); @@ -2130,7 +2130,7 @@ pub const DeclGen = struct { try tuple_storage.ensureTotalCapacity(allocator, t.structFieldCount()); const fields = t.tupleFields(); - for (fields.values) |value, index| + for (fields.values, 0..) |value, index| if (value.tag() == .unreachable_value) tuple_storage.appendAssumeCapacity(.{ .type = fields.types[index], @@ -2415,7 +2415,7 @@ pub const DeclGen = struct { const name_end = buffer.items.len - "(".len; try dg.renderTypeAndName(bw, enum_ty, .{ .identifier = "tag" }, .Const, 0, .Complete); try buffer.appendSlice(") {\n switch (tag) {\n"); - for (enum_ty.enumFields().keys()) |name, index| { + for (enum_ty.enumFields().keys(), 0..) |name, index| { const name_z = try dg.typedefs.allocator.dupeZ(u8, name); defer dg.typedefs.allocator.free(name_z); const name_bytes = name_z[0 .. name_z.len + 1]; @@ -2681,7 +2681,7 @@ pub fn genErrDecls(o: *Object) !void { try writer.writeAll("enum {\n"); o.indent_writer.pushIndent(); var max_name_len: usize = 0; - for (o.dg.module.error_name_list.items) |name, value| { + for (o.dg.module.error_name_list.items, 0..) |name, value| { max_name_len = std.math.max(name.len, max_name_len); var err_pl = Value.Payload.Error{ .data = .{ .name = name } }; try o.dg.renderValue(writer, Type.anyerror, Value.initPayload(&err_pl.base), .Other); @@ -2724,7 +2724,7 @@ pub fn genErrDecls(o: *Object) !void { try writer.writeAll("static "); try o.dg.renderTypeAndName(writer, name_array_ty, .{ .identifier = name_prefix }, .Const, 0, .Complete); try writer.writeAll(" = {"); - for (o.dg.module.error_name_list.items) |name, value| { + for (o.dg.module.error_name_list.items, 0..) |name, value| { if (value != 0) try writer.writeByte(','); var len_pl = Value.Payload.U64{ .base = .{ .tag = .int_u64 }, .data = name.len }; @@ -2742,7 +2742,7 @@ fn genExports(o: *Object) !void { defer tracy.end(); const fwd_decl_writer = o.dg.fwd_decl.writer(); - if (o.dg.module.decl_exports.get(o.dg.decl_index)) |exports| for (exports.items[1..]) |@"export", i| { + if (o.dg.module.decl_exports.get(o.dg.decl_index)) |exports| for (exports.items[1..], 0..) |@"export", i| { try fwd_decl_writer.writeAll("zig_export("); try o.dg.renderFunctionSignature(fwd_decl_writer, .Forward, @intCast(u32, 1 + i)); try fwd_decl_writer.print(", {s}, {s});\n", .{ @@ -2800,7 +2800,7 @@ pub fn genFunc(f: *Function) !void { // alignment, descending. const free_locals = f.getFreeLocals(); const values = f.allocs.values(); - for (f.allocs.keys()) |local_index, i| { + for (f.allocs.keys(), 0..) |local_index, i| { if (values[i]) continue; // static const local = f.locals.items[local_index]; log.debug("inserting local {d} into free_locals", .{local_index}); @@ -4238,7 +4238,7 @@ fn airCall( const resolved_args = try gpa.alloc(CValue, args.len); defer gpa.free(resolved_args); - for (args) |arg, i| { + for (args, 0..) |arg, i| { resolved_args[i] = try f.resolveInst(arg); } @@ -4303,7 +4303,7 @@ fn airCall( try writer.writeByte('('); var args_written: usize = 0; - for (args) |arg, arg_i| { + for (args, 0..) |arg, arg_i| { const ty = f.air.typeOf(arg); if (!ty.hasRuntimeBitsIgnoreComptime()) continue; if (args_written != 0) { @@ -5043,7 +5043,7 @@ fn airAsm(f: *Function, inst: Air.Inst.Index) !CValue { extra_i = constraints_extra_begin; var locals_index = locals_begin; try writer.writeByte(':'); - for (outputs) |output, index| { + for (outputs, 0..) |output, index| { const extra_bytes = std.mem.sliceAsBytes(f.air.extra[extra_i..]); const constraint = std.mem.sliceTo(extra_bytes, 0); const name = std.mem.sliceTo(extra_bytes[constraint.len + 1 ..], 0); @@ -5067,7 +5067,7 @@ fn airAsm(f: *Function, inst: Air.Inst.Index) !CValue { try writer.writeByte(')'); } try writer.writeByte(':'); - for (inputs) |input, index| { + for (inputs, 0..) |input, index| { const extra_bytes = std.mem.sliceAsBytes(f.air.extra[extra_i..]); const constraint = std.mem.sliceTo(extra_bytes, 0); const name = std.mem.sliceTo(extra_bytes[constraint.len + 1 ..], 0); @@ -5426,7 +5426,7 @@ fn structFieldPtr(f: *Function, inst: Air.Inst.Index, struct_ptr_ty: Type, struc }; const field_loc = switch (struct_ty.tag()) { .@"struct" => switch (struct_ty.containerLayout()) { - .Auto, .Extern => for (struct_ty.structFields().values()[index..]) |field, offset| { + .Auto, .Extern => for (struct_ty.structFields().values()[index..], 0..) |field, offset| { if (field.ty.hasRuntimeBitsIgnoreComptime()) break FieldLoc{ .field = .{ .identifier = struct_ty.structFieldName(index + offset), } }; @@ -5469,7 +5469,7 @@ fn structFieldPtr(f: *Function, inst: Air.Inst.Index, struct_ptr_ty: Type, struc if (tuple.values[index].tag() != .unreachable_value) return CValue.none; var id: usize = 0; - break :field_name for (tuple.values) |value, i| { + break :field_name for (tuple.values, 0..) |value, i| { if (value.tag() != .unreachable_value) continue; if (!tuple.types[i].hasRuntimeBitsIgnoreComptime()) continue; if (i >= index) break FieldLoc{ .field = .{ .field = id } }; @@ -6687,7 +6687,7 @@ fn airAggregateInit(f: *Function, inst: Air.Inst.Index) !CValue { const gpa = f.object.dg.gpa; const resolved_elements = try gpa.alloc(CValue, elements.len); defer gpa.free(resolved_elements); - for (elements) |element, i| { + for (elements, 0..) |element, i| { resolved_elements[i] = try f.resolveInst(element); } { @@ -6706,7 +6706,7 @@ fn airAggregateInit(f: *Function, inst: Air.Inst.Index) !CValue { switch (inst_ty.zigTypeTag()) { .Array, .Vector => { const elem_ty = inst_ty.childType(); - for (resolved_elements) |element, i| { + for (resolved_elements, 0..) |element, i| { try f.writeCValue(writer, local, .Other); try writer.print("[{d}] = ", .{i}); try f.writeCValue(writer, element, .Other); @@ -6727,7 +6727,7 @@ fn airAggregateInit(f: *Function, inst: Air.Inst.Index) !CValue { try writer.writeAll(")"); try writer.writeByte('{'); var empty = true; - for (elements) |element, index| { + for (elements, 0..) |element, index| { if (inst_ty.structFieldValueComptime(index)) |_| continue; if (!empty) try writer.writeAll(", "); @@ -6746,7 +6746,7 @@ fn airAggregateInit(f: *Function, inst: Air.Inst.Index) !CValue { try writer.writeAll("};\n"); var field_id: usize = 0; - for (elements) |element, index| { + for (elements, 0..) |element, index| { if (inst_ty.structFieldValueComptime(index)) |_| continue; const element_ty = f.air.typeOf(element); @@ -6784,7 +6784,7 @@ fn airAggregateInit(f: *Function, inst: Air.Inst.Index) !CValue { const bit_offset_val = Value.initPayload(&bit_offset_val_pl.base); var empty = true; - for (elements) |_, index| { + for (elements, 0..) |_, index| { const field_ty = inst_ty.structFieldType(index); if (!field_ty.hasRuntimeBitsIgnoreComptime()) continue; @@ -6796,7 +6796,7 @@ fn airAggregateInit(f: *Function, inst: Air.Inst.Index) !CValue { empty = false; } empty = true; - for (resolved_elements) |element, index| { + for (resolved_elements, 0..) |element, index| { const field_ty = inst_ty.structFieldType(index); if (!field_ty.hasRuntimeBitsIgnoreComptime()) continue; @@ -7608,7 +7608,7 @@ fn deinitFreeLocalsMap(gpa: mem.Allocator, map: *LocalsMap) void { } fn noticeBranchFrees(f: *Function, pre_locals_len: LocalIndex, inst: Air.Inst.Index) !void { - for (f.locals.items[pre_locals_len..]) |*local, local_offset| { + for (f.locals.items[pre_locals_len..], 0..) |*local, local_offset| { const local_index = pre_locals_len + @intCast(LocalIndex, local_offset); if (f.allocs.contains(local_index)) continue; // allocs are not freeable diff --git a/src/codegen/llvm.zig b/src/codegen/llvm.zig index 8c6943bfdb..aa794827a8 100644 --- a/src/codegen/llvm.zig +++ b/src/codegen/llvm.zig @@ -600,7 +600,7 @@ pub const Object = struct { defer mod.gpa.free(llvm_errors); llvm_errors[0] = llvm_slice_ty.getUndef(); - for (llvm_errors[1..]) |*llvm_error, i| { + for (llvm_errors[1..], 0..) |*llvm_error, i| { const name = error_name_list[1..][i]; const str_init = self.context.constString(name.ptr, @intCast(c_uint, name.len), .False); const str_global = self.llvm_module.addGlobal(str_init.typeOf(), ""); @@ -691,7 +691,7 @@ pub const Object = struct { object.extern_collisions.clearRetainingCapacity(); const export_keys = mod.decl_exports.keys(); - for (mod.decl_exports.values()) |export_list, i| { + for (mod.decl_exports.values(), 0..) |export_list, i| { const decl_index = export_keys[i]; const llvm_global = object.decl_map.get(decl_index) orelse continue; for (export_list.items) |exp| { @@ -1076,7 +1076,7 @@ pub const Object = struct { const param_alignment = param_ty.abiAlignment(target); const arg_ptr = buildAllocaInner(dg.context, builder, llvm_func, false, param_llvm_ty, param_alignment, target); const llvm_ty = dg.context.structType(field_types.ptr, @intCast(c_uint, field_types.len), .False); - for (field_types) |_, field_i_usize| { + for (field_types, 0..) |_, field_i_usize| { const field_i = @intCast(c_uint, field_i_usize); const param = llvm_func.getParam(llvm_arg_i); llvm_arg_i += 1; @@ -1495,7 +1495,7 @@ pub const Object = struct { const int_info = ty.intInfo(target); assert(int_info.bits != 0); - for (field_names) |field_name, i| { + for (field_names, 0..) |field_name, i| { const field_name_z = try gpa.dupeZ(u8, field_name); defer gpa.free(field_name_z); @@ -1992,7 +1992,7 @@ pub const Object = struct { comptime assert(struct_layout_version == 2); var offset: u64 = 0; - for (tuple.types) |field_ty, i| { + for (tuple.types, 0..) |field_ty, i| { const field_val = tuple.values[i]; if (field_val.tag() != .unreachable_value or !field_ty.hasRuntimeBits()) continue; @@ -2921,7 +2921,7 @@ pub const DeclGen = struct { var offset: u64 = 0; var big_align: u32 = 0; - for (tuple.types) |field_ty, i| { + for (tuple.types, 0..) |field_ty, i| { const field_val = tuple.values[i]; if (field_val.tag() != .unreachable_value or !field_ty.hasRuntimeBits()) continue; @@ -3432,7 +3432,7 @@ pub const DeclGen = struct { const llvm_elems = try gpa.alloc(*llvm.Value, len); defer gpa.free(llvm_elems); var need_unnamed = false; - for (elem_vals[0..len]) |elem_val, i| { + for (elem_vals[0..len], 0..) |elem_val, i| { llvm_elems[i] = try dg.lowerValue(.{ .ty = elem_ty, .val = elem_val }); need_unnamed = need_unnamed or dg.isUnnamedType(elem_ty, llvm_elems[i]); } @@ -3618,7 +3618,7 @@ pub const DeclGen = struct { var big_align: u32 = 0; var need_unnamed = false; - for (tuple.types) |field_ty, i| { + for (tuple.types, 0..) |field_ty, i| { if (tuple.values[i].tag() != .unreachable_value) continue; if (!field_ty.hasRuntimeBitsIgnoreComptime()) continue; @@ -3680,7 +3680,7 @@ pub const DeclGen = struct { comptime assert(Type.packed_struct_layout_version == 2); var running_int: *llvm.Value = int_llvm_ty.constNull(); var running_bits: u16 = 0; - for (field_vals) |field_val, i| { + for (field_vals, 0..) |field_val, i| { const field = fields[i]; if (!field.ty.hasRuntimeBitsIgnoreComptime()) continue; @@ -3855,7 +3855,7 @@ pub const DeclGen = struct { const elem_ty = tv.ty.elemType(); const llvm_elems = try dg.gpa.alloc(*llvm.Value, vector_len); defer dg.gpa.free(llvm_elems); - for (llvm_elems) |*elem, i| { + for (llvm_elems, 0..) |*elem, i| { var byte_payload: Value.Payload.U64 = .{ .base = .{ .tag = .int_u64 }, .data = bytes[i], @@ -3880,7 +3880,7 @@ pub const DeclGen = struct { const elem_ty = tv.ty.elemType(); const llvm_elems = try dg.gpa.alloc(*llvm.Value, vector_len); defer dg.gpa.free(llvm_elems); - for (llvm_elems) |*elem, i| { + for (llvm_elems, 0..) |*elem, i| { elem.* = try dg.lowerValue(.{ .ty = elem_ty, .val = elem_vals[i] }); } return llvm.constVector( @@ -3913,7 +3913,7 @@ pub const DeclGen = struct { const elem_ty = tv.ty.elemType(); const llvm_elems = try dg.gpa.alloc(*llvm.Value, vector_len); defer dg.gpa.free(llvm_elems); - for (llvm_elems) |*elem, i| { + for (llvm_elems, 0..) |*elem, i| { var byte_payload: Value.Payload.U64 = .{ .base = .{ .tag = .int_u64 }, .data = bytes[i], @@ -4479,7 +4479,7 @@ pub const FuncGen = struct { fn genBody(self: *FuncGen, body: []const Air.Inst.Index) Error!void { const air_tags = self.air.instructions.items(.tag); - for (body) |inst, i| { + for (body, 0..) |inst, i| { const opt_value: ?*llvm.Value = switch (air_tags[inst]) { // zig fmt: off .add => try self.airAdd(inst, false), @@ -4852,7 +4852,7 @@ pub const FuncGen = struct { const llvm_ty = self.context.structType(llvm_types.ptr, @intCast(c_uint, llvm_types.len), .False); try llvm_args.ensureUnusedCapacity(it.llvm_types_len); - for (llvm_types) |field_ty, i_usize| { + for (llvm_types, 0..) |field_ty, i_usize| { const i = @intCast(c_uint, i_usize); const field_ptr = self.builder.buildStructGEP(llvm_ty, arg_ptr, i, ""); const load_inst = self.builder.buildLoad(field_ty, field_ptr, ""); @@ -6250,7 +6250,7 @@ pub const FuncGen = struct { var name_map: std.StringArrayHashMapUnmanaged(u16) = .{}; try name_map.ensureUnusedCapacity(arena, max_param_count); - for (outputs) |output, i| { + for (outputs, 0..) |output, i| { const extra_bytes = std.mem.sliceAsBytes(self.air.extra[extra_i..]); const constraint = std.mem.sliceTo(std.mem.sliceAsBytes(self.air.extra[extra_i..]), 0); const name = std.mem.sliceTo(extra_bytes[constraint.len + 1 ..], 0); @@ -6435,7 +6435,7 @@ pub const FuncGen = struct { var name_start: usize = undefined; var modifier_start: usize = undefined; - for (asm_source) |byte, i| { + for (asm_source, 0..) |byte, i| { switch (state) { .start => switch (byte) { '%' => state = .percent, @@ -6526,7 +6526,7 @@ pub const FuncGen = struct { .Auto, "", ); - for (llvm_param_attrs[0..param_count]) |llvm_elem_ty, i| { + for (llvm_param_attrs[0..param_count], 0..) |llvm_elem_ty, i| { if (llvm_elem_ty) |llvm_ty| { llvm.setCallElemTypeAttr(call, i, llvm_ty); } @@ -6534,7 +6534,7 @@ pub const FuncGen = struct { var ret_val = call; llvm_ret_i = 0; - for (outputs) |output, i| { + for (outputs, 0..) |output, i| { if (llvm_ret_indirect[i]) continue; const output_value = if (return_count > 1) b: { @@ -7416,7 +7416,7 @@ pub const FuncGen = struct { const index_i32 = llvm_i32.constInt(i, .False); var args: [3]*llvm.Value = undefined; - for (args_vectors) |arg_vector, k| { + for (args_vectors, 0..) |arg_vector, k| { args[k] = self.builder.buildExtractElement(arg_vector, index_i32, ""); } const result_elem = self.builder.buildCall(llvm_fn.globalGetValueType(), llvm_fn, &args, args_len, .C, .Auto, ""); @@ -8785,7 +8785,7 @@ pub const FuncGen = struct { const tag_int_value = fn_val.getParam(0); const switch_instr = self.builder.buildSwitch(tag_int_value, unnamed_block, @intCast(c_uint, fields.count())); - for (fields.keys()) |_, field_index| { + for (fields.keys(), 0..) |_, field_index| { const this_tag_int_value = int: { var tag_val_payload: Value.Payload.U32 = .{ .base = .{ .tag = .enum_field_index }, @@ -8874,7 +8874,7 @@ pub const FuncGen = struct { usize_llvm_ty.constNull(), usize_llvm_ty.constNull(), }; - for (fields.keys()) |name, field_index| { + for (fields.keys(), 0..) |name, field_index| { const str_init = self.context.constString(name.ptr, @intCast(c_uint, name.len), .False); const str_init_llvm_ty = str_init.typeOf(); const str_global = self.dg.object.llvm_module.addGlobal(str_init_llvm_ty, ""); @@ -8998,7 +8998,7 @@ pub const FuncGen = struct { const llvm_i32 = self.context.intType(32); - for (values) |*val, i| { + for (values, 0..) |*val, i| { var buf: Value.ElemValueBuffer = undefined; const elem = mask.elemValueBuffer(self.dg.module, i, &buf); if (elem.isUndef()) { @@ -9180,7 +9180,7 @@ pub const FuncGen = struct { const llvm_u32 = self.context.intType(32); var vector = llvm_result_ty.getUndef(); - for (elements) |elem, i| { + for (elements, 0..) |elem, i| { const index_u32 = llvm_u32.constInt(i, .False); const llvm_elem = try self.resolveInst(elem); vector = self.builder.buildInsertElement(vector, llvm_elem, index_u32, ""); @@ -9197,7 +9197,7 @@ pub const FuncGen = struct { comptime assert(Type.packed_struct_layout_version == 2); var running_int: *llvm.Value = int_llvm_ty.constNull(); var running_bits: u16 = 0; - for (elements) |elem, i| { + for (elements, 0..) |elem, i| { const field = fields[i]; if (!field.ty.hasRuntimeBitsIgnoreComptime()) continue; @@ -9229,7 +9229,7 @@ pub const FuncGen = struct { const alloca_inst = self.buildAlloca(llvm_result_ty, result_ty.abiAlignment(target)); var indices: [2]*llvm.Value = .{ llvm_u32.constNull(), undefined }; - for (elements) |elem, i| { + for (elements, 0..) |elem, i| { if (result_ty.structFieldValueComptime(i) != null) continue; const llvm_elem = try self.resolveInst(elem); @@ -9250,7 +9250,7 @@ pub const FuncGen = struct { return alloca_inst; } else { var result = llvm_result_ty.getUndef(); - for (elements) |elem, i| { + for (elements, 0..) |elem, i| { if (result_ty.structFieldValueComptime(i) != null) continue; const llvm_elem = try self.resolveInst(elem); @@ -9275,7 +9275,7 @@ pub const FuncGen = struct { }; const elem_ptr_ty = Type.initPayload(&elem_ptr_payload.base); - for (elements) |elem, i| { + for (elements, 0..) |elem, i| { const indices: [2]*llvm.Value = .{ llvm_usize.constNull(), llvm_usize.constInt(@intCast(c_uint, i), .False), @@ -9914,7 +9914,7 @@ pub const FuncGen = struct { }; const array_elements = [_]*llvm.Value{ request, a1, a2, a3, a4, a5 }; const zero = usize_llvm_ty.constInt(0, .False); - for (array_elements) |elem, i| { + for (array_elements, 0..) |elem, i| { const indexes = [_]*llvm.Value{ zero, usize_llvm_ty.constInt(@intCast(c_uint, i), .False), }; @@ -10327,7 +10327,7 @@ fn llvmFieldIndex( if (ty.isSimpleTupleOrAnonStruct()) { const tuple = ty.tupleFields(); var llvm_field_index: c_uint = 0; - for (tuple.types) |field_ty, i| { + for (tuple.types, 0..) |field_ty, i| { if (tuple.values[i].tag() != .unreachable_value or !field_ty.hasRuntimeBits()) continue; const field_align = field_ty.abiAlignment(target); @@ -10938,7 +10938,7 @@ fn isByRef(ty: Type) bool { if (ty.isSimpleTupleOrAnonStruct()) { const tuple = ty.tupleFields(); var count: usize = 0; - for (tuple.values) |field_val, i| { + for (tuple.values, 0..) |field_val, i| { if (field_val.tag() != .unreachable_value or !tuple.types[i].hasRuntimeBits()) continue; count += 1; diff --git a/src/codegen/spirv.zig b/src/codegen/spirv.zig index c5a3d57d07..5f27c14e95 100644 --- a/src/codegen/spirv.zig +++ b/src/codegen/spirv.zig @@ -418,7 +418,7 @@ pub const DeclGen = struct { const elem_refs = try self.gpa.alloc(IdRef, vector_len); defer self.gpa.free(elem_refs); - for (elem_refs) |*elem, i| { + for (elem_refs, 0..) |*elem, i| { elem.* = try self.genConstant(elem_ty, elem_vals[i]); } try section.emit(self.spv.gpa, .OpConstantComposite, .{ @@ -498,7 +498,7 @@ pub const DeclGen = struct { return self.fail("VarArgs functions are unsupported for SPIR-V", .{}); const param_types = try self.spv.arena.alloc(SpvType.Ref, ty.fnParamLen()); - for (param_types) |*param, i| { + for (param_types, 0..) |*param, i| { param.* = try self.resolveType(ty.fnParamType(i)); } diff --git a/src/codegen/spirv/Assembler.zig b/src/codegen/spirv/Assembler.zig index fc4ab406b9..6e77818fa5 100644 --- a/src/codegen/spirv/Assembler.zig +++ b/src/codegen/spirv/Assembler.zig @@ -392,7 +392,7 @@ fn processTypeInstruction(self: *Assembler) !AsmValue { .OpTypeFunction => blk: { const param_operands = operands[2..]; const param_types = try self.spv.arena.alloc(SpvType.Ref, param_operands.len); - for (param_types) |*param, i| { + for (param_types, 0..) |*param, i| { param.* = try self.resolveTypeRef(param_operands[i].ref_id); } const payload = try self.spv.arena.create(SpvType.Payload.Function); diff --git a/src/codegen/spirv/Module.zig b/src/codegen/spirv/Module.zig index f37b04bff3..3562e87be4 100644 --- a/src/codegen/spirv/Module.zig +++ b/src/codegen/spirv/Module.zig @@ -161,7 +161,7 @@ pub fn flush(self: Module, file: std.fs.File) !void { var iovc_buffers: [buffers.len]std.os.iovec_const = undefined; var file_size: u64 = 0; - for (iovc_buffers) |*iovc, i| { + for (&iovc_buffers, 0..) |*iovc, i| { // Note, since spir-v supports both little and big endian we can ignore byte order here and // just treat the words as a sequence of bytes. const bytes = std.mem.sliceAsBytes(buffers[i]); @@ -389,7 +389,7 @@ fn decorateStruct(self: *Module, target: IdRef, info: *const Type.Payload.Struct // Decorations for the struct members. const extra = info.member_decoration_extra; var extra_i: u32 = 0; - for (info.members) |member, i| { + for (info.members, 0..) |member, i| { const d = member.decorations; const index = @intCast(Word, i); switch (d.matrix_layout) { diff --git a/src/codegen/spirv/Section.zig b/src/codegen/spirv/Section.zig index 83f594dcef..a76314f5fa 100644 --- a/src/codegen/spirv/Section.zig +++ b/src/codegen/spirv/Section.zig @@ -195,7 +195,7 @@ fn writeContextDependentNumber(section: *Section, operand: spec.LiteralContextDe fn writeExtendedMask(section: *Section, comptime Operand: type, operand: Operand) void { var mask: Word = 0; - inline for (@typeInfo(Operand).Struct.fields) |field, bit| { + inline for (@typeInfo(Operand).Struct.fields, 0..) |field, bit| { switch (@typeInfo(field.type)) { .Optional => if (@field(operand, field.name) != null) { mask |= 1 << @intCast(u5, bit); diff --git a/src/codegen/spirv/type.zig b/src/codegen/spirv/type.zig index 6cc1b8f3bd..dc993b62ff 100644 --- a/src/codegen/spirv/type.zig +++ b/src/codegen/spirv/type.zig @@ -98,7 +98,7 @@ pub const Type = extern union { const struct_b = b.payload(.@"struct"); if (struct_a.members.len != struct_b.members.len) return false; - for (struct_a.members) |mem_a, i| { + for (struct_a.members, 0..) |mem_a, i| { if (!std.meta.eql(mem_a, struct_b.members[i])) return false; } diff --git a/src/glibc.zig b/src/glibc.zig index 2a2887c334..3021e7c7ba 100644 --- a/src/glibc.zig +++ b/src/glibc.zig @@ -698,7 +698,7 @@ pub fn buildSharedObjects(comp: *Compilation) !void { const metadata = try loadMetaData(comp.gpa, abilists_contents); defer metadata.destroy(comp.gpa); - const target_targ_index = for (metadata.all_targets) |targ, i| { + const target_targ_index = for (metadata.all_targets, 0..) |targ, i| { if (targ.arch == target.cpu.arch and targ.os == target.os.tag and targ.abi == target.abi) @@ -709,7 +709,7 @@ pub fn buildSharedObjects(comp: *Compilation) !void { unreachable; // target_util.available_libcs prevents us from getting here }; - const target_ver_index = for (metadata.all_versions) |ver, i| { + const target_ver_index = for (metadata.all_versions, 0..) |ver, i| { switch (ver.order(target_version)) { .eq => break i, .lt => continue, @@ -743,7 +743,7 @@ pub fn buildSharedObjects(comp: *Compilation) !void { var stubs_asm = std.ArrayList(u8).init(comp.gpa); defer stubs_asm.deinit(); - for (libs) |lib, lib_i| { + for (libs, 0..) |lib, lib_i| { stubs_asm.shrinkRetainingCapacity(0); try stubs_asm.appendSlice(".text\n"); diff --git a/src/libc_installation.zig b/src/libc_installation.zig index 0a50f97012..da877e1291 100644 --- a/src/libc_installation.zig +++ b/src/libc_installation.zig @@ -66,7 +66,7 @@ pub const LibCInstallation = struct { var line_it = std.mem.split(u8, line, "="); const name = line_it.first(); const value = line_it.rest(); - inline for (fields) |field, i| { + inline for (fields, 0..) |field, i| { if (std.mem.eql(u8, name, field.name)) { found_keys[i].found = true; if (value.len == 0) { @@ -79,7 +79,7 @@ pub const LibCInstallation = struct { } } } - inline for (fields) |field, i| { + inline for (fields, 0..) |field, i| { if (!found_keys[i].found) { log.err("missing field: {s}\n", .{field.name}); return error.ParseError; @@ -640,7 +640,7 @@ fn printVerboseInvocation( } else { std.debug.print("Zig attempted to find the path to native system libc headers by executing this command:\n", .{}); } - for (argv) |arg, i| { + for (argv, 0..) |arg, i| { if (i != 0) std.debug.print(" ", .{}); std.debug.print("{s}", .{arg}); } diff --git a/src/libunwind.zig b/src/libunwind.zig index 56113d1355..a20b5e81f7 100644 --- a/src/libunwind.zig +++ b/src/libunwind.zig @@ -34,7 +34,7 @@ pub fn buildStaticLib(comp: *Compilation) !void { .basename = basename, }; var c_source_files: [unwind_src_list.len]Compilation.CSourceFile = undefined; - for (unwind_src_list) |unwind_src, i| { + for (unwind_src_list, 0..) |unwind_src, i| { var cflags = std.ArrayList([]const u8).init(arena); switch (Compilation.classifyFileExt(unwind_src)) { diff --git a/src/link/Coff.zig b/src/link/Coff.zig index 2922e783e1..c0ac7e0b88 100644 --- a/src/link/Coff.zig +++ b/src/link/Coff.zig @@ -486,7 +486,7 @@ fn growSectionVM(self: *Coff, sect_id: u32, needed_size: u32) !void { // TODO: enforce order by increasing VM addresses in self.sections container. // This is required by the loader anyhow as far as I can tell. - for (self.sections.items(.header)[sect_id + 1 ..]) |*next_header, next_sect_id| { + for (self.sections.items(.header)[sect_id + 1 ..], 0..) |*next_header, next_sect_id| { const maybe_last_atom_index = self.sections.items(.last_atom_index)[sect_id + 1 + next_sect_id]; next_header.virtual_address += diff; @@ -2191,7 +2191,7 @@ fn logSymtab(self: *Coff) void { log.debug("symtab:", .{}); log.debug(" object(null)", .{}); - for (self.locals.items) |*sym, sym_id| { + for (self.locals.items, 0..) |*sym, sym_id| { const where = if (sym.section_number == .UNDEFINED) "ord" else "sect"; const def_index: u16 = switch (sym.section_number) { .UNDEFINED => 0, // TODO @@ -2216,7 +2216,7 @@ fn logSymtab(self: *Coff) void { } log.debug("GOT entries:", .{}); - for (self.got_entries.items) |entry, i| { + for (self.got_entries.items, 0..) |entry, i| { const got_sym = self.getSymbol(.{ .sym_index = entry.sym_index, .file = null }); const target_sym = self.getSymbol(entry.target); if (target_sym.section_number == .UNDEFINED) { diff --git a/src/link/Dwarf.zig b/src/link/Dwarf.zig index a3d0aa8a53..3fb6de7b73 100644 --- a/src/link/Dwarf.zig +++ b/src/link/Dwarf.zig @@ -339,7 +339,7 @@ pub const DeclState = struct { try dbg_info_buffer.writer().print("{}\x00", .{ty.fmt(module)}); const fields = ty.tupleFields(); - for (fields.types) |field, field_index| { + for (fields.types, 0..) |field, field_index| { // DW.AT.member try dbg_info_buffer.append(@enumToInt(AbbrevKind.struct_member)); // DW.AT.name, DW.FORM.string @@ -367,7 +367,7 @@ pub const DeclState = struct { } const fields = ty.structFields(); - for (fields.keys()) |field_name, field_index| { + for (fields.keys(), 0..) |field_name, field_index| { const field = fields.get(field_name).?; if (!field.ty.hasRuntimeBits()) continue; // DW.AT.member @@ -409,7 +409,7 @@ pub const DeclState = struct { .enum_numbered => ty.castTag(.enum_numbered).?.data.values, else => unreachable, }; - for (fields.keys()) |field_name, field_i| { + for (fields.keys(), 0..) |field_name, field_i| { // DW.AT.enumerator try dbg_info_buffer.ensureUnusedCapacity(field_name.len + 2 + @sizeOf(u64)); dbg_info_buffer.appendAssumeCapacity(@enumToInt(AbbrevKind.enum_variant)); @@ -2252,14 +2252,14 @@ pub fn writeDbgLineHeader(self: *Dwarf) !void { 1, // `DW.LNS.set_isa` }); - for (paths.dirs) |dir, i| { + for (paths.dirs, 0..) |dir, i| { log.debug("adding new include dir at {d} of '{s}'", .{ i + 1, dir }); di_buf.appendSliceAssumeCapacity(dir); di_buf.appendAssumeCapacity(0); } di_buf.appendAssumeCapacity(0); // include directories sentinel - for (paths.files) |file, i| { + for (paths.files, 0..) |file, i| { const dir_index = paths.files_dirs_indexes[i]; log.debug("adding new file name at {d} of '{s}' referencing directory {d}", .{ i + 1, file, dir_index + 1 }); di_buf.appendSliceAssumeCapacity(file); diff --git a/src/link/Elf.zig b/src/link/Elf.zig index d936a347cf..1a9d594c56 100644 --- a/src/link/Elf.zig +++ b/src/link/Elf.zig @@ -1126,7 +1126,7 @@ pub fn flushModule(self: *Elf, comp: *Compilation, prog_node: *std.Progress.Node const buf = try gpa.alloc(elf.Elf32_Phdr, self.program_headers.items.len); defer gpa.free(buf); - for (buf) |*phdr, i| { + for (buf, 0..) |*phdr, i| { phdr.* = progHeaderTo32(self.program_headers.items[i]); if (foreign_endian) { mem.byteSwapAllFields(elf.Elf32_Phdr, phdr); @@ -1138,7 +1138,7 @@ pub fn flushModule(self: *Elf, comp: *Compilation, prog_node: *std.Progress.Node const buf = try gpa.alloc(elf.Elf64_Phdr, self.program_headers.items.len); defer gpa.free(buf); - for (buf) |*phdr, i| { + for (buf, 0..) |*phdr, i| { phdr.* = self.program_headers.items[i]; if (foreign_endian) { mem.byteSwapAllFields(elf.Elf64_Phdr, phdr); @@ -1193,7 +1193,7 @@ pub fn flushModule(self: *Elf, comp: *Compilation, prog_node: *std.Progress.Node const buf = try gpa.alloc(elf.Elf32_Shdr, slice.len); defer gpa.free(buf); - for (buf) |*shdr, i| { + for (buf, 0..) |*shdr, i| { shdr.* = sectHeaderTo32(slice.items(.shdr)[i]); log.debug("writing section {?s}: {}", .{ self.shstrtab.get(shdr.sh_name), shdr.* }); if (foreign_endian) { @@ -1207,7 +1207,7 @@ pub fn flushModule(self: *Elf, comp: *Compilation, prog_node: *std.Progress.Node const buf = try gpa.alloc(elf.Elf64_Shdr, slice.len); defer gpa.free(buf); - for (buf) |*shdr, i| { + for (buf, 0..) |*shdr, i| { shdr.* = slice.items(.shdr)[i]; log.debug("writing section {?s}: {}", .{ self.shstrtab.get(shdr.sh_name), shdr.* }); if (foreign_endian) { @@ -1732,7 +1732,7 @@ fn linkWithLLD(self: *Elf, comp: *Compilation, prog_node: *std.Progress.Node) !v argv.appendAssumeCapacity("--as-needed"); var as_needed = true; - for (system_libs) |link_lib, i| { + for (system_libs, 0..) |link_lib, i| { const lib_as_needed = !system_libs_values[i].needed; switch ((@as(u2, @boolToInt(lib_as_needed)) << 1) | @boolToInt(as_needed)) { 0b00, 0b11 => {}, @@ -2909,7 +2909,7 @@ fn writeAllGlobalSymbols(self: *Elf) !void { const buf = try self.base.allocator.alloc(elf.Elf32_Sym, self.global_symbols.items.len); defer self.base.allocator.free(buf); - for (buf) |*sym, i| { + for (buf, 0..) |*sym, i| { const global = self.global_symbols.items[i]; sym.* = .{ .st_name = global.st_name, @@ -2929,7 +2929,7 @@ fn writeAllGlobalSymbols(self: *Elf) !void { const buf = try self.base.allocator.alloc(elf.Elf64_Sym, self.global_symbols.items.len); defer self.base.allocator.free(buf); - for (buf) |*sym, i| { + for (buf, 0..) |*sym, i| { const global = self.global_symbols.items[i]; sym.* = .{ .st_name = global.st_name, @@ -3238,11 +3238,11 @@ const CsuObjects = struct { fn logSymtab(self: Elf) void { log.debug("locals:", .{}); - for (self.local_symbols.items) |sym, id| { + for (self.local_symbols.items, 0..) |sym, id| { log.debug(" {d}: {?s}: @{x} in {d}", .{ id, self.shstrtab.get(sym.st_name), sym.st_value, sym.st_shndx }); } log.debug("globals:", .{}); - for (self.global_symbols.items) |sym, id| { + for (self.global_symbols.items, 0..) |sym, id| { log.debug(" {d}: {?s}: @{x} in {d}", .{ id, self.shstrtab.get(sym.st_name), sym.st_value, sym.st_shndx }); } } diff --git a/src/link/MachO.zig b/src/link/MachO.zig index 35f5f1b562..7c1d4776af 100644 --- a/src/link/MachO.zig +++ b/src/link/MachO.zig @@ -962,7 +962,7 @@ pub fn parseLibs( syslibroot: ?[]const u8, dependent_libs: anytype, ) !void { - for (lib_names) |lib, i| { + for (lib_names, 0..) |lib, i| { const lib_info = lib_infos[i]; log.debug("parsing lib path '{s}'", .{lib}); if (try self.parseDylib(lib, dependent_libs, .{ @@ -1584,7 +1584,7 @@ pub fn resolveSymbolsInDylibs(self: *MachO) !void { const sym = self.getSymbolPtr(global); const sym_name = self.getSymbolName(global); - for (self.dylibs.items) |dylib, id| { + for (self.dylibs.items, 0..) |dylib, id| { if (!dylib.symbols.contains(sym_name)) continue; const dylib_id = @intCast(u16, id); @@ -1686,7 +1686,7 @@ pub fn resolveDyldStubBinder(self: *MachO) !void { gop.value_ptr.* = sym_loc; const global = gop.value_ptr.*; - for (self.dylibs.items) |dylib, id| { + for (self.dylibs.items, 0..) |dylib, id| { if (!dylib.symbols.contains(sym_name)) continue; const dylib_id = @intCast(u16, id); @@ -2852,7 +2852,7 @@ fn moveSectionInVirtualMemory(self: *MachO, sect_id: u8, needed_size: u64) !void }); // TODO: enforce order by increasing VM addresses in self.sections container. - for (self.sections.items(.header)[sect_id + 1 ..]) |*next_header, next_sect_id| { + for (self.sections.items(.header)[sect_id + 1 ..], 0..) |*next_header, next_sect_id| { const index = @intCast(u8, sect_id + 1 + next_sect_id); const next_segment = self.getSegmentPtr(index); next_header.addr += diff; @@ -3082,7 +3082,7 @@ pub fn initSection(self: *MachO, segname: []const u8, sectname: []const u8, opts fn insertSection(self: *MachO, segment_index: u8, header: macho.section_64) !u8 { const precedence = getSectionPrecedence(header); const indexes = self.getSectionIndexes(segment_index); - const insertion_index = for (self.sections.items(.header)[indexes.start..indexes.end]) |hdr, i| { + const insertion_index = for (self.sections.items(.header)[indexes.start..indexes.end], 0..) |hdr, i| { if (getSectionPrecedence(hdr) > precedence) break @intCast(u8, i + indexes.start); } else indexes.end; log.debug("inserting section '{s},{s}' at index {d}", .{ @@ -3133,7 +3133,7 @@ pub fn getGlobalSymbol(self: *MachO, name: []const u8) !u32 { } fn writeSegmentHeaders(self: *MachO, writer: anytype) !void { - for (self.segments.items) |seg, i| { + for (self.segments.items, 0..) |seg, i| { const indexes = self.getSectionIndexes(@intCast(u8, i)); try writer.writeStruct(seg); for (self.sections.items(.header)[indexes.start..indexes.end]) |header| { @@ -3147,7 +3147,7 @@ fn writeLinkeditSegmentData(self: *MachO) !void { seg.filesize = 0; seg.vmsize = 0; - for (self.segments.items) |segment, id| { + for (self.segments.items, 0..) |segment, id| { if (self.linkedit_segment_cmd_index.? == @intCast(u8, id)) continue; if (seg.vmaddr < segment.vmaddr + segment.vmsize) { seg.vmaddr = mem.alignForwardGeneric(u64, segment.vmaddr + segment.vmsize, self.page_size); @@ -3167,7 +3167,7 @@ fn collectRebaseData(self: *MachO, rebase: *Rebase) !void { const gpa = self.base.allocator; const slice = self.sections.slice(); - for (self.rebases.keys()) |atom_index, i| { + for (self.rebases.keys(), 0..) |atom_index, i| { const atom = self.getAtom(atom_index); log.debug(" ATOM(%{?d}, '{s}')", .{ atom.getSymbolIndex(), atom.getName(self) }); @@ -3197,7 +3197,7 @@ fn collectBindData(self: *MachO, bind: anytype, raw_bindings: anytype) !void { const gpa = self.base.allocator; const slice = self.sections.slice(); - for (raw_bindings.keys()) |atom_index, i| { + for (raw_bindings.keys(), 0..) |atom_index, i| { const atom = self.getAtom(atom_index); log.debug(" ATOM(%{?d}, '{s}')", .{ atom.getSymbolIndex(), atom.getName(self) }); @@ -3417,7 +3417,7 @@ fn writeSymtab(self: *MachO) !SymtabCtx { var locals = std.ArrayList(macho.nlist_64).init(gpa); defer locals.deinit(); - for (self.locals.items) |sym, sym_id| { + for (self.locals.items, 0..) |sym, sym_id| { if (sym.n_strx == 0) continue; // no name, skip const sym_loc = SymbolWithLoc{ .sym_index = @intCast(u32, sym_id), .file = null }; if (self.symbolIsTemp(sym_loc)) continue; // local temp symbol, skip @@ -3736,7 +3736,7 @@ pub fn makeStaticString(bytes: []const u8) [16]u8 { } fn getSegmentByName(self: MachO, segname: []const u8) ?u8 { - for (self.segments.items) |seg, i| { + for (self.segments.items, 0..) |seg, i| { if (mem.eql(u8, segname, seg.segName())) return @intCast(u8, i); } else return null; } @@ -3758,7 +3758,7 @@ pub fn getLinkeditSegmentPtr(self: *MachO) *macho.segment_command_64 { pub fn getSectionByName(self: MachO, segname: []const u8, sectname: []const u8) ?u8 { // TODO investigate caching with a hashmap - for (self.sections.items(.header)) |header, i| { + for (self.sections.items(.header), 0..) |header, i| { if (mem.eql(u8, header.segName(), segname) and mem.eql(u8, header.sectName(), sectname)) return @intCast(u8, i); } else return null; @@ -3766,7 +3766,7 @@ pub fn getSectionByName(self: MachO, segname: []const u8, sectname: []const u8) pub fn getSectionIndexes(self: MachO, segment_index: u8) struct { start: u8, end: u8 } { var start: u8 = 0; - const nsects = for (self.segments.items) |seg, i| { + const nsects = for (self.segments.items, 0..) |seg, i| { if (i == segment_index) break @intCast(u8, seg.nsects); start += @intCast(u8, seg.nsects); } else 0; @@ -4160,7 +4160,7 @@ pub fn findFirst(comptime T: type, haystack: []align(1) const T, start: usize, p pub fn logSections(self: *MachO) void { log.debug("sections:", .{}); - for (self.sections.items(.header)) |header, i| { + for (self.sections.items(.header), 0..) |header, i| { log.debug(" sect({d}): {s},{s} @{x}, sizeof({x})", .{ i + 1, header.segName(), @@ -4197,7 +4197,7 @@ pub fn logSymtab(self: *MachO) void { var buf: [4]u8 = undefined; log.debug("symtab:", .{}); - for (self.locals.items) |sym, sym_id| { + for (self.locals.items, 0..) |sym, sym_id| { const where = if (sym.undf() and !sym.tentative()) "ord" else "sect"; const def_index = if (sym.undf() and !sym.tentative()) @divTrunc(sym.n_desc, macho.N_SYMBOL_RESOLVER) @@ -4220,7 +4220,7 @@ pub fn logSymtab(self: *MachO) void { } log.debug("GOT entries:", .{}); - for (self.got_entries.items) |entry, i| { + for (self.got_entries.items, 0..) |entry, i| { const atom_sym = entry.getSymbol(self); const target_sym = self.getSymbol(entry.target); if (target_sym.undf()) { @@ -4241,7 +4241,7 @@ pub fn logSymtab(self: *MachO) void { } log.debug("stubs entries:", .{}); - for (self.stubs.items) |entry, i| { + for (self.stubs.items, 0..) |entry, i| { const target_sym = self.getSymbol(entry.target); const atom_sym = entry.getSymbol(self); assert(target_sym.undf()); @@ -4257,7 +4257,7 @@ pub fn logAtoms(self: *MachO) void { log.debug("atoms:", .{}); const slice = self.sections.slice(); - for (slice.items(.last_atom_index)) |last_atom_index, i| { + for (slice.items(.last_atom_index), 0..) |last_atom_index, i| { var atom_index = last_atom_index orelse continue; const header = slice.items(.header)[i]; diff --git a/src/link/MachO/DebugSymbols.zig b/src/link/MachO/DebugSymbols.zig index 0a5c8b0372..1f41fc1cb8 100644 --- a/src/link/MachO/DebugSymbols.zig +++ b/src/link/MachO/DebugSymbols.zig @@ -383,7 +383,7 @@ fn finalizeDwarfSegment(self: *DebugSymbols, macho_file: *MachO) void { fn writeSegmentHeaders(self: *DebugSymbols, macho_file: *MachO, writer: anytype) !void { // Write segment/section headers from the binary file first. const end = macho_file.linkedit_segment_cmd_index.?; - for (macho_file.segments.items[0..end]) |seg, i| { + for (macho_file.segments.items[0..end], 0..) |seg, i| { const indexes = macho_file.getSectionIndexes(@intCast(u8, i)); var out_seg = seg; out_seg.fileoff = 0; @@ -412,7 +412,7 @@ fn writeSegmentHeaders(self: *DebugSymbols, macho_file: *MachO, writer: anytype) } } // Next, commit DSYM's __LINKEDIT and __DWARF segments headers. - for (self.segments.items) |seg, i| { + for (self.segments.items, 0..) |seg, i| { const indexes = self.getSectionIndexes(@intCast(u8, i)); try writer.writeStruct(seg); for (self.sections.items[indexes.start..indexes.end]) |header| { @@ -477,7 +477,7 @@ fn writeSymtab(self: *DebugSymbols, macho_file: *MachO) !void { var locals = std.ArrayList(macho.nlist_64).init(gpa); defer locals.deinit(); - for (macho_file.locals.items) |sym, sym_id| { + for (macho_file.locals.items, 0..) |sym, sym_id| { if (sym.n_strx == 0) continue; // no name, skip const sym_loc = MachO.SymbolWithLoc{ .sym_index = @intCast(u32, sym_id), .file = null }; if (macho_file.symbolIsTemp(sym_loc)) continue; // local temp symbol, skip @@ -547,7 +547,7 @@ fn writeStrtab(self: *DebugSymbols) !void { pub fn getSectionIndexes(self: *DebugSymbols, segment_index: u8) struct { start: u8, end: u8 } { var start: u8 = 0; - const nsects = for (self.segments.items) |seg, i| { + const nsects = for (self.segments.items, 0..) |seg, i| { if (i == segment_index) break @intCast(u8, seg.nsects); start += @intCast(u8, seg.nsects); } else 0; diff --git a/src/link/MachO/Dylib.zig b/src/link/MachO/Dylib.zig index a2c4bad942..863f1e805a 100644 --- a/src/link/MachO/Dylib.zig +++ b/src/link/MachO/Dylib.zig @@ -347,7 +347,7 @@ pub fn parseFromStub( }); defer matcher.deinit(); - for (lib_stub.inner) |elem, stub_index| { + for (lib_stub.inner, 0..) |elem, stub_index| { const is_match = switch (elem) { .v3 => |stub| matcher.matchesArch(stub.archs), .v4 => |stub| matcher.matchesTarget(stub.targets), diff --git a/src/link/MachO/Object.zig b/src/link/MachO/Object.zig index 4d24b2ed6a..fdcdb47224 100644 --- a/src/link/MachO/Object.zig +++ b/src/link/MachO/Object.zig @@ -201,7 +201,7 @@ pub fn parse(self: *Object, allocator: Allocator, cpu_arch: std.Target.Cpu.Arch) var sorted_all_syms = try std.ArrayList(SymbolAtIndex).initCapacity(allocator, self.in_symtab.?.len); defer sorted_all_syms.deinit(); - for (self.in_symtab.?) |_, index| { + for (self.in_symtab.?, 0..) |_, index| { sorted_all_syms.appendAssumeCapacity(.{ .index = @intCast(u32, index) }); } @@ -211,7 +211,7 @@ pub fn parse(self: *Object, allocator: Allocator, cpu_arch: std.Target.Cpu.Arch) // is kind enough to specify the symbols in the correct order. sort.sort(SymbolAtIndex, sorted_all_syms.items, self, SymbolAtIndex.lessThan); - for (sorted_all_syms.items) |sym_id, i| { + for (sorted_all_syms.items, 0..) |sym_id, i| { const sym = sym_id.getSymbol(self); if (sym.sect() and self.source_section_index_lookup[sym.n_sect - 1] == -1) { @@ -380,7 +380,7 @@ pub fn splitRegularSections(self: *Object, zld: *Zld, object_id: u32) !void { const gpa = zld.gpa; const sections = self.getSourceSections(); - for (sections) |sect, id| { + for (sections, 0..) |sect, id| { if (sect.isDebug()) continue; const out_sect_id = (try zld.getOutputSection(sect)) orelse { log.debug(" unhandled section '{s},{s}'", .{ sect.segName(), sect.sectName() }); @@ -400,7 +400,7 @@ pub fn splitRegularSections(self: *Object, zld: *Zld, object_id: u32) !void { } if (self.in_symtab == null) { - for (sections) |sect, id| { + for (sections, 0..) |sect, id| { if (sect.isDebug()) continue; const out_sect_id = (try zld.getOutputSection(sect)) orelse continue; if (sect.size == 0) continue; @@ -446,7 +446,7 @@ pub fn splitRegularSections(self: *Object, zld: *Zld, object_id: u32) !void { var sorted_sections = try gpa.alloc(SortedSection, sections.len); defer gpa.free(sorted_sections); - for (sections) |sect, id| { + for (sections, 0..) |sect, id| { sorted_sections[id] = .{ .header = sect, .id = @intCast(u8, id) }; } @@ -804,7 +804,7 @@ fn parseUnwindInfo(self: *Object, zld: *Zld, object_id: u32) !void { try self.parseRelocs(gpa, sect_id); const relocs = self.getRelocs(sect_id); - for (unwind_records) |record, record_id| { + for (unwind_records, 0..) |record, record_id| { const offset = record_id * @sizeOf(macho.compact_unwind_entry); const rel_pos = filterRelocs( relocs, @@ -857,7 +857,7 @@ pub fn getSourceSectionByName(self: Object, segname: []const u8, sectname: []con pub fn getSourceSectionIndexByName(self: Object, segname: []const u8, sectname: []const u8) ?u8 { const sections = self.getSourceSections(); - for (sections) |sect, i| { + for (sections, 0..) |sect, i| { if (mem.eql(u8, segname, sect.segName()) and mem.eql(u8, sectname, sect.sectName())) return @intCast(u8, i); } else return null; diff --git a/src/link/MachO/UnwindInfo.zig b/src/link/MachO/UnwindInfo.zig index 5e61834bbc..c64e617a35 100644 --- a/src/link/MachO/UnwindInfo.zig +++ b/src/link/MachO/UnwindInfo.zig @@ -126,7 +126,7 @@ const Page = struct { ctx.page.start + ctx.page.count, }); try writer.print(" encodings (count = {d})\n", .{ctx.page.page_encodings_count}); - for (ctx.page.page_encodings[0..ctx.page.page_encodings_count]) |record_id, i| { + for (ctx.page.page_encodings[0..ctx.page.page_encodings_count], 0..) |record_id, i| { const record = ctx.info.records.items[record_id]; const enc = record.compactUnwindEncoding; try writer.print(" {d}: 0x{x:0>8}\n", .{ ctx.info.common_encodings_count + i, enc }); @@ -205,7 +205,7 @@ pub fn scanRelocs(zld: *Zld) !void { if (zld.getSectionByName("__TEXT", "__unwind_info") == null) return; const cpu_arch = zld.options.target.cpu.arch; - for (zld.objects.items) |*object, object_id| { + for (zld.objects.items, 0..) |*object, object_id| { const unwind_records = object.getUnwindRecords(); for (object.exec_atoms.items) |atom_index| { const record_id = object.unwind_records_lookup.get(atom_index) orelse continue; @@ -244,7 +244,7 @@ pub fn collect(info: *UnwindInfo, zld: *Zld) !void { defer atom_indexes.deinit(); // TODO handle dead stripping - for (zld.objects.items) |*object, object_id| { + for (zld.objects.items, 0..) |*object, object_id| { log.debug("collecting unwind records in {s} ({d})", .{ object.name, object_id }); const unwind_records = object.getUnwindRecords(); @@ -335,7 +335,7 @@ pub fn collect(info: *UnwindInfo, zld: *Zld) !void { try info.records_lookup.ensureTotalCapacity(info.gpa, @intCast(u32, atom_indexes.items.len)); var maybe_prev: ?macho.compact_unwind_entry = null; - for (records.items) |record, i| { + for (records.items, 0..) |record, i| { const record_id = blk: { if (maybe_prev) |prev| { const is_dwarf = UnwindEncoding.isDwarf(record.compactUnwindEncoding, cpu_arch); @@ -483,7 +483,7 @@ pub fn collect(info: *UnwindInfo, zld: *Zld) !void { // Save indices of records requiring LSDA relocation try info.lsdas_lookup.ensureTotalCapacity(info.gpa, @intCast(u32, info.records.items.len)); - for (info.records.items) |rec, i| { + for (info.records.items, 0..) |rec, i| { info.lsdas_lookup.putAssumeCapacityNoClobber(@intCast(RecordIndex, i), @intCast(u32, info.lsdas.items.len)); if (rec.lsda == 0) continue; try info.lsdas.append(info.gpa, @intCast(RecordIndex, i)); @@ -556,7 +556,7 @@ pub fn write(info: *UnwindInfo, zld: *Zld) !void { const cpu_arch = zld.options.target.cpu.arch; log.debug("Personalities:", .{}); - for (info.personalities[0..info.personalities_count]) |target, i| { + for (info.personalities[0..info.personalities_count], 0..) |target, i| { const atom_index = zld.getGotAtomIndexForSymbol(target).?; const atom = zld.getAtom(atom_index); const sym = zld.getSymbol(atom.getSymbolWithLoc()); @@ -581,7 +581,7 @@ pub fn write(info: *UnwindInfo, zld: *Zld) !void { } } - for (info.records.items) |record, i| { + for (info.records.items, 0..) |record, i| { log.debug("Unwind record at offset 0x{x}", .{i * @sizeOf(macho.compact_unwind_entry)}); log.debug(" start: 0x{x}", .{record.rangeStart}); log.debug(" length: 0x{x}", .{record.rangeLength}); @@ -621,7 +621,7 @@ pub fn write(info: *UnwindInfo, zld: *Zld) !void { const pages_base_offset = @intCast(u32, size - (info.pages.items.len * second_level_page_bytes)); const lsda_base_offset = @intCast(u32, pages_base_offset - (info.lsdas.items.len * @sizeOf(macho.unwind_info_section_header_lsda_index_entry))); - for (info.pages.items) |page, i| { + for (info.pages.items, 0..) |page, i| { assert(page.count > 0); const first_entry = info.records.items[page.start]; try writer.writeStruct(macho.unwind_info_section_header_index_entry{ diff --git a/src/link/MachO/dead_strip.zig b/src/link/MachO/dead_strip.zig index 6ba70acbfd..9dfd6226b4 100644 --- a/src/link/MachO/dead_strip.zig +++ b/src/link/MachO/dead_strip.zig @@ -238,7 +238,7 @@ fn mark(zld: *Zld, roots: AtomTable, alive: *AtomTable) !void { } } - for (zld.objects.items) |_, object_id| { + for (zld.objects.items, 0..) |_, object_id| { // Traverse unwind and eh_frame records noting if the source symbol has been marked, and if so, // marking all references as live. try markUnwindRecords(zld, @intCast(u32, object_id), alive); diff --git a/src/link/MachO/dyld_info/Rebase.zig b/src/link/MachO/dyld_info/Rebase.zig index 0233744c43..1d7a0c94c0 100644 --- a/src/link/MachO/dyld_info/Rebase.zig +++ b/src/link/MachO/dyld_info/Rebase.zig @@ -45,7 +45,7 @@ pub fn finalize(rebase: *Rebase, gpa: Allocator) !void { var start: usize = 0; var seg_id: ?u8 = null; - for (rebase.entries.items) |entry, i| { + for (rebase.entries.items, 0..) |entry, i| { if (seg_id != null and seg_id.? == entry.segment_id) continue; try finalizeSegment(rebase.entries.items[start..i], writer); seg_id = entry.segment_id; diff --git a/src/link/MachO/dyld_info/bind.zig b/src/link/MachO/dyld_info/bind.zig index b4e51478e0..98a693920a 100644 --- a/src/link/MachO/dyld_info/bind.zig +++ b/src/link/MachO/dyld_info/bind.zig @@ -51,7 +51,7 @@ pub fn Bind(comptime Ctx: type, comptime Target: type) type { var start: usize = 0; var seg_id: ?u8 = null; - for (self.entries.items) |entry, i| { + for (self.entries.items, 0..) |entry, i| { if (seg_id != null and seg_id.? == entry.segment_id) continue; try finalizeSegment(self.entries.items[start..i], ctx, writer); seg_id = entry.segment_id; diff --git a/src/link/MachO/eh_frame.zig b/src/link/MachO/eh_frame.zig index 3867b15a96..5420bf6c29 100644 --- a/src/link/MachO/eh_frame.zig +++ b/src/link/MachO/eh_frame.zig @@ -16,7 +16,7 @@ const Zld = @import("zld.zig").Zld; pub fn scanRelocs(zld: *Zld) !void { const gpa = zld.gpa; - for (zld.objects.items) |*object, object_id| { + for (zld.objects.items, 0..) |*object, object_id| { var cies = std.AutoHashMap(u32, void).init(gpa); defer cies.deinit(); @@ -108,7 +108,7 @@ pub fn write(zld: *Zld, unwind_info: *UnwindInfo) !void { var eh_frame_offset: u32 = 0; - for (zld.objects.items) |*object, object_id| { + for (zld.objects.items, 0..) |*object, object_id| { try eh_records.ensureUnusedCapacity(2 * @intCast(u32, object.exec_atoms.items.len)); var cies = std.AutoHashMap(u32, u32).init(gpa); @@ -407,7 +407,7 @@ pub fn EhFrameRecord(comptime is_mutable: bool) type { var creader = std.io.countingReader(stream.reader()); const reader = creader.reader(); - for (aug_str) |ch, i| switch (ch) { + for (aug_str, 0..) |ch, i| switch (ch) { 'z' => if (i > 0) { return error.BadDwarfCfi; } else { @@ -467,7 +467,7 @@ pub fn EhFrameRecord(comptime is_mutable: bool) type { var creader = std.io.countingReader(stream.reader()); const reader = creader.reader(); - for (aug_str) |ch, i| switch (ch) { + for (aug_str, 0..) |ch, i| switch (ch) { 'z' => if (i > 0) { return error.BadDwarfCfi; } else { diff --git a/src/link/MachO/thunks.zig b/src/link/MachO/thunks.zig index f12fb80668..ce3fda0b1f 100644 --- a/src/link/MachO/thunks.zig +++ b/src/link/MachO/thunks.zig @@ -329,7 +329,7 @@ fn createThunkAtom(zld: *Zld) !AtomIndex { fn getThunkIndex(zld: *Zld, atom_index: AtomIndex) ?ThunkIndex { const atom = zld.getAtom(atom_index); const sym = zld.getSymbol(atom.getSymbolWithLoc()); - for (zld.thunks.items) |thunk, i| { + for (zld.thunks.items, 0..) |thunk, i| { if (thunk.len == 0) continue; const thunk_atom_index = thunk.getStartAtomIndex(); diff --git a/src/link/MachO/zld.zig b/src/link/MachO/zld.zig index a94a0828fc..a901e4fd4b 100644 --- a/src/link/MachO/zld.zig +++ b/src/link/MachO/zld.zig @@ -321,7 +321,7 @@ pub const Zld = struct { syslibroot: ?[]const u8, dependent_libs: anytype, ) !void { - for (lib_names) |lib, i| { + for (lib_names, 0..) |lib, i| { const lib_info = lib_infos[i]; log.debug("parsing lib path '{s}'", .{lib}); if (try self.parseDylib(lib, dependent_libs, .{ @@ -1092,7 +1092,7 @@ pub const Zld = struct { const sym = self.getSymbolPtr(global); const sym_name = self.getSymbolName(global); - for (self.dylibs.items) |dylib, id| { + for (self.dylibs.items, 0..) |dylib, id| { if (!dylib.symbols.contains(sym_name)) continue; const dylib_id = @intCast(u16, id); @@ -1223,7 +1223,7 @@ pub const Zld = struct { const global = SymbolWithLoc{ .sym_index = sym_index }; try self.globals.append(gpa, global); - for (self.dylibs.items) |dylib, id| { + for (self.dylibs.items, 0..) |dylib, id| { if (!dylib.symbols.contains(sym_name)) continue; const dylib_id = @intCast(u16, id); @@ -1311,7 +1311,7 @@ pub const Zld = struct { }); } - for (self.sections.items(.header)) |header, sect_id| { + for (self.sections.items(.header), 0..) |header, sect_id| { if (header.size == 0) continue; // empty section const segname = header.segName(); @@ -1385,7 +1385,7 @@ pub const Zld = struct { const gpa = self.gpa; const slice = self.sections.slice(); - for (slice.items(.first_atom_index)) |first_atom_index, sect_id| { + for (slice.items(.first_atom_index), 0..) |first_atom_index, sect_id| { const header = slice.items(.header)[sect_id]; var atom_index = first_atom_index; @@ -1525,7 +1525,7 @@ pub const Zld = struct { fn calcSectionSizes(self: *Zld) !void { const slice = self.sections.slice(); - for (slice.items(.header)) |*header, sect_id| { + for (slice.items(.header), 0..) |*header, sect_id| { if (header.size == 0) continue; if (self.requiresThunks()) { if (header.isCode() and !(header.type() == macho.S_SYMBOL_STUBS) and !mem.eql(u8, header.sectName(), "__stub_helper")) continue; @@ -1556,7 +1556,7 @@ pub const Zld = struct { } if (self.requiresThunks()) { - for (slice.items(.header)) |header, sect_id| { + for (slice.items(.header), 0..) |header, sect_id| { if (!header.isCode()) continue; if (header.type() == macho.S_SYMBOL_STUBS) continue; if (mem.eql(u8, header.sectName(), "__stub_helper")) continue; @@ -1568,7 +1568,7 @@ pub const Zld = struct { } fn allocateSegments(self: *Zld) !void { - for (self.segments.items) |*segment, segment_index| { + for (self.segments.items, 0..) |*segment, segment_index| { const is_text_segment = mem.eql(u8, segment.segName(), "__TEXT"); const base_size = if (is_text_segment) try load_commands.calcMinHeaderPad(self.gpa, self.options, .{ .segments = self.segments.items, @@ -1606,7 +1606,7 @@ pub const Zld = struct { var start = init_size; const slice = self.sections.slice(); - for (slice.items(.header)[indexes.start..indexes.end]) |*header, sect_id| { + for (slice.items(.header)[indexes.start..indexes.end], 0..) |*header, sect_id| { const alignment = try math.powi(u32, 2, header.@"align"); const start_aligned = mem.alignForwardGeneric(u64, start, alignment); const n_sect = @intCast(u8, indexes.start + sect_id + 1); @@ -1750,7 +1750,7 @@ pub const Zld = struct { } fn writeSegmentHeaders(self: *Zld, writer: anytype) !void { - for (self.segments.items) |seg, i| { + for (self.segments.items, 0..) |seg, i| { const indexes = self.getSectionIndexes(@intCast(u8, i)); var out_seg = seg; out_seg.cmdsize = @sizeOf(macho.segment_command_64); @@ -1852,7 +1852,7 @@ pub const Zld = struct { } // Finally, unpack the rest. - for (slice.items(.header)) |header, sect_id| { + for (slice.items(.header), 0..) |header, sect_id| { switch (header.type()) { macho.S_LITERAL_POINTERS, macho.S_REGULAR, @@ -1989,7 +1989,7 @@ pub const Zld = struct { // Finally, unpack the rest. const slice = self.sections.slice(); - for (slice.items(.header)) |header, sect_id| { + for (slice.items(.header), 0..) |header, sect_id| { switch (header.type()) { macho.S_LITERAL_POINTERS, macho.S_REGULAR, @@ -2710,7 +2710,7 @@ pub const Zld = struct { const amt = try self.file.preadAll(locals_buf, self.symtab_cmd.symoff); if (amt != locals_buf.len) return error.InputOutput; - const istab: usize = for (locals) |local, i| { + const istab: usize = for (locals, 0..) |local, i| { if (local.stab()) break i; } else locals.len; const nstabs = locals.len - istab; @@ -2897,7 +2897,7 @@ pub const Zld = struct { } fn getSegmentByName(self: Zld, segname: []const u8) ?u8 { - for (self.segments.items) |seg, i| { + for (self.segments.items, 0..) |seg, i| { if (mem.eql(u8, segname, seg.segName())) return @intCast(u8, i); } else return null; } @@ -2921,7 +2921,7 @@ pub const Zld = struct { pub fn getSectionByName(self: Zld, segname: []const u8, sectname: []const u8) ?u8 { // TODO investigate caching with a hashmap - for (self.sections.items(.header)) |header, i| { + for (self.sections.items(.header), 0..) |header, i| { if (mem.eql(u8, header.segName(), segname) and mem.eql(u8, header.sectName(), sectname)) return @intCast(u8, i); } else return null; @@ -2929,7 +2929,7 @@ pub const Zld = struct { pub fn getSectionIndexes(self: Zld, segment_index: u8) struct { start: u8, end: u8 } { var start: u8 = 0; - const nsects = for (self.segments.items) |seg, i| { + const nsects = for (self.segments.items, 0..) |seg, i| { if (i == segment_index) break @intCast(u8, seg.nsects); start += @intCast(u8, seg.nsects); } else 0; @@ -3220,7 +3220,7 @@ pub const Zld = struct { fn logSegments(self: *Zld) void { log.debug("segments:", .{}); - for (self.segments.items) |segment, i| { + for (self.segments.items, 0..) |segment, i| { log.debug(" segment({d}): {s} @{x} ({x}), sizeof({x})", .{ i, segment.segName(), @@ -3233,7 +3233,7 @@ pub const Zld = struct { fn logSections(self: *Zld) void { log.debug("sections:", .{}); - for (self.sections.items(.header)) |header, i| { + for (self.sections.items(.header), 0..) |header, i| { log.debug(" sect({d}): {s},{s} @{x} ({x}), sizeof({x})", .{ i + 1, header.segName(), @@ -3271,10 +3271,10 @@ pub const Zld = struct { const scoped_log = std.log.scoped(.symtab); scoped_log.debug("locals:", .{}); - for (self.objects.items) |object, id| { + for (self.objects.items, 0..) |object, id| { scoped_log.debug(" object({d}): {s}", .{ id, object.name }); if (object.in_symtab == null) continue; - for (object.symtab) |sym, sym_id| { + for (object.symtab, 0..) |sym, sym_id| { mem.set(u8, &buf, '_'); scoped_log.debug(" %{d}: {s} @{x} in sect({d}), {s}", .{ sym_id, @@ -3286,7 +3286,7 @@ pub const Zld = struct { } } scoped_log.debug(" object(-1)", .{}); - for (self.locals.items) |sym, sym_id| { + for (self.locals.items, 0..) |sym, sym_id| { if (sym.undf()) continue; scoped_log.debug(" %{d}: {s} @{x} in sect({d}), {s}", .{ sym_id, @@ -3298,7 +3298,7 @@ pub const Zld = struct { } scoped_log.debug("exports:", .{}); - for (self.globals.items) |global, i| { + for (self.globals.items, 0..) |global, i| { const sym = self.getSymbol(global); if (sym.undf()) continue; if (sym.n_desc == N_DEAD) continue; @@ -3313,7 +3313,7 @@ pub const Zld = struct { } scoped_log.debug("imports:", .{}); - for (self.globals.items) |global, i| { + for (self.globals.items, 0..) |global, i| { const sym = self.getSymbol(global); if (!sym.undf()) continue; if (sym.n_desc == N_DEAD) continue; @@ -3328,7 +3328,7 @@ pub const Zld = struct { } scoped_log.debug("GOT entries:", .{}); - for (self.got_entries.items) |entry, i| { + for (self.got_entries.items, 0..) |entry, i| { const atom_sym = entry.getAtomSymbol(self); const target_sym = entry.getTargetSymbol(self); const target_sym_name = entry.getTargetSymbolName(self); @@ -3350,7 +3350,7 @@ pub const Zld = struct { } scoped_log.debug("__thread_ptrs entries:", .{}); - for (self.tlv_ptr_entries.items) |entry, i| { + for (self.tlv_ptr_entries.items, 0..) |entry, i| { const atom_sym = entry.getAtomSymbol(self); const target_sym = entry.getTargetSymbol(self); const target_sym_name = entry.getTargetSymbolName(self); @@ -3363,7 +3363,7 @@ pub const Zld = struct { } scoped_log.debug("stubs entries:", .{}); - for (self.stubs.items) |entry, i| { + for (self.stubs.items, 0..) |entry, i| { const atom_sym = entry.getAtomSymbol(self); const target_sym = entry.getTargetSymbol(self); const target_sym_name = entry.getTargetSymbolName(self); @@ -3376,9 +3376,9 @@ pub const Zld = struct { } scoped_log.debug("thunks:", .{}); - for (self.thunks.items) |thunk, i| { + for (self.thunks.items, 0..) |thunk, i| { scoped_log.debug(" thunk({d})", .{i}); - for (thunk.lookup.keys()) |target, j| { + for (thunk.lookup.keys(), 0..) |target, j| { const target_sym = self.getSymbol(target); const atom = self.getAtom(thunk.lookup.get(target).?); const atom_sym = self.getSymbol(atom.getSymbolWithLoc()); @@ -3395,7 +3395,7 @@ pub const Zld = struct { fn logAtoms(self: *Zld) void { log.debug("atoms:", .{}); const slice = self.sections.slice(); - for (slice.items(.first_atom_index)) |first_atom_index, sect_id| { + for (slice.items(.first_atom_index), 0..) |first_atom_index, sect_id| { var atom_index = first_atom_index; if (atom_index == 0) continue; @@ -3980,7 +3980,7 @@ pub fn linkWithZld(macho_file: *MachO, comp: *Compilation, prog_node: *std.Progr .unresolved = std.AutoArrayHashMap(u32, void).init(arena), }; - for (zld.objects.items) |_, object_id| { + for (zld.objects.items, 0..) |_, object_id| { try zld.resolveSymbolsInObject(@intCast(u32, object_id), &resolver); } @@ -4010,7 +4010,7 @@ pub fn linkWithZld(macho_file: *MachO, comp: *Compilation, prog_node: *std.Progr zld.entry_index = global_index; } - for (zld.objects.items) |*object, object_id| { + for (zld.objects.items, 0..) |*object, object_id| { try object.splitIntoAtoms(&zld, @intCast(u32, object_id)); } diff --git a/src/link/SpirV.zig b/src/link/SpirV.zig index 14a29e4498..2d74e404eb 100644 --- a/src/link/SpirV.zig +++ b/src/link/SpirV.zig @@ -298,7 +298,7 @@ fn cloneAir(air: Air, gpa: Allocator, air_arena: Allocator) !Air { const values = try gpa.alloc(Value, air.values.len); errdefer gpa.free(values); - for (values) |*value, i| { + for (values, 0..) |*value, i| { value.* = try air.values[i].copy(air_arena); } @@ -308,7 +308,7 @@ fn cloneAir(air: Air, gpa: Allocator, air_arena: Allocator) !Air { const air_tags = instructions.items(.tag); const air_datas = instructions.items(.data); - for (air_tags) |tag, i| { + for (air_tags, 0..) |tag, i| { switch (tag) { .alloc, .ret_ptr, .const_ty => air_datas[i].ty = try air_datas[i].ty.copy(air_arena), else => {}, diff --git a/src/link/Wasm.zig b/src/link/Wasm.zig index e62a2050d7..00a52177f7 100644 --- a/src/link/Wasm.zig +++ b/src/link/Wasm.zig @@ -590,7 +590,7 @@ fn resolveSymbolsInObject(wasm: *Wasm, object_index: u16) !void { const object: Object = wasm.objects.items[object_index]; log.debug("Resolving symbols in object: '{s}'", .{object.name}); - for (object.symtable) |symbol, i| { + for (object.symtable, 0..) |symbol, i| { const sym_index = @intCast(u32, i); const location: SymbolLoc = .{ .file = object_index, @@ -794,7 +794,7 @@ fn validateFeatures( // extract all the used, disallowed and required features from each // linked object file so we can test them. - for (wasm.objects.items) |object, object_index| { + for (wasm.objects.items, 0..) |object, object_index| { for (object.features) |feature| { const value = @intCast(u16, object_index) << 1 | @as(u1, 1); switch (feature.prefix) { @@ -815,7 +815,7 @@ fn validateFeatures( // when we infer the features, we allow each feature found in the 'used' set // and insert it into the 'allowed' set. When features are not inferred, // we validate that a used feature is allowed. - for (used) |used_set, used_index| { + for (used, 0..) |used_set, used_index| { const is_enabled = @truncate(u1, used_set) != 0; if (infer) { allowed[used_index] = is_enabled; @@ -849,7 +849,7 @@ fn validateFeatures( } // validate the linked object file has each required feature - for (required) |required_feature, feature_index| { + for (required, 0..) |required_feature, feature_index| { const is_required = @truncate(u1, required_feature) != 0; if (is_required and !object_used_features[feature_index]) { log.err("feature '{s}' is required but not used in linked object", .{(@intToEnum(types.Feature.Tag, feature_index)).toString()}); @@ -1818,7 +1818,7 @@ fn sortDataSegments(wasm: *Wasm) !void { /// original functions and their types. We need to know the type to verify it doesn't /// contain any parameters. fn setupInitFunctions(wasm: *Wasm) !void { - for (wasm.objects.items) |object, file_index| { + for (wasm.objects.items, 0..) |object, file_index| { try wasm.init_funcs.ensureUnusedCapacity(wasm.base.allocator, object.init_funcs.len); for (object.init_funcs) |init_func| { const symbol = object.symtable[init_func.symbol_index]; @@ -2717,7 +2717,7 @@ fn linkWithZld(wasm: *Wasm, comp: *Compilation, prog_node: *std.Progress.Node) l try wasm.parseInputFiles(positionals.items); - for (wasm.objects.items) |_, object_index| { + for (wasm.objects.items, 0..) |_, object_index| { try wasm.resolveSymbolsInObject(@intCast(u16, object_index)); } @@ -2732,7 +2732,7 @@ fn linkWithZld(wasm: *Wasm, comp: *Compilation, prog_node: *std.Progress.Node) l try wasm.setupStart(); try wasm.setupImports(); - for (wasm.objects.items) |*object, object_index| { + for (wasm.objects.items, 0..) |*object, object_index| { try object.parseIntoAtoms(gpa, @intCast(u16, object_index), wasm); } @@ -2801,7 +2801,7 @@ pub fn flushModule(wasm: *Wasm, comp: *Compilation, prog_node: *std.Progress.Nod try wasm.parseInputFiles(positionals.items); - for (wasm.objects.items) |_, object_index| { + for (wasm.objects.items, 0..) |_, object_index| { try wasm.resolveSymbolsInObject(@intCast(u16, object_index)); } @@ -2850,7 +2850,7 @@ pub fn flushModule(wasm: *Wasm, comp: *Compilation, prog_node: *std.Progress.Nod } } - for (wasm.objects.items) |*object, object_index| { + for (wasm.objects.items, 0..) |*object, object_index| { try object.parseIntoAtoms(wasm.base.allocator, @intCast(u16, object_index), wasm); } @@ -3362,7 +3362,7 @@ fn emitFeaturesSection(binary_bytes: *std.ArrayList(u8), enabled_features: []con try writer.writeAll(target_features); try leb.writeULEB128(writer, features_count); - for (enabled_features) |enabled, feature_index| { + for (enabled_features, 0..) |enabled, feature_index| { if (enabled) { const feature: types.Feature = .{ .prefix = .used, .tag = @intToEnum(types.Feature.Tag, feature_index) }; try leb.writeULEB128(writer, @enumToInt(feature.prefix)); diff --git a/src/link/Wasm/Object.zig b/src/link/Wasm/Object.zig index 7d4f6a4e36..82cab2528a 100644 --- a/src/link/Wasm/Object.zig +++ b/src/link/Wasm/Object.zig @@ -882,7 +882,7 @@ pub fn parseIntoAtoms(object: *Object, gpa: Allocator, object_index: u16, wasm_b list.deinit(); } else symbol_for_segment.deinit(); - for (object.symtable) |symbol, symbol_index| { + for (object.symtable, 0..) |symbol, symbol_index| { switch (symbol.tag) { .function, .data, .section => if (!symbol.isUndefined()) { const gop = try symbol_for_segment.getOrPut(.{ .kind = symbol.tag, .index = symbol.index }); @@ -896,7 +896,7 @@ pub fn parseIntoAtoms(object: *Object, gpa: Allocator, object_index: u16, wasm_b } } - for (object.relocatable_data) |relocatable_data, index| { + for (object.relocatable_data, 0..) |relocatable_data, index| { const final_index = (try wasm_bin.getMatchingSegment(object_index, @intCast(u32, index))) orelse { continue; // found unknown section, so skip parsing into atom as we do not know how to handle it. }; diff --git a/src/link/tapi.zig b/src/link/tapi.zig index 20a3a2493e..c97332984f 100644 --- a/src/link/tapi.zig +++ b/src/link/tapi.zig @@ -124,7 +124,7 @@ pub const LibStub = struct { log.debug("trying to parse as []TbdV4", .{}); const inner = lib_stub.yaml.parse([]TbdV4) catch break :err; var out = try lib_stub.yaml.arena.allocator().alloc(Tbd, inner.len); - for (inner) |doc, i| { + for (inner, 0..) |doc, i| { out[i] = .{ .v4 = doc }; } break :blk out; @@ -142,7 +142,7 @@ pub const LibStub = struct { log.debug("trying to parse as []TbdV3", .{}); const inner = lib_stub.yaml.parse([]TbdV3) catch break :err; var out = try lib_stub.yaml.arena.allocator().alloc(Tbd, inner.len); - for (inner) |doc, i| { + for (inner, 0..) |doc, i| { out[i] = .{ .v3 = doc }; } break :blk out; diff --git a/src/link/tapi/yaml.zig b/src/link/tapi/yaml.zig index 748f1c138f..d4136b35d3 100644 --- a/src/link/tapi/yaml.zig +++ b/src/link/tapi/yaml.zig @@ -84,7 +84,7 @@ pub const Value = union(ValueType) { const first = list[0]; if (first.is_compound()) { - for (list) |elem, i| { + for (list, 0..) |elem, i| { try writer.writeByteNTimes(' ', args.indentation); try writer.writeAll("- "); try elem.stringify(writer, .{ @@ -99,7 +99,7 @@ pub const Value = union(ValueType) { } try writer.writeAll("[ "); - for (list) |elem, i| { + for (list, 0..) |elem, i| { try elem.stringify(writer, args); if (i < len - 1) { try writer.writeAll(", "); @@ -112,7 +112,7 @@ pub const Value = union(ValueType) { const len = keys.len; if (len == 0) return; - for (keys) |key, i| { + for (keys, 0..) |key, i| { if (!args.should_inline_first_key or i != 0) { try writer.writeByteNTimes(' ', args.indentation); } @@ -292,7 +292,7 @@ pub const Yaml = struct { switch (@typeInfo(T)) { .Array => |info| { var parsed: T = undefined; - for (self.docs.items) |doc, i| { + for (self.docs.items, 0..) |doc, i| { parsed[i] = try self.parseValue(info.child, doc); } return parsed; @@ -301,7 +301,7 @@ pub const Yaml = struct { switch (info.size) { .Slice => { var parsed = try self.arena.allocator().alloc(info.child, self.docs.items.len); - for (self.docs.items) |doc, i| { + for (self.docs.items, 0..) |doc, i| { parsed[i] = try self.parseValue(info.child, doc); } return parsed; @@ -393,7 +393,7 @@ pub const Yaml = struct { } var parsed = try arena.alloc(ptr_info.child, value.list.len); - for (value.list) |elem, i| { + for (value.list, 0..) |elem, i| { parsed[i] = try self.parseValue(ptr_info.child, elem); } return parsed; @@ -407,7 +407,7 @@ pub const Yaml = struct { if (array_info.len != list.len) return error.ArraySizeMismatch; var parsed: T = undefined; - for (list) |elem, i| { + for (list, 0..) |elem, i| { parsed[i] = try self.parseValue(array_info.child, elem); } diff --git a/src/main.zig b/src/main.zig index a0cdfb36b6..e80be06a36 100644 --- a/src/main.zig +++ b/src/main.zig @@ -3684,10 +3684,10 @@ fn cmdTranslateC(comp: *Compilation, arena: Allocator, enable_cache: bool) !void const new_argv_with_sentinel = try arena.alloc(?[*:0]const u8, clang_args_len + 1); new_argv_with_sentinel[clang_args_len] = null; const new_argv = new_argv_with_sentinel[0..clang_args_len :null]; - for (argv.items) |arg, i| { + for (argv.items, 0..) |arg, i| { new_argv[i] = try arena.dupeZ(u8, arg); } - for (c_source_file.extra_flags) |arg, i| { + for (c_source_file.extra_flags, 0..) |arg, i| { new_argv[argv.items.len + i] = try arena.dupeZ(u8, arg); } @@ -4816,7 +4816,7 @@ extern "c" fn ZigLlvmAr_main(argc: c_int, argv: [*:null]?[*:0]u8) c_int; fn argsCopyZ(alloc: Allocator, args: []const []const u8) ![:null]?[*:0]u8 { var argv = try alloc.allocSentinel(?[*:0]u8, args.len, null); - for (args) |arg, i| { + for (args, 0..) |arg, i| { argv[i] = try alloc.dupeZ(u8, arg); // TODO If there was an argsAllocZ we could avoid this allocation. } return argv; diff --git a/src/mingw.zig b/src/mingw.zig index 4f94e26a98..9e9e180945 100644 --- a/src/mingw.zig +++ b/src/mingw.zig @@ -72,7 +72,7 @@ pub fn buildCRTFile(comp: *Compilation, crt_file: CRTFile) !void { .mingw32_lib => { var c_source_files: [mingw32_lib_deps.len]Compilation.CSourceFile = undefined; - for (mingw32_lib_deps) |dep, i| { + for (mingw32_lib_deps, 0..) |dep, i| { var args = std.ArrayList([]const u8).init(arena); try args.appendSlice(&[_][]const u8{ "-DHAVE_CONFIG_H", @@ -236,7 +236,7 @@ pub fn buildCRTFile(comp: *Compilation, crt_file: CRTFile) !void { }), }); var c_source_files: [uuid_src.len]Compilation.CSourceFile = undefined; - for (uuid_src) |dep, i| { + for (uuid_src, 0..) |dep, i| { c_source_files[i] = .{ .src_path = try comp.zig_lib_directory.join(arena, &[_][]const u8{ "libc", "mingw", "libsrc", dep, diff --git a/src/objcopy.zig b/src/objcopy.zig index 72ff8deafd..31e3d60d0d 100644 --- a/src/objcopy.zig +++ b/src/objcopy.zig @@ -312,7 +312,7 @@ const BinaryElfOutput = struct { std.sort.sort(*BinaryElfSegment, self.segments.items, {}, segmentSortCompare); - for (self.segments.items) |firstSegment, i| { + for (self.segments.items, 0..) |firstSegment, i| { if (firstSegment.firstSection) |firstSection| { const diff = firstSection.elfOffset - firstSegment.elfOffset; diff --git a/src/print_air.zig b/src/print_air.zig index 133e987285..447af5a9c7 100644 --- a/src/print_air.zig +++ b/src/print_air.zig @@ -68,7 +68,7 @@ const Writer = struct { indent: usize, fn writeAllConstants(w: *Writer, s: anytype) @TypeOf(s).Error!void { - for (w.air.instructions.items(.tag)) |tag, i| { + for (w.air.instructions.items(.tag), 0..) |tag, i| { const inst = @intCast(u32, i); switch (tag) { .constant, .const_ty => { @@ -388,7 +388,7 @@ const Writer = struct { try w.writeType(s, vector_ty); try s.writeAll(", ["); - for (elements) |elem, i| { + for (elements, 0..) |elem, i| { if (i != 0) try s.writeAll(", "); try w.writeOperand(s, inst, i, elem); } @@ -682,7 +682,7 @@ const Writer = struct { const args = @ptrCast([]const Air.Inst.Ref, w.air.extra[extra.end..][0..extra.data.args_len]); try w.writeOperand(s, inst, 0, pl_op.operand); try s.writeAll(", ["); - for (args) |arg, i| { + for (args, 0..) |arg, i| { if (i != 0) try s.writeAll(", "); try w.writeOperand(s, inst, 1 + i, arg); } @@ -743,7 +743,7 @@ const Writer = struct { if (liveness_condbr.then_deaths.len != 0) { try s.writeByteNTimes(' ', w.indent); - for (liveness_condbr.then_deaths) |operand, i| { + for (liveness_condbr.then_deaths, 0..) |operand, i| { if (i != 0) try s.writeAll(" "); try s.print("%{d}!", .{operand}); } @@ -756,7 +756,7 @@ const Writer = struct { if (liveness_condbr.else_deaths.len != 0) { try s.writeByteNTimes(' ', w.indent); - for (liveness_condbr.else_deaths) |operand, i| { + for (liveness_condbr.else_deaths, 0..) |operand, i| { if (i != 0) try s.writeAll(" "); try s.print("%{d}!", .{operand}); } @@ -790,7 +790,7 @@ const Writer = struct { extra_index = case.end + case.data.items_len + case_body.len; try s.writeAll(", ["); - for (items) |item, item_i| { + for (items, 0..) |item, item_i| { if (item_i != 0) try s.writeAll(", "); try w.writeInstRef(s, item, false); } @@ -800,7 +800,7 @@ const Writer = struct { const deaths = liveness.deaths[case_i]; if (deaths.len != 0) { try s.writeByteNTimes(' ', w.indent); - for (deaths) |operand, i| { + for (deaths, 0..) |operand, i| { if (i != 0) try s.writeAll(" "); try s.print("%{d}!", .{operand}); } @@ -821,7 +821,7 @@ const Writer = struct { const deaths = liveness.deaths[liveness.deaths.len - 1]; if (deaths.len != 0) { try s.writeByteNTimes(' ', w.indent); - for (deaths) |operand, i| { + for (deaths, 0..) |operand, i| { if (i != 0) try s.writeAll(" "); try s.print("%{d}!", .{operand}); } diff --git a/src/print_targets.zig b/src/print_targets.zig index 64149d6fba..19518a3368 100644 --- a/src/print_targets.zig +++ b/src/print_targets.zig @@ -99,7 +99,7 @@ pub fn cmdTargets( for (arch.allCpuModels()) |model| { try jws.objectField(model.name); try jws.beginArray(); - for (arch.allFeaturesList()) |feature, i| { + for (arch.allFeaturesList(), 0..) |feature, i| { if (model.features.isEnabled(@intCast(u8, i))) { try jws.arrayElem(); try jws.emitString(feature.name); @@ -145,7 +145,7 @@ pub fn cmdTargets( { try jws.objectField("features"); try jws.beginArray(); - for (native_target.cpu.arch.allFeaturesList()) |feature, i_usize| { + for (native_target.cpu.arch.allFeaturesList(), 0..) |feature, i_usize| { const index = @intCast(Target.Cpu.Feature.Set.Index, i_usize); if (cpu.features.isEnabled(index)) { try jws.arrayElem(); diff --git a/src/print_zir.zig b/src/print_zir.zig index e5ce9321f5..1674bd136e 100644 --- a/src/print_zir.zig +++ b/src/print_zir.zig @@ -875,7 +875,7 @@ const Writer = struct { const extra = self.code.extraData(Zir.Inst.MultiOp, inst_data.payload_index); const args = self.code.refSlice(extra.end, extra.data.operands_len); try stream.writeAll("{"); - for (args) |arg, i| { + for (args, 0..) |arg, i| { if (i != 0) try stream.writeAll(", "); try self.writeInstRef(stream, arg); } @@ -1068,7 +1068,7 @@ const Writer = struct { const src = LazySrcLoc.nodeOffset(extra.data.src_node); const operands = self.code.refSlice(extra.end, extended.small); - for (operands) |operand, i| { + for (operands, 0..) |operand, i| { if (i != 0) try stream.writeAll(", "); try self.writeInstRef(stream, operand); } @@ -1392,7 +1392,7 @@ const Writer = struct { try stream.writeAll("{\n"); self.indent += 2; - for (fields) |field, i| { + for (fields, 0..) |field, i| { try self.writeDocComment(stream, field.doc_comment_index); try stream.writeByteNTimes(' ', self.indent); try self.writeFlag(stream, "comptime ", field.is_comptime); @@ -1959,7 +1959,7 @@ const Writer = struct { try stream.writeByteNTimes(' ', self.indent); if (is_inline) try stream.writeAll("inline "); - for (items) |item_ref, item_i| { + for (items, 0..) |item_ref, item_i| { if (item_i != 0) try stream.writeAll(", "); try self.writeInstRef(stream, item_ref); } @@ -2275,7 +2275,7 @@ const Writer = struct { try self.writeBracedBody(stream, body); try stream.writeAll(",["); const args = self.code.refSlice(extra.end, extended.small); - for (args) |arg, i| { + for (args, 0..) |arg, i| { if (i != 0) try stream.writeAll(", "); try self.writeInstRef(stream, arg); } @@ -2334,7 +2334,7 @@ const Writer = struct { try self.writeInstRef(stream, args[0]); try stream.writeAll("{"); - for (args[1..]) |arg, i| { + for (args[1..], 0..) |arg, i| { if (i != 0) try stream.writeAll(", "); try self.writeInstRef(stream, arg); } @@ -2349,7 +2349,7 @@ const Writer = struct { const args = self.code.refSlice(extra.end, extra.data.operands_len); try stream.writeAll("{"); - for (args) |arg, i| { + for (args, 0..) |arg, i| { if (i != 0) try stream.writeAll(", "); try self.writeInstRef(stream, arg); } @@ -2369,7 +2369,7 @@ const Writer = struct { try stream.writeAll(", "); try stream.writeAll(".{"); - for (elems) |elem, i| { + for (elems, 0..) |elem, i| { if (i != 0) try stream.writeAll(", "); try self.writeInstRef(stream, elem); } diff --git a/src/register_manager.zig b/src/register_manager.zig index 0ab9d103b8..2fe0cd2b6a 100644 --- a/src/register_manager.zig +++ b/src/register_manager.zig @@ -82,7 +82,7 @@ pub fn RegisterManager( comptime registers: []const Register, reg: Register, ) ?std.math.IntFittingRange(0, registers.len - 1) { - inline for (tracked_registers) |cpreg, i| { + inline for (tracked_registers, 0..) |cpreg, i| { if (reg.id() == cpreg.id()) return i; } return null; @@ -153,7 +153,7 @@ pub fn RegisterManager( regs: [count]Register, ) [count]RegisterLock { var buf: [count]RegisterLock = undefined; - for (regs) |reg, i| { + for (regs, 0..) |reg, i| { buf[i] = self.lockRegAssumeUnused(reg); } return buf; @@ -207,7 +207,7 @@ pub fn RegisterManager( } assert(i == count); - for (regs) |reg, j| { + for (regs, 0..) |reg, j| { self.markRegAllocated(reg); if (insts[j]) |inst| { diff --git a/src/test.zig b/src/test.zig index b25a6c1e78..acc1bcdc1f 100644 --- a/src/test.zig +++ b/src/test.zig @@ -664,7 +664,7 @@ pub const TestContext = struct { errors: []const []const u8, ) void { var array = self.updates.allocator.alloc(ErrorMsg, errors.len) catch @panic("out of memory"); - for (errors) |err_msg_line, i| { + for (errors, 0..) |err_msg_line, i| { if (std.mem.startsWith(u8, err_msg_line, "error: ")) { array[i] = .{ .plain = .{ @@ -1558,7 +1558,7 @@ pub const TestContext = struct { }); defer comp.destroy(); - update: for (case.updates.items) |update, update_index| { + update: for (case.updates.items, 0..) |update, update_index| { var update_node = root_node.start(update.name, 3); update_node.activate(); defer update_node.end(); @@ -1631,7 +1631,7 @@ pub const TestContext = struct { defer notes_to_check.deinit(); for (actual_errors.list) |actual_error| { - for (case_error_list) |case_msg, i| { + for (case_error_list, 0..) |case_msg, i| { if (handled_errors[i]) continue; const ex_tag: std.meta.Tag(@TypeOf(case_msg)) = case_msg; @@ -1702,7 +1702,7 @@ pub const TestContext = struct { } } while (notes_to_check.popOrNull()) |note| { - for (case_error_list) |case_msg, i| { + for (case_error_list, 0..) |case_msg, i| { const ex_tag: std.meta.Tag(@TypeOf(case_msg)) = case_msg; switch (note.*) { .src => |actual_msg| { @@ -1752,7 +1752,7 @@ pub const TestContext = struct { } } - for (handled_errors) |handled, i| { + for (handled_errors, 0..) |handled, i| { if (!handled) { print( "\nExpected error not found:\n{s}\n{}\n{s}", diff --git a/src/translate_c.zig b/src/translate_c.zig index 7fd4b93821..5b2b1c2df5 100644 --- a/src/translate_c.zig +++ b/src/translate_c.zig @@ -1423,7 +1423,7 @@ fn transConvertVectorExpr( } const init_list = try c.arena.alloc(Node, num_elements); - for (init_list) |*init, init_index| { + for (init_list, 0..) |*init, init_index| { const tmp_decl = block_scope.statements.items[init_index]; const name = tmp_decl.castTag(.var_simple).?.data.name; init.* = try Tag.identifier.create(c.arena, name); @@ -1454,7 +1454,7 @@ fn makeShuffleMask(c: *Context, scope: *Scope, expr: *const clang.ShuffleVectorE const init_list = try c.arena.alloc(Node, mask_len); - for (init_list) |*init, i| { + for (init_list, 0..) |*init, i| { const index_expr = try transExprCoercing(c, scope, expr.getExpr(@intCast(c_uint, i + 2)), .used); const converted_index = try Tag.helpers_shuffle_vector_index.create(c.arena, .{ .lhs = index_expr, .rhs = vector_len }); init.* = converted_index; @@ -2686,7 +2686,7 @@ fn transInitListExprArray( const init_node = if (init_count != 0) blk: { const init_list = try c.arena.alloc(Node, init_count); - for (init_list) |*init, i| { + for (init_list, 0..) |*init, i| { const elem_expr = expr.getInit(@intCast(c_uint, i)); init.* = try transExprCoercing(c, scope, elem_expr, .used); } @@ -2760,7 +2760,7 @@ fn transInitListExprVector( } const init_list = try c.arena.alloc(Node, num_elements); - for (init_list) |*init, init_index| { + for (init_list, 0..) |*init, init_index| { if (init_index < init_count) { const tmp_decl = block_scope.statements.items[init_index]; const name = tmp_decl.castTag(.var_simple).?.data.name; @@ -4649,7 +4649,7 @@ fn transCreateNodeMacroFn(c: *Context, name: []const u8, ref: Node, proto_alias: const unwrap_expr = try Tag.unwrap.create(c.arena, init); const args = try c.arena.alloc(Node, fn_params.items.len); - for (fn_params.items) |param, i| { + for (fn_params.items, 0..) |param, i| { args[i] = try Tag.identifier.create(c.arena, param.name.?); } const call_expr = try Tag.call.create(c.arena, .{ @@ -5293,7 +5293,7 @@ const PatternList = struct { fn init(allocator: mem.Allocator) Error!PatternList { const patterns = try allocator.alloc(Pattern, templates.len); - for (templates) |template, i| { + for (templates, 0..) |template, i| { try patterns[i].init(allocator, template); } return PatternList{ .patterns = patterns }; @@ -5778,7 +5778,7 @@ fn parseCNumLit(c: *Context, m: *MacroCtx) ParseError!Node { fn zigifyEscapeSequences(ctx: *Context, m: *MacroCtx) ![]const u8 { var source = m.slice(); - for (source) |c, i| { + for (source, 0..) |c, i| { if (c == '\"' or c == '\'') { source = source[i..]; break; diff --git a/src/translate_c/ast.zig b/src/translate_c/ast.zig index 78175a611b..81a19eb39d 100644 --- a/src/translate_c/ast.zig +++ b/src/translate_c/ast.zig @@ -1765,7 +1765,7 @@ fn renderNode(c: *Context, node: Node) Allocator.Error!NodeIndex { _ = try c.addToken(.l_brace, "{"); var cases = try c.gpa.alloc(NodeIndex, payload.cases.len); defer c.gpa.free(cases); - for (payload.cases) |case, i| { + for (payload.cases, 0..) |case, i| { cases[i] = try renderNode(c, case); _ = try c.addToken(.comma, ","); } @@ -1800,7 +1800,7 @@ fn renderNode(c: *Context, node: Node) Allocator.Error!NodeIndex { var items = try c.gpa.alloc(NodeIndex, std.math.max(payload.cases.len, 1)); defer c.gpa.free(items); items[0] = 0; - for (payload.cases) |item, i| { + for (payload.cases, 0..) |item, i| { if (i != 0) _ = try c.addToken(.comma, ","); items[i] = try renderNode(c, item); } @@ -1950,7 +1950,7 @@ fn renderNode(c: *Context, node: Node) Allocator.Error!NodeIndex { defer c.gpa.free(inits); inits[0] = 0; inits[1] = 0; - for (payload) |init, i| { + for (payload, 0..) |init, i| { if (i != 0) _ = try c.addToken(.comma, ","); inits[i] = try renderNode(c, init); } @@ -1984,7 +1984,7 @@ fn renderNode(c: *Context, node: Node) Allocator.Error!NodeIndex { defer c.gpa.free(inits); inits[0] = 0; inits[1] = 0; - for (payload) |init, i| { + for (payload, 0..) |init, i| { _ = try c.addToken(.period, "."); _ = try c.addIdentifier(init.name); _ = try c.addToken(.equal, "="); @@ -2022,7 +2022,7 @@ fn renderNode(c: *Context, node: Node) Allocator.Error!NodeIndex { var inits = try c.gpa.alloc(NodeIndex, std.math.max(payload.inits.len, 1)); defer c.gpa.free(inits); inits[0] = 0; - for (payload.inits) |init, i| { + for (payload.inits, 0..) |init, i| { _ = try c.addToken(.period, "."); _ = try c.addIdentifier(init.name); _ = try c.addToken(.equal, "="); @@ -2080,7 +2080,7 @@ fn renderRecord(c: *Context, node: Node) !NodeIndex { members[0] = 0; members[1] = 0; - for (payload.fields) |field, i| { + for (payload.fields, 0..) |field, i| { const name_tok = try c.addTokenFmt(.identifier, "{s}", .{std.zig.fmtId(field.name)}); _ = try c.addToken(.colon, ":"); const type_expr = try renderNode(c, field.type); @@ -2116,10 +2116,10 @@ fn renderRecord(c: *Context, node: Node) !NodeIndex { }); _ = try c.addToken(.comma, ","); } - for (payload.variables) |variable, i| { + for (payload.variables, 0..) |variable, i| { members[payload.fields.len + i] = try renderNode(c, variable); } - for (payload.functions) |function, i| { + for (payload.functions, 0..) |function, i| { members[payload.fields.len + num_vars + i] = try renderNode(c, function); } _ = try c.addToken(.r_brace, "}"); @@ -2171,7 +2171,7 @@ fn renderArrayInit(c: *Context, lhs: NodeIndex, inits: []const Node) !NodeIndex var rendered = try c.gpa.alloc(NodeIndex, std.math.max(inits.len, 1)); defer c.gpa.free(rendered); rendered[0] = 0; - for (inits) |init, i| { + for (inits, 0..) |init, i| { rendered[i] = try renderNode(c, init); _ = try c.addToken(.comma, ","); } @@ -2539,7 +2539,7 @@ fn renderCall(c: *Context, lhs: NodeIndex, args: []const Node) !NodeIndex { var rendered = try c.gpa.alloc(NodeIndex, args.len); defer c.gpa.free(rendered); - for (args) |arg, i| { + for (args, 0..) |arg, i| { if (i != 0) _ = try c.addToken(.comma, ","); rendered[i] = try renderNode(c, arg); } @@ -2879,7 +2879,7 @@ fn renderParams(c: *Context, params: []Payload.Param, is_var_args: bool) !std.Ar var rendered = try std.ArrayList(NodeIndex).initCapacity(c.gpa, std.math.max(params.len, 1)); errdefer rendered.deinit(); - for (params) |param, i| { + for (params, 0..) |param, i| { if (i != 0) _ = try c.addToken(.comma, ","); if (param.is_noalias) _ = try c.addToken(.keyword_noalias, "noalias"); if (param.name) |some| { diff --git a/src/type.zig b/src/type.zig index 6226a7f2f7..ec4db8689f 100644 --- a/src/type.zig +++ b/src/type.zig @@ -628,7 +628,7 @@ pub const Type = extern union { const a_set = a.errorSetNames(); const b_set = b.errorSetNames(); if (a_set.len != b_set.len) return false; - for (a_set) |a_item, i| { + for (a_set, 0..) |a_item, i| { const b_item = b_set[i]; if (!std.mem.eql(u8, a_item, b_item)) return false; } @@ -675,7 +675,7 @@ pub const Type = extern union { if (a_info.param_types.len != b_info.param_types.len) return false; - for (a_info.param_types) |a_param_ty, i| { + for (a_info.param_types, 0..) |a_param_ty, i| { const b_param_ty = b_info.param_types[i]; if (a_info.comptime_params[i] != b_info.comptime_params[i]) return false; @@ -824,12 +824,12 @@ pub const Type = extern union { if (a_tuple.types.len != b_tuple.types.len) return false; - for (a_tuple.types) |a_ty, i| { + for (a_tuple.types, 0..) |a_ty, i| { const b_ty = b_tuple.types[i]; if (!eql(a_ty, b_ty, mod)) return false; } - for (a_tuple.values) |a_val, i| { + for (a_tuple.values, 0..) |a_val, i| { const ty = a_tuple.types[i]; const b_val = b_tuple.values[i]; if (a_val.tag() == .unreachable_value) { @@ -855,17 +855,17 @@ pub const Type = extern union { if (a_struct_obj.types.len != b_struct_obj.types.len) return false; - for (a_struct_obj.names) |a_name, i| { + for (a_struct_obj.names, 0..) |a_name, i| { const b_name = b_struct_obj.names[i]; if (!std.mem.eql(u8, a_name, b_name)) return false; } - for (a_struct_obj.types) |a_ty, i| { + for (a_struct_obj.types, 0..) |a_ty, i| { const b_ty = b_struct_obj.types[i]; if (!eql(a_ty, b_ty, mod)) return false; } - for (a_struct_obj.values) |a_val, i| { + for (a_struct_obj.values, 0..) |a_val, i| { const ty = a_struct_obj.types[i]; const b_val = b_struct_obj.values[i]; if (a_val.tag() == .unreachable_value) { @@ -1073,7 +1073,7 @@ pub const Type = extern union { std.hash.autoHash(hasher, fn_info.noalias_bits); std.hash.autoHash(hasher, fn_info.param_types.len); - for (fn_info.param_types) |param_ty, i| { + for (fn_info.param_types, 0..) |param_ty, i| { std.hash.autoHash(hasher, fn_info.paramIsComptime(i)); if (param_ty.tag() == .generic_poison) continue; hashWithHasher(param_ty, hasher, mod); @@ -1175,7 +1175,7 @@ pub const Type = extern union { const tuple = ty.tupleFields(); std.hash.autoHash(hasher, tuple.types.len); - for (tuple.types) |field_ty, i| { + for (tuple.types, 0..) |field_ty, i| { hashWithHasher(field_ty, hasher, mod); const field_val = tuple.values[i]; if (field_val.tag() == .unreachable_value) continue; @@ -1187,7 +1187,7 @@ pub const Type = extern union { std.hash.autoHash(hasher, std.builtin.TypeId.Struct); std.hash.autoHash(hasher, struct_obj.types.len); - for (struct_obj.types) |field_ty, i| { + for (struct_obj.types, 0..) |field_ty, i| { const field_name = struct_obj.names[i]; const field_val = struct_obj.values[i]; hasher.update(field_name); @@ -1403,10 +1403,10 @@ pub const Type = extern union { const payload = self.castTag(.tuple).?.data; const types = try allocator.alloc(Type, payload.types.len); const values = try allocator.alloc(Value, payload.values.len); - for (payload.types) |ty, i| { + for (payload.types, 0..) |ty, i| { types[i] = try ty.copy(allocator); } - for (payload.values) |val, i| { + for (payload.values, 0..) |val, i| { values[i] = try val.copy(allocator); } return Tag.tuple.create(allocator, .{ @@ -1419,13 +1419,13 @@ pub const Type = extern union { const names = try allocator.alloc([]const u8, payload.names.len); const types = try allocator.alloc(Type, payload.types.len); const values = try allocator.alloc(Value, payload.values.len); - for (payload.names) |name, i| { + for (payload.names, 0..) |name, i| { names[i] = try allocator.dupe(u8, name); } - for (payload.types) |ty, i| { + for (payload.types, 0..) |ty, i| { types[i] = try ty.copy(allocator); } - for (payload.values) |val, i| { + for (payload.values, 0..) |val, i| { values[i] = try val.copy(allocator); } return Tag.anon_struct.create(allocator, .{ @@ -1437,7 +1437,7 @@ pub const Type = extern union { .function => { const payload = self.castTag(.function).?.data; const param_types = try allocator.alloc(Type, payload.param_types.len); - for (payload.param_types) |param_ty, i| { + for (payload.param_types, 0..) |param_ty, i| { param_types[i] = try param_ty.copy(allocator); } const other_comptime_params = payload.comptime_params[0..payload.param_types.len]; @@ -1678,7 +1678,7 @@ pub const Type = extern union { .function => { const payload = ty.castTag(.function).?.data; try writer.writeAll("fn("); - for (payload.param_types) |param_type, i| { + for (payload.param_types, 0..) |param_type, i| { if (i != 0) try writer.writeAll(", "); try param_type.dump("", .{}, writer); } @@ -1739,7 +1739,7 @@ pub const Type = extern union { .tuple => { const tuple = ty.castTag(.tuple).?.data; try writer.writeAll("tuple{"); - for (tuple.types) |field_ty, i| { + for (tuple.types, 0..) |field_ty, i| { if (i != 0) try writer.writeAll(", "); const val = tuple.values[i]; if (val.tag() != .unreachable_value) { @@ -1756,7 +1756,7 @@ pub const Type = extern union { .anon_struct => { const anon_struct = ty.castTag(.anon_struct).?.data; try writer.writeAll("struct{"); - for (anon_struct.types) |field_ty, i| { + for (anon_struct.types, 0..) |field_ty, i| { if (i != 0) try writer.writeAll(", "); const val = anon_struct.values[i]; if (val.tag() != .unreachable_value) { @@ -1892,7 +1892,7 @@ pub const Type = extern union { .error_set => { const names = ty.castTag(.error_set).?.data.names.keys(); try writer.writeAll("error{"); - for (names) |name, i| { + for (names, 0..) |name, i| { if (i != 0) try writer.writeByte(','); try writer.writeAll(name); } @@ -1908,7 +1908,7 @@ pub const Type = extern union { .error_set_merged => { const names = ty.castTag(.error_set_merged).?.data.keys(); try writer.writeAll("error{"); - for (names) |name, i| { + for (names, 0..) |name, i| { if (i != 0) try writer.writeByte(','); try writer.writeAll(name); } @@ -2063,7 +2063,7 @@ pub const Type = extern union { .function => { const fn_info = ty.fnInfo(); try writer.writeAll("fn("); - for (fn_info.param_types) |param_ty, i| { + for (fn_info.param_types, 0..) |param_ty, i| { if (i != 0) try writer.writeAll(", "); if (fn_info.paramIsComptime(i)) { try writer.writeAll("comptime "); @@ -2137,7 +2137,7 @@ pub const Type = extern union { const tuple = ty.castTag(.tuple).?.data; try writer.writeAll("tuple{"); - for (tuple.types) |field_ty, i| { + for (tuple.types, 0..) |field_ty, i| { if (i != 0) try writer.writeAll(", "); const val = tuple.values[i]; if (val.tag() != .unreachable_value) { @@ -2154,7 +2154,7 @@ pub const Type = extern union { const anon_struct = ty.castTag(.anon_struct).?.data; try writer.writeAll("struct{"); - for (anon_struct.types) |field_ty, i| { + for (anon_struct.types, 0..) |field_ty, i| { if (i != 0) try writer.writeAll(", "); const val = anon_struct.values[i]; if (val.tag() != .unreachable_value) { @@ -2253,7 +2253,7 @@ pub const Type = extern union { .error_set => { const names = ty.castTag(.error_set).?.data.names.keys(); try writer.writeAll("error{"); - for (names) |name, i| { + for (names, 0..) |name, i| { if (i != 0) try writer.writeByte(','); try writer.writeAll(name); } @@ -2266,7 +2266,7 @@ pub const Type = extern union { .error_set_merged => { const names = ty.castTag(.error_set_merged).?.data.keys(); try writer.writeAll("error{"); - for (names) |name, i| { + for (names, 0..) |name, i| { if (i != 0) try writer.writeByte(','); try writer.writeAll(name); } @@ -2568,7 +2568,7 @@ pub const Type = extern union { .tuple, .anon_struct => { const tuple = ty.tupleFields(); - for (tuple.types) |field_ty, i| { + for (tuple.types, 0..) |field_ty, i| { const val = tuple.values[i]; if (val.tag() != .unreachable_value) continue; // comptime field if (try field_ty.hasRuntimeBitsAdvanced(ignore_comptime_only, strat)) return true; @@ -3125,7 +3125,7 @@ pub const Type = extern union { .tuple, .anon_struct => { const tuple = ty.tupleFields(); var big_align: u32 = 0; - for (tuple.types) |field_ty, i| { + for (tuple.types, 0..) |field_ty, i| { const val = tuple.values[i]; if (val.tag() != .unreachable_value) continue; // comptime field if (!(field_ty.hasRuntimeBits())) continue; @@ -5044,7 +5044,7 @@ pub const Type = extern union { .tuple, .anon_struct => { const tuple = ty.tupleFields(); - for (tuple.values) |val, i| { + for (tuple.values, 0..) |val, i| { const is_comptime = val.tag() != .unreachable_value; if (is_comptime) continue; if (tuple.types[i].onePossibleValue() != null) continue; @@ -5256,7 +5256,7 @@ pub const Type = extern union { .tuple, .anon_struct => { const tuple = ty.tupleFields(); - for (tuple.types) |field_ty, i| { + for (tuple.types, 0..) |field_ty, i| { const have_comptime_val = tuple.values[i].tag() != .unreachable_value; if (!have_comptime_val and field_ty.comptimeOnly()) return true; } @@ -5753,7 +5753,7 @@ pub const Type = extern union { var bit_offset: u16 = undefined; var elem_size_bits: u16 = undefined; var running_bits: u16 = 0; - for (struct_obj.fields.values()) |f, i| { + for (struct_obj.fields.values(), 0..) |f, i| { if (!f.ty.hasRuntimeBits()) continue; const field_bits = @intCast(u16, f.ty.bitSize(target)); @@ -5834,7 +5834,7 @@ pub const Type = extern union { var offset: u64 = 0; var big_align: u32 = 0; - for (tuple.types) |field_ty, i| { + for (tuple.types, 0..) |field_ty, i| { const field_val = tuple.values[i]; if (field_val.tag() != .unreachable_value or !field_ty.hasRuntimeBits()) { // comptime field diff --git a/src/value.zig b/src/value.zig index 98842a4ca7..0d80bf7927 100644 --- a/src/value.zig +++ b/src/value.zig @@ -614,7 +614,7 @@ pub const Value = extern union { .base = payload.base, .data = try arena.alloc(Value, payload.data.len), }; - for (new_payload.data) |*elem, i| { + for (new_payload.data, 0..) |*elem, i| { elem.* = try payload.data[i].copy(arena); } return Value{ .ptr_otherwise = &new_payload.base }; @@ -891,7 +891,7 @@ pub const Value = extern union { fn arrayToAllocatedBytes(val: Value, len: u64, allocator: Allocator, mod: *Module) ![]u8 { const result = try allocator.alloc(u8, @intCast(usize, len)); var elem_value_buf: ElemValueBuffer = undefined; - for (result) |*elem, i| { + for (result, 0..) |*elem, i| { const elem_val = val.elemValueBuffer(mod, i, &elem_value_buf); elem.* = @intCast(u8, elem_val.toUnsignedInt(mod.getTarget())); } @@ -1282,7 +1282,7 @@ pub const Value = extern union { .int_i64 => @bitCast(u64, int_val.castTag(.int_i64).?.data), else => unreachable, }; - for (buffer[0..byte_count]) |_, i| switch (endian) { + for (buffer[0..byte_count], 0..) |_, i| switch (endian) { .Little => buffer[i] = @truncate(u8, (int >> @intCast(u6, (8 * i)))), .Big => buffer[byte_count - i - 1] = @truncate(u8, (int >> @intCast(u6, (8 * i)))), }; @@ -1324,7 +1324,7 @@ pub const Value = extern union { .Extern => { const fields = ty.structFields().values(); const field_vals = val.castTag(.aggregate).?.data; - for (fields) |field, i| { + for (fields, 0..) |field, i| { const off = @intCast(usize, ty.structFieldOffset(i, target)); writeToMemory(field_vals[i], field.ty, mod, buffer[off..]); } @@ -1431,7 +1431,7 @@ pub const Value = extern union { var bits: u16 = 0; const fields = ty.structFields().values(); const field_vals = val.castTag(.aggregate).?.data; - for (fields) |field, i| { + for (fields, 0..) |field, i| { const field_bits = @intCast(u16, field.ty.bitSize(target)); field_vals[i].writeToPackedMemory(field.ty, mod, buffer, bit_offset + bits); bits += field_bits; @@ -1529,7 +1529,7 @@ pub const Value = extern union { .Extern => { const fields = ty.structFields().values(); const field_vals = try arena.alloc(Value, fields.len); - for (fields) |field, i| { + for (fields, 0..) |field, i| { const off = @intCast(usize, ty.structFieldOffset(i, target)); const sz = @intCast(usize, ty.structFieldType(i).abiSize(target)); field_vals[i] = try readFromMemory(field.ty, mod, buffer[off..(off + sz)], arena); @@ -1617,7 +1617,7 @@ pub const Value = extern union { var bits: u16 = 0; const elem_bit_size = @intCast(u16, elem_ty.bitSize(target)); - for (elems) |_, i| { + for (elems, 0..) |_, i| { // On big-endian systems, LLVM reverses the element order of vectors by default const tgt_elem_i = if (endian == .Big) elems.len - i - 1 else i; elems[tgt_elem_i] = try readFromPackedMemory(elem_ty, mod, buffer, bit_offset + bits, arena); @@ -1632,7 +1632,7 @@ pub const Value = extern union { var bits: u16 = 0; const fields = ty.structFields().values(); const field_vals = try arena.alloc(Value, fields.len); - for (fields) |field, i| { + for (fields, 0..) |field, i| { const field_bits = @intCast(u16, field.ty.bitSize(target)); field_vals[i] = try readFromPackedMemory(field.ty, mod, buffer, bit_offset + bits, arena); bits += field_bits; @@ -2259,7 +2259,7 @@ pub const Value = extern union { if (ty.isSimpleTupleOrAnonStruct()) { const types = ty.tupleFields().types; assert(types.len == a_field_vals.len); - for (types) |field_ty, i| { + for (types, 0..) |field_ty, i| { if (!(try eqlAdvanced(a_field_vals[i], field_ty, b_field_vals[i], field_ty, mod, opt_sema))) { return false; } @@ -2270,7 +2270,7 @@ pub const Value = extern union { if (ty.zigTypeTag() == .Struct) { const fields = ty.structFields().values(); assert(fields.len == a_field_vals.len); - for (fields) |field, i| { + for (fields, 0..) |field, i| { if (!(try eqlAdvanced(a_field_vals[i], field.ty, b_field_vals[i], field.ty, mod, opt_sema))) { return false; } @@ -2279,7 +2279,7 @@ pub const Value = extern union { } const elem_ty = ty.childType(); - for (a_field_vals) |a_elem, i| { + for (a_field_vals, 0..) |a_elem, i| { const b_elem = b_field_vals[i]; if (!(try eqlAdvanced(a_elem, elem_ty, b_elem, elem_ty, mod, opt_sema))) { @@ -2526,7 +2526,7 @@ pub const Value = extern union { .empty_struct_value => {}, .aggregate => { const field_values = val.castTag(.aggregate).?.data; - for (field_values) |field_val, i| { + for (field_values, 0..) |field_val, i| { const field_ty = ty.structFieldType(i); field_val.hash(field_ty, hasher, mod); } @@ -3228,7 +3228,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (int_ty.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, int_ty.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var buf: Value.ElemValueBuffer = undefined; const elem_val = val.elemValueBuffer(mod, i, &buf); scalar.* = try intToFloatScalar(elem_val, arena, float_ty.scalarType(), target, opt_sema); @@ -3341,7 +3341,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (ty.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, ty.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(mod, i, &lhs_buf); @@ -3390,7 +3390,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (ty.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, ty.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(mod, i, &lhs_buf); @@ -3439,7 +3439,7 @@ pub const Value = extern union { if (ty.zigTypeTag() == .Vector) { const overflowed_data = try arena.alloc(Value, ty.vectorLen()); const result_data = try arena.alloc(Value, ty.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(mod, i, &lhs_buf); @@ -3501,7 +3501,7 @@ pub const Value = extern union { ) !Value { if (ty.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, ty.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(mod, i, &lhs_buf); @@ -3546,7 +3546,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (ty.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, ty.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(mod, i, &lhs_buf); @@ -3622,7 +3622,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (ty.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, ty.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var buf: Value.ElemValueBuffer = undefined; const elem_val = val.elemValueBuffer(mod, i, &buf); scalar.* = try bitwiseNotScalar(elem_val, ty.scalarType(), arena, target); @@ -3661,7 +3661,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (ty.zigTypeTag() == .Vector) { const result_data = try allocator.alloc(Value, ty.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(mod, i, &lhs_buf); @@ -3697,7 +3697,7 @@ pub const Value = extern union { pub fn bitwiseNand(lhs: Value, rhs: Value, ty: Type, arena: Allocator, mod: *Module) !Value { if (ty.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, ty.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(mod, i, &lhs_buf); @@ -3728,7 +3728,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (ty.zigTypeTag() == .Vector) { const result_data = try allocator.alloc(Value, ty.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(mod, i, &lhs_buf); @@ -3764,7 +3764,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (ty.zigTypeTag() == .Vector) { const result_data = try allocator.alloc(Value, ty.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(mod, i, &lhs_buf); @@ -3800,7 +3800,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (ty.zigTypeTag() == .Vector) { const result_data = try allocator.alloc(Value, ty.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(mod, i, &lhs_buf); @@ -3841,7 +3841,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (ty.zigTypeTag() == .Vector) { const result_data = try allocator.alloc(Value, ty.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(mod, i, &lhs_buf); @@ -3882,7 +3882,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (ty.zigTypeTag() == .Vector) { const result_data = try allocator.alloc(Value, ty.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(mod, i, &lhs_buf); @@ -3958,7 +3958,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (float_type.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, float_type.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(mod, i, &lhs_buf); @@ -4005,7 +4005,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (float_type.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, float_type.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(mod, i, &lhs_buf); @@ -4052,7 +4052,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (ty.zigTypeTag() == .Vector) { const result_data = try allocator.alloc(Value, ty.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(mod, i, &lhs_buf); @@ -4089,7 +4089,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (ty.zigTypeTag() == .Vector) { const result_data = try allocator.alloc(Value, ty.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var buf: Value.ElemValueBuffer = undefined; const elem_val = val.elemValueBuffer(mod, i, &buf); scalar.* = try intTruncScalar(elem_val, allocator, signedness, bits, target); @@ -4111,7 +4111,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (ty.zigTypeTag() == .Vector) { const result_data = try allocator.alloc(Value, ty.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var buf: Value.ElemValueBuffer = undefined; const elem_val = val.elemValueBuffer(mod, i, &buf); var bits_buf: Value.ElemValueBuffer = undefined; @@ -4143,7 +4143,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (ty.zigTypeTag() == .Vector) { const result_data = try allocator.alloc(Value, ty.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(mod, i, &lhs_buf); @@ -4185,7 +4185,7 @@ pub const Value = extern union { if (ty.zigTypeTag() == .Vector) { const overflowed_data = try allocator.alloc(Value, ty.vectorLen()); const result_data = try allocator.alloc(Value, ty.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(mod, i, &lhs_buf); @@ -4243,7 +4243,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (ty.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, ty.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(mod, i, &lhs_buf); @@ -4291,7 +4291,7 @@ pub const Value = extern union { ) !Value { if (ty.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, ty.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(mod, i, &lhs_buf); @@ -4320,7 +4320,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (ty.zigTypeTag() == .Vector) { const result_data = try allocator.alloc(Value, ty.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(mod, i, &lhs_buf); @@ -4372,7 +4372,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (float_type.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, float_type.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var buf: Value.ElemValueBuffer = undefined; const elem_val = val.elemValueBuffer(mod, i, &buf); scalar.* = try floatNegScalar(elem_val, float_type.scalarType(), arena, target); @@ -4408,7 +4408,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (float_type.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, float_type.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(mod, i, &lhs_buf); @@ -4467,7 +4467,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (float_type.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, float_type.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(mod, i, &lhs_buf); @@ -4526,7 +4526,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (float_type.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, float_type.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(mod, i, &lhs_buf); @@ -4585,7 +4585,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (float_type.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, float_type.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var lhs_buf: Value.ElemValueBuffer = undefined; var rhs_buf: Value.ElemValueBuffer = undefined; const lhs_elem = lhs.elemValueBuffer(mod, i, &lhs_buf); @@ -4638,7 +4638,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (float_type.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, float_type.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var buf: Value.ElemValueBuffer = undefined; const elem_val = val.elemValueBuffer(mod, i, &buf); scalar.* = try sqrtScalar(elem_val, float_type.scalarType(), arena, target); @@ -4678,7 +4678,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (float_type.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, float_type.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var buf: Value.ElemValueBuffer = undefined; const elem_val = val.elemValueBuffer(mod, i, &buf); scalar.* = try sinScalar(elem_val, float_type.scalarType(), arena, target); @@ -4718,7 +4718,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (float_type.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, float_type.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var buf: Value.ElemValueBuffer = undefined; const elem_val = val.elemValueBuffer(mod, i, &buf); scalar.* = try cosScalar(elem_val, float_type.scalarType(), arena, target); @@ -4758,7 +4758,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (float_type.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, float_type.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var buf: Value.ElemValueBuffer = undefined; const elem_val = val.elemValueBuffer(mod, i, &buf); scalar.* = try tanScalar(elem_val, float_type.scalarType(), arena, target); @@ -4798,7 +4798,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (float_type.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, float_type.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var buf: Value.ElemValueBuffer = undefined; const elem_val = val.elemValueBuffer(mod, i, &buf); scalar.* = try expScalar(elem_val, float_type.scalarType(), arena, target); @@ -4838,7 +4838,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (float_type.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, float_type.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var buf: Value.ElemValueBuffer = undefined; const elem_val = val.elemValueBuffer(mod, i, &buf); scalar.* = try exp2Scalar(elem_val, float_type.scalarType(), arena, target); @@ -4878,7 +4878,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (float_type.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, float_type.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var buf: Value.ElemValueBuffer = undefined; const elem_val = val.elemValueBuffer(mod, i, &buf); scalar.* = try logScalar(elem_val, float_type.scalarType(), arena, target); @@ -4918,7 +4918,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (float_type.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, float_type.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var buf: Value.ElemValueBuffer = undefined; const elem_val = val.elemValueBuffer(mod, i, &buf); scalar.* = try log2Scalar(elem_val, float_type.scalarType(), arena, target); @@ -4958,7 +4958,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (float_type.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, float_type.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var buf: Value.ElemValueBuffer = undefined; const elem_val = val.elemValueBuffer(mod, i, &buf); scalar.* = try log10Scalar(elem_val, float_type.scalarType(), arena, target); @@ -4998,7 +4998,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (float_type.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, float_type.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var buf: Value.ElemValueBuffer = undefined; const elem_val = val.elemValueBuffer(mod, i, &buf); scalar.* = try fabsScalar(elem_val, float_type.scalarType(), arena, target); @@ -5038,7 +5038,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (float_type.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, float_type.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var buf: Value.ElemValueBuffer = undefined; const elem_val = val.elemValueBuffer(mod, i, &buf); scalar.* = try floorScalar(elem_val, float_type.scalarType(), arena, target); @@ -5078,7 +5078,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (float_type.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, float_type.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var buf: Value.ElemValueBuffer = undefined; const elem_val = val.elemValueBuffer(mod, i, &buf); scalar.* = try ceilScalar(elem_val, float_type.scalarType(), arena, target); @@ -5118,7 +5118,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (float_type.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, float_type.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var buf: Value.ElemValueBuffer = undefined; const elem_val = val.elemValueBuffer(mod, i, &buf); scalar.* = try roundScalar(elem_val, float_type.scalarType(), arena, target); @@ -5158,7 +5158,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (float_type.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, float_type.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var buf: Value.ElemValueBuffer = undefined; const elem_val = val.elemValueBuffer(mod, i, &buf); scalar.* = try truncScalar(elem_val, float_type.scalarType(), arena, target); @@ -5205,7 +5205,7 @@ pub const Value = extern union { const target = mod.getTarget(); if (float_type.zigTypeTag() == .Vector) { const result_data = try arena.alloc(Value, float_type.vectorLen()); - for (result_data) |*scalar, i| { + for (result_data, 0..) |*scalar, i| { var mulend1_buf: Value.ElemValueBuffer = undefined; const mulend1_elem = mulend1.elemValueBuffer(mod, i, &mulend1_buf); var mulend2_buf: Value.ElemValueBuffer = undefined; diff --git a/tools/gen_spirv_spec.zig b/tools/gen_spirv_spec.zig index 426276122c..31dbbb1911 100644 --- a/tools/gen_spirv_spec.zig +++ b/tools/gen_spirv_spec.zig @@ -251,7 +251,7 @@ fn renderEnumerant(writer: anytype, enumerant: g.Enumerant) !void { .int => |int| try writer.print("{}", .{int}), } try writer.writeAll(", .parameters = &[_]OperandKind{"); - for (enumerant.parameters) |param, i| { + for (enumerant.parameters, 0..) |param, i| { if (i != 0) try writer.writeAll(", "); // Note, param.quantifier will always be one. @@ -272,7 +272,7 @@ fn renderOpcodes( var aliases = std.ArrayList(struct { inst: usize, alias: usize }).init(allocator); try aliases.ensureTotalCapacity(instructions.len); - for (instructions) |inst, i| { + for (instructions, 0..) |inst, i| { if (std.mem.eql(u8, inst.class.?, "@exclude")) { continue; } @@ -397,7 +397,7 @@ fn renderValueEnum( var aliases = std.ArrayList(struct { enumerant: usize, alias: usize }).init(allocator); try aliases.ensureTotalCapacity(enumerants.len); - for (enumerants) |enumerant, i| { + for (enumerants, 0..) |enumerant, i| { const result = enum_map.getOrPutAssumeCapacity(enumerant.value.int); if (!result.found_existing) { result.value_ptr.* = i; @@ -468,7 +468,7 @@ fn renderBitEnum( var aliases = std.ArrayList(struct { flag: usize, alias: u5 }).init(allocator); try aliases.ensureTotalCapacity(enumerants.len); - for (enumerants) |enumerant, i| { + for (enumerants, 0..) |enumerant, i| { if (enumerant.value != .bitflag) return error.InvalidRegistry; const value = try parseHexInt(enumerant.value.bitflag); if (value == 0) { @@ -494,7 +494,7 @@ fn renderBitEnum( } } - for (flags_by_bitpos) |maybe_flag_index, bitpos| { + for (flags_by_bitpos, 0..) |maybe_flag_index, bitpos| { if (maybe_flag_index) |flag_index| { try writer.print("{}", .{std.zig.fmtId(enumerants[flag_index].enumerant)}); } else { @@ -521,7 +521,7 @@ fn renderBitEnum( try writer.print("\npub const Extended = struct {{\n", .{}); - for (flags_by_bitpos) |maybe_flag_index, bitpos| { + for (flags_by_bitpos, 0..) |maybe_flag_index, bitpos| { const flag_index = maybe_flag_index orelse { try writer.print("_reserved_bit_{}: bool = false,\n", .{bitpos}); continue; @@ -570,7 +570,7 @@ fn renderOperand( try writer.writeAll("struct{"); - for (parameters) |param, j| { + for (parameters, 0..) |param, j| { if (j != 0) { try writer.writeAll(", "); } @@ -642,7 +642,7 @@ fn renderFieldName(writer: anytype, operands: []const g.Operand, field_index: us // Translate to snake case. name_buffer.len = 0; - for (operand.kind) |c, i| { + for (operand.kind, 0..) |c, i| { switch (c) { 'a'...'z', '0'...'9' => try name_buffer.append(c), 'A'...'Z' => if (i > 0 and std.ascii.isLower(operand.kind[i - 1])) { @@ -658,7 +658,7 @@ fn renderFieldName(writer: anytype, operands: []const g.Operand, field_index: us // For fields derived from type name, there could be any amount. // Simply check against all other fields, and if another similar one exists, add a number. - const need_extra_index = for (operands) |other_operand, i| { + const need_extra_index = for (operands, 0..) |other_operand, i| { if (i != field_index and std.mem.eql(u8, operand.kind, other_operand.kind)) { break true; } diff --git a/tools/gen_stubs.zig b/tools/gen_stubs.zig index 89d7a40228..bc2637e197 100644 --- a/tools/gen_stubs.zig +++ b/tools/gen_stubs.zig @@ -45,7 +45,7 @@ const MultiSym = struct { visib: elf.STV, fn allPresent(ms: MultiSym) bool { - for (arches) |_, i| { + for (arches, 0..) |_, i| { if (!ms.present[i]) { return false; } @@ -65,7 +65,7 @@ const MultiSym = struct { fn commonSize(ms: MultiSym) ?u64 { var size: ?u64 = null; - for (arches) |_, i| { + for (arches, 0..) |_, i| { if (!ms.present[i]) continue; if (size) |s| { if (ms.size[i] != s) { @@ -80,7 +80,7 @@ const MultiSym = struct { fn commonBinding(ms: MultiSym) ?u4 { var binding: ?u4 = null; - for (arches) |_, i| { + for (arches, 0..) |_, i| { if (!ms.present[i]) continue; if (binding) |b| { if (ms.binding[i] != b) { @@ -268,7 +268,7 @@ pub fn main() !void { var prev_section: u16 = std.math.maxInt(u16); var prev_pp_state: enum { none, ptr32, special } = .none; - for (sym_table.values()) |multi_sym, sym_index| { + for (sym_table.values(), 0..) |multi_sym, sym_index| { const name = sym_table.keys()[sym_index]; if (multi_sym.section != prev_section) { @@ -309,7 +309,7 @@ pub fn main() !void { var first = true; try stdout.writeAll("#if "); - for (arches) |arch, i| { + for (arches, 0..) |arch, i| { if (multi_sym.present[i]) continue; if (!first) try stdout.writeAll(" && "); @@ -333,7 +333,7 @@ pub fn main() !void { } else if (multi_sym.isWeak64()) { try stdout.print("WEAK64 {s}\n", .{name}); } else { - for (arches) |arch, i| { + for (arches, 0..) |arch, i| { log.info("symbol '{s}' binding on {s}: {d}", .{ name, @tagName(arch), multi_sym.binding[i], }); @@ -355,7 +355,7 @@ pub fn main() !void { } else if (multi_sym.isPtr2Size()) { try stdout.print(".size {s}, PTR2_SIZE_BYTES\n", .{name}); } else { - for (arches) |arch, i| { + for (arches, 0..) |arch, i| { log.info("symbol '{s}' size on {s}: {d}", .{ name, @tagName(arch), multi_sym.size[i], }); @@ -415,7 +415,7 @@ fn parseElf(parse: Parse, comptime is_64: bool, comptime endian: builtin.Endian) // Find the offset of the dynamic symbol table. var dynsym_index: u16 = 0; - for (shdrs) |shdr, i| { + for (shdrs, 0..) |shdr, i| { const sh_name = try arena.dupe(u8, mem.sliceTo(shstrtab[s(shdr.sh_name)..], 0)); log.debug("found section: {s}", .{sh_name}); if (mem.eql(u8, sh_name, ".dynsym")) { @@ -566,7 +566,7 @@ fn archIndex(arch: std.Target.Cpu.Arch) u8 { } fn archSetName(arch_set: [arches.len]bool) []const u8 { - for (arches) |arch, i| { + for (arches, 0..) |arch, i| { if (arch_set[i]) { return @tagName(arch); } diff --git a/tools/update_clang_options.zig b/tools/update_clang_options.zig index 85558576df..a1719c5ab6 100644 --- a/tools/update_clang_options.zig +++ b/tools/update_clang_options.zig @@ -573,7 +573,7 @@ pub fn main() anyerror!void { const Feature = @field(cpu_targets, decl.name).Feature; const all_features = @field(cpu_targets, decl.name).all_features; - for (all_features) |feat, i| { + for (all_features, 0..) |feat, i| { const llvm_name = feat.llvm_name orelse continue; const zig_feat = @intToEnum(Feature, i); const zig_name = @tagName(zig_feat); diff --git a/tools/update_cpu_features.zig b/tools/update_cpu_features.zig index ee92d63227..3fef468380 100644 --- a/tools/update_cpu_features.zig +++ b/tools/update_cpu_features.zig @@ -899,7 +899,7 @@ pub fn main() anyerror!void { } } else { var threads = try arena.alloc(std.Thread, llvm_targets.len); - for (llvm_targets) |llvm_target, i| { + for (llvm_targets, 0..) |llvm_target, i| { const job = Job{ .llvm_tblgen_exe = llvm_tblgen_exe, .llvm_src_root = llvm_src_root, @@ -1226,7 +1226,7 @@ fn processOneTarget(job: Job) anyerror!void { } try w.writeAll( \\ const ti = @typeInfo(Feature); - \\ for (result) |*elem, i| { + \\ for (&result, 0..) |*elem, i| { \\ elem.index = i; \\ elem.name = ti.Enum.fields[i].name; \\ } diff --git a/tools/update_crc_catalog.zig b/tools/update_crc_catalog.zig index 8182e8d810..034b7afc9d 100644 --- a/tools/update_crc_catalog.zig +++ b/tools/update_crc_catalog.zig @@ -116,7 +116,7 @@ pub fn main() anyerror!void { defer buf.deinit(); var prev: u8 = 0; - for (snakecase) |c, i| { + for (snakecase, 0..) |c, i| { if (c == '_') { // do nothing } else if (i == 0) { diff --git a/tools/update_spirv_features.zig b/tools/update_spirv_features.zig index a7eb3c18f9..bb859ed5b4 100644 --- a/tools/update_spirv_features.zig +++ b/tools/update_spirv_features.zig @@ -130,7 +130,7 @@ pub fn main() !void { \\ ); - for (versions) |ver, i| { + for (versions, 0..) |ver, i| { try w.print( \\ result[@enumToInt(Feature.v{0}_{1})] = .{{ \\ .llvm_name = null, @@ -203,7 +203,7 @@ pub fn main() !void { try w.writeAll( \\ const ti = @typeInfo(Feature); - \\ for (result) |*elem, i| { + \\ for (&result, 0..) |*elem, i| { \\ elem.index = i; \\ elem.name = ti.Enum.fields[i].name; \\ } From a005b5f198827b15ee069839fb9dbb80e66daa06 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Sat, 18 Feb 2023 09:24:25 -0700 Subject: [PATCH 15/36] add zig fmt test for upgrading for loop syntax --- lib/std/zig/parser_test.zig | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/lib/std/zig/parser_test.zig b/lib/std/zig/parser_test.zig index 4346ee6286..1afc0e2e18 100644 --- a/lib/std/zig/parser_test.zig +++ b/lib/std/zig/parser_test.zig @@ -1,3 +1,23 @@ +// TODO: remove this after zig 0.11.0 is released +test "zig fmt: transform old for loop syntax to new" { + try testTransform( + \\fn foo() void { + \\ for (a) |b, i| { + \\ _ = b; _ = i; + \\ } + \\} + \\ + , + \\fn foo() void { + \\ for (a, 0..) |b, i| { + \\ _ = b; + \\ _ = i; + \\ } + \\} + \\ + ); +} + test "zig fmt: tuple struct" { try testCanonical( \\const T = struct { From 552e8095ae62654d0ba7dffbc8e0e1dfb6499c9d Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Sat, 18 Feb 2023 10:26:46 -0700 Subject: [PATCH 16/36] update docgen to new for loop syntax --- doc/docgen.zig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/docgen.zig b/doc/docgen.zig index 82fafe2b64..fae513f8c3 100644 --- a/doc/docgen.zig +++ b/doc/docgen.zig @@ -239,7 +239,7 @@ const Tokenizer = struct { .line_start = 0, .line_end = 0, }; - for (self.buffer) |c, i| { + for (self.buffer, 0..) |c, i| { if (i == token.start) { loc.line_end = i; while (loc.line_end < self.buffer.len and self.buffer[loc.line_end] != '\n') : (loc.line_end += 1) {} From f2a6a1756bd3d3e284410c001ee997c4d12a260b Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Sat, 18 Feb 2023 10:27:08 -0700 Subject: [PATCH 17/36] Sema: fix for loops with comptime-known int ranges --- src/Sema.zig | 6 +++++- test/behavior/for.zig | 12 ++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/src/Sema.zig b/src/Sema.zig index fde9072d71..980aee720b 100644 --- a/src/Sema.zig +++ b/src/Sema.zig @@ -3924,7 +3924,11 @@ fn zirForLen(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air. const object_ty = sema.typeOf(object); // Each arg could be an indexable, or a range, in which case the length // is passed directly as an integer. - const arg_len = if (object_ty.zigTypeTag() == .Int) object else l: { + const is_int = switch (object_ty.zigTypeTag()) { + .Int, .ComptimeInt => true, + else => false, + }; + const arg_len = if (is_int) object else l: { try checkIndexable(sema, block, src, object_ty); if (!object_ty.indexableHasLen()) continue; diff --git a/test/behavior/for.zig b/test/behavior/for.zig index c9ae2f4461..20788f7269 100644 --- a/test/behavior/for.zig +++ b/test/behavior/for.zig @@ -249,3 +249,15 @@ test "for loop with else branch" { try expect(q == 4); } } + +test "count over fixed range" { + if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO + + var sum: usize = 0; + for (0..6) |i| { + sum += i; + } + + try expect(sum == 15); +} From b6a5e52decf4494d9506caa929139b630ce08dea Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Sat, 18 Feb 2023 10:30:48 -0700 Subject: [PATCH 18/36] add passing for loop test: two counters --- test/behavior/for.zig | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/test/behavior/for.zig b/test/behavior/for.zig index 20788f7269..4704df8bd2 100644 --- a/test/behavior/for.zig +++ b/test/behavior/for.zig @@ -261,3 +261,16 @@ test "count over fixed range" { try expect(sum == 15); } + +test "two counters" { + if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO + + var sum: usize = 0; + for (0..10, 10..20) |i, j| { + sum += 1; + try expect(i + 10 == j); + } + + try expect(sum == 10); +} From 8c96d0dddddfb4cd597661ff47551fcaf67cbf39 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Sat, 18 Feb 2023 11:44:38 -0700 Subject: [PATCH 19/36] update test-cases for new for loop syntax --- test/cases/compile_errors/invalid_pointer_for_var_type.zig | 2 +- .../underscore_should_not_be_usable_inside_for.zig | 4 ++-- test/cases/variable_shadowing.3.zig | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/test/cases/compile_errors/invalid_pointer_for_var_type.zig b/test/cases/compile_errors/invalid_pointer_for_var_type.zig index ee193bab15..d94c7bd3b8 100644 --- a/test/cases/compile_errors/invalid_pointer_for_var_type.zig +++ b/test/cases/compile_errors/invalid_pointer_for_var_type.zig @@ -1,7 +1,7 @@ extern fn ext() usize; var bytes: [ext()]u8 = undefined; export fn f() void { - for (bytes) |*b, i| { + for (&bytes, 0..) |*b, i| { b.* = @as(u8, i); } } diff --git a/test/cases/compile_errors/underscore_should_not_be_usable_inside_for.zig b/test/cases/compile_errors/underscore_should_not_be_usable_inside_for.zig index 1fb79e11bd..b527d0d17e 100644 --- a/test/cases/compile_errors/underscore_should_not_be_usable_inside_for.zig +++ b/test/cases/compile_errors/underscore_should_not_be_usable_inside_for.zig @@ -1,6 +1,6 @@ export fn returns() void { - for ([_]void{}) |_, i| { - for ([_]void{}) |_, j| { + for ([_]void{}, 0..) |_, i| { + for ([_]void{}, 0..) |_, j| { return _; } } diff --git a/test/cases/variable_shadowing.3.zig b/test/cases/variable_shadowing.3.zig index 1e22ccf123..3d899e72cc 100644 --- a/test/cases/variable_shadowing.3.zig +++ b/test/cases/variable_shadowing.3.zig @@ -1,10 +1,10 @@ pub fn main() void { var i = 0; - for ("n") |_, i| { + for ("n", 0..) |_, i| { } } // error // -// :3:19: error: loop index capture 'i' shadows local variable from outer scope +// :3:24: error: capture 'i' shadows local variable from outer scope // :2:9: note: previous declaration here From 209e83f3950e8cb0daca389a4fa7cd79fe60394b Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Sat, 18 Feb 2023 11:56:05 -0700 Subject: [PATCH 20/36] AstGen: fix ZIR for for loops accessing instruction out of block --- src/AstGen.zig | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/AstGen.zig b/src/AstGen.zig index 9b96b16677..b4fda8e274 100644 --- a/src/AstGen.zig +++ b/src/AstGen.zig @@ -6413,6 +6413,8 @@ fn forExpr( defer loop_scope.unstack(); defer loop_scope.labeled_breaks.deinit(gpa); + const index = try loop_scope.addUnNode(.load, index_ptr, node); + var cond_scope = parent_gz.makeSubBlock(&loop_scope.base); defer cond_scope.unstack(); @@ -6420,7 +6422,6 @@ fn forExpr( if (!any_len_checks) { return astgen.failNode(node, "TODO: handle infinite for loop", .{}); } - const index = try cond_scope.addUnNode(.load, index_ptr, node); const cond = try cond_scope.addPlNode(.cmp_lt, node, Zir.Inst.Bin{ .lhs = index, .rhs = len, @@ -10695,7 +10696,6 @@ const Scope = struct { @"function parameter", @"local constant", @"local variable", - @"loop index capture", @"switch tag capture", capture, }; From b13745ac03195c87d9efec2b12f564d4d3cbd477 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Sat, 18 Feb 2023 11:56:32 -0700 Subject: [PATCH 21/36] disable failing x86_64 backend tests --- test/behavior/for.zig | 2 ++ test/cases/llvm/for_loop.zig | 2 +- test/tests.zig | 16 ++++++++-------- 3 files changed, 11 insertions(+), 9 deletions(-) diff --git a/test/behavior/for.zig b/test/behavior/for.zig index 4704df8bd2..67ea5df808 100644 --- a/test/behavior/for.zig +++ b/test/behavior/for.zig @@ -253,6 +253,7 @@ test "for loop with else branch" { test "count over fixed range" { if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO var sum: usize = 0; for (0..6) |i| { @@ -265,6 +266,7 @@ test "count over fixed range" { test "two counters" { if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO var sum: usize = 0; for (0..10, 10..20) |i, j| { diff --git a/test/cases/llvm/for_loop.zig b/test/cases/llvm/for_loop.zig index e7e701aafa..e48f2edd71 100644 --- a/test/cases/llvm/for_loop.zig +++ b/test/cases/llvm/for_loop.zig @@ -11,6 +11,6 @@ pub fn main() void { } // run -// backend=stage2,llvm +// backend=llvm // target=x86_64-linux,x86_64-macos // diff --git a/test/tests.zig b/test/tests.zig index 035311372f..851de9f2a6 100644 --- a/test/tests.zig +++ b/test/tests.zig @@ -58,14 +58,14 @@ const test_targets = blk: { .link_libc = true, .backend = .stage2_c, }, - .{ - .target = .{ - .cpu_arch = .x86_64, - .os_tag = .linux, - .abi = .none, - }, - .backend = .stage2_x86_64, - }, + //.{ + // .target = .{ + // .cpu_arch = .x86_64, + // .os_tag = .linux, + // .abi = .none, + // }, + // .backend = .stage2_x86_64, + //}, .{ .target = .{ .cpu_arch = .aarch64, From 22965e6fcbafbcba207a6da8eb493af2cf7ef924 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Sat, 18 Feb 2023 12:26:22 -0700 Subject: [PATCH 22/36] Sema: improve error message for mismatched for loop lengths --- src/Module.zig | 16 ++++++++++++++++ src/Sema.zig | 27 +++++++++++++++++++++++---- test/cases/compile_errors/for.zig | 13 +++++++++++++ 3 files changed, 52 insertions(+), 4 deletions(-) create mode 100644 test/cases/compile_errors/for.zig diff --git a/src/Module.zig b/src/Module.zig index 4feb04abdd..377ccd2441 100644 --- a/src/Module.zig +++ b/src/Module.zig @@ -2462,6 +2462,13 @@ pub const SrcLoc = struct { }; return nodeToSpan(tree, src_node); }, + .for_input => |for_input| { + const tree = try src_loc.file_scope.getTree(gpa); + const node = src_loc.declRelativeToNodeIndex(for_input.for_node_offset); + const for_full = tree.fullFor(node).?; + const src_node = for_full.ast.inputs[for_input.input_index]; + return nodeToSpan(tree, src_node); + }, .node_offset_bin_lhs => |node_off| { const tree = try src_loc.file_scope.getTree(gpa); const node = src_loc.declRelativeToNodeIndex(node_off); @@ -3114,6 +3121,14 @@ pub const LazySrcLoc = union(enum) { /// The source location points to the RHS of an assignment. /// The Decl is determined contextually. node_offset_store_operand: i32, + /// The source location points to a for loop input. + /// The Decl is determined contextually. + for_input: struct { + /// Points to the for loop AST node. + for_node_offset: i32, + /// Picks one of the inputs from the condition. + input_index: u32, + }, pub const nodeOffset = if (TracedOffset.want_tracing) nodeOffsetDebug else nodeOffsetRelease; @@ -3200,6 +3215,7 @@ pub const LazySrcLoc = union(enum) { .node_offset_init_ty, .node_offset_store_ptr, .node_offset_store_operand, + .for_input, => .{ .file_scope = decl.getFileScope(), .parent_decl_node = decl.src_node, diff --git a/src/Sema.zig b/src/Sema.zig index 980aee720b..5a185a709c 100644 --- a/src/Sema.zig +++ b/src/Sema.zig @@ -3910,14 +3910,15 @@ fn zirForLen(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air. var len: Air.Inst.Ref = .none; var len_val: ?Value = null; - var len_idx: usize = undefined; + var len_idx: u32 = undefined; var any_runtime = false; const runtime_arg_lens = try gpa.alloc(Air.Inst.Ref, args.len); defer gpa.free(runtime_arg_lens); // First pass to look for comptime values. - for (args, 0..) |zir_arg, i| { + for (args, 0..) |zir_arg, i_usize| { + const i = @intCast(u32, i_usize); runtime_arg_lens[i] = .none; if (zir_arg == .none) continue; const object = try sema.resolveInst(zir_arg); @@ -3941,8 +3942,26 @@ fn zirForLen(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air. if (try sema.resolveDefinedValue(block, src, arg_len)) |arg_val| { if (len_val) |v| { if (!(try sema.valuesEqual(arg_val, v, Type.usize))) { - // TODO error notes for each arg stating the differing values - return sema.fail(block, src, "non-matching for loop lengths", .{}); + const msg = msg: { + const msg = try sema.errMsg(block, src, "non-matching for loop lengths", .{}); + errdefer msg.destroy(gpa); + const a_src: LazySrcLoc = .{ .for_input = .{ + .for_node_offset = inst_data.src_node, + .input_index = len_idx, + } }; + const b_src: LazySrcLoc = .{ .for_input = .{ + .for_node_offset = inst_data.src_node, + .input_index = i, + } }; + try sema.errNote(block, a_src, msg, "length {} here", .{ + v.fmtValue(Type.usize, sema.mod), + }); + try sema.errNote(block, b_src, msg, "length {} here", .{ + arg_val.fmtValue(Type.usize, sema.mod), + }); + break :msg msg; + }; + return sema.failWithOwnedErrorMsg(msg); } } else { len = arg_len; diff --git a/test/cases/compile_errors/for.zig b/test/cases/compile_errors/for.zig new file mode 100644 index 0000000000..999782c991 --- /dev/null +++ b/test/cases/compile_errors/for.zig @@ -0,0 +1,13 @@ +export fn a() void { + for (0..10, 10..21) |i, j| { + _ = i; _ = j; + } +} + +// error +// backend=stage2 +// target=native +// +// :2:5: error: non-matching for loop lengths +// :2:11: note: length 10 here +// :2:19: note: length 11 here From bcb72401d3cf01c190a346af9c9d8eec4a334b45 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Sat, 18 Feb 2023 13:04:27 -0700 Subject: [PATCH 23/36] AstGen: add error for discard of unbounded counter --- src/AstGen.zig | 7 +- test/behavior/for.zig | 100 ++++++++++++++++++ .../compile_errors/for_discard_unbounded.zig | 10 ++ test/cases/compile_errors/for_empty.zig | 11 ++ .../compile_errors/for_extra_capture.zig | 12 +++ .../compile_errors/for_extra_condition.zig | 11 ++ 6 files changed, 150 insertions(+), 1 deletion(-) create mode 100644 test/cases/compile_errors/for_discard_unbounded.zig create mode 100644 test/cases/compile_errors/for_empty.zig create mode 100644 test/cases/compile_errors/for_extra_capture.zig create mode 100644 test/cases/compile_errors/for_extra_condition.zig diff --git a/src/AstGen.zig b/src/AstGen.zig index b4fda8e274..866dce02e5 100644 --- a/src/AstGen.zig +++ b/src/AstGen.zig @@ -6346,8 +6346,9 @@ fn forExpr( const i = @intCast(u32, i_usize); const capture_is_ref = token_tags[capture_token] == .asterisk; const ident_tok = capture_token + @boolToInt(capture_is_ref); + const is_discard = mem.eql(u8, tree.tokenSlice(ident_tok), "_"); - if (mem.eql(u8, tree.tokenSlice(ident_tok), "_") and capture_is_ref) { + if (is_discard and capture_is_ref) { return astgen.failTok(capture_token, "pointer modifier invalid on discard", .{}); } // Skip over the comma, and on to the next capture (or the ending pipe character). @@ -6367,6 +6368,10 @@ fn forExpr( else .none; + if (end_val == .none and is_discard) { + return astgen.failTok(ident_tok, "discard of unbounded counter", .{}); + } + const start_is_zero = nodeIsTriviallyZero(tree, start_node); const range_len = if (end_val == .none or start_is_zero) end_val diff --git a/test/behavior/for.zig b/test/behavior/for.zig index 67ea5df808..e3c4a8dcc0 100644 --- a/test/behavior/for.zig +++ b/test/behavior/for.zig @@ -276,3 +276,103 @@ test "two counters" { try expect(sum == 10); } + +test "1-based counter and ptr to array" { + if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO + + var ok: usize = 0; + + for (1..6, "hello") |i, b| { + if (i == 1) { + try expect(b == 'h'); + ok += 1; + } + if (i == 2) { + try expect(b == 'e'); + ok += 1; + } + if (i == 3) { + try expect(b == 'l'); + ok += 1; + } + if (i == 4) { + try expect(b == 'l'); + ok += 1; + } + if (i == 5) { + try expect(b == 'o'); + ok += 1; + } + } + + try expect(ok == 5); +} + +test "slice and two counters, one is offset and one is runtime" { + if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO + + const slice: []const u8 = "blah"; + var start: usize = 0; + + for (slice, start..4, 1..5) |a, b, c| { + if (a == 'b') { + try expect(b == 0); + try expect(c == 1); + } + if (a == 'l') { + try expect(b == 1); + try expect(c == 2); + } + if (a == 'a') { + try expect(b == 2); + try expect(c == 3); + } + if (a == 'h') { + try expect(b == 3); + try expect(c == 4); + } + } +} + +test "two slices, one captured by-ref" { + if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO + + var buf: [10]u8 = undefined; + const slice1: []const u8 = "blah"; + const slice2: []u8 = buf[0..4]; + + for (slice1, slice2) |a, *b| { + b.* = a; + } + + try expect(slice2[0] == 'b'); + try expect(slice2[1] == 'l'); + try expect(slice2[2] == 'a'); + try expect(slice2[3] == 'h'); +} + +test "raw pointer and slice" { + if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO + + var buf: [10]u8 = undefined; + const slice: []const u8 = "blah"; + const ptr: [*]u8 = buf[0..4]; + + for (ptr, slice) |*a, b| { + a.* = b; + } + + try expect(buf[0] == 'b'); + try expect(buf[1] == 'l'); + try expect(buf[2] == 'a'); + try expect(buf[3] == 'h'); +} diff --git a/test/cases/compile_errors/for_discard_unbounded.zig b/test/cases/compile_errors/for_discard_unbounded.zig new file mode 100644 index 0000000000..93434d0c21 --- /dev/null +++ b/test/cases/compile_errors/for_discard_unbounded.zig @@ -0,0 +1,10 @@ +export fn a() void { + for (0..10, 10..) |i, _| { + _ = i; + } +} +// error +// backend=stage2 +// target=native +// +// :2:27: error: discard of unbounded counter diff --git a/test/cases/compile_errors/for_empty.zig b/test/cases/compile_errors/for_empty.zig new file mode 100644 index 0000000000..a4cb5b3c4e --- /dev/null +++ b/test/cases/compile_errors/for_empty.zig @@ -0,0 +1,11 @@ +export fn b() void { + for () |i| { + _ = i; + } +} + +// error +// backend=stage2 +// target=native +// +// :2:10: error: expected expression, found ')' diff --git a/test/cases/compile_errors/for_extra_capture.zig b/test/cases/compile_errors/for_extra_capture.zig new file mode 100644 index 0000000000..a137b57d51 --- /dev/null +++ b/test/cases/compile_errors/for_extra_capture.zig @@ -0,0 +1,12 @@ +export fn b() void { + for (0..10) |i, j| { + _ = i; _ = j; + } +} + +// error +// backend=stage2 +// target=native +// +// :2:21: error: extra capture in for loop +// :2:21: note: run 'zig fmt' to upgrade your code automatically diff --git a/test/cases/compile_errors/for_extra_condition.zig b/test/cases/compile_errors/for_extra_condition.zig new file mode 100644 index 0000000000..11c013acee --- /dev/null +++ b/test/cases/compile_errors/for_extra_condition.zig @@ -0,0 +1,11 @@ +export fn a() void { + for (0..10, 10..20) |i| { + _ = i; + } +} + +// error +// backend=stage2 +// target=native +// +// :2:19: error: for input is not captured From 601db3981ce820cfbca6001cbdfa87e24aa35ab5 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Sat, 18 Feb 2023 13:22:29 -0700 Subject: [PATCH 24/36] fix source location for not-indexable for loop errors --- src/Sema.zig | 14 +++++++------- test/cases/compile_errors/for.zig | 9 +++++++++ 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/src/Sema.zig b/src/Sema.zig index 5a185a709c..7e8520eaa1 100644 --- a/src/Sema.zig +++ b/src/Sema.zig @@ -3929,11 +3929,15 @@ fn zirForLen(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air. .Int, .ComptimeInt => true, else => false, }; + const arg_src: LazySrcLoc = .{ .for_input = .{ + .for_node_offset = inst_data.src_node, + .input_index = i, + } }; const arg_len = if (is_int) object else l: { - try checkIndexable(sema, block, src, object_ty); + try checkIndexable(sema, block, arg_src, object_ty); if (!object_ty.indexableHasLen()) continue; - break :l try sema.fieldVal(block, src, object, "len", src); + break :l try sema.fieldVal(block, arg_src, object, "len", arg_src); }; if (len == .none) { len = arg_len; @@ -3949,14 +3953,10 @@ fn zirForLen(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air. .for_node_offset = inst_data.src_node, .input_index = len_idx, } }; - const b_src: LazySrcLoc = .{ .for_input = .{ - .for_node_offset = inst_data.src_node, - .input_index = i, - } }; try sema.errNote(block, a_src, msg, "length {} here", .{ v.fmtValue(Type.usize, sema.mod), }); - try sema.errNote(block, b_src, msg, "length {} here", .{ + try sema.errNote(block, arg_src, msg, "length {} here", .{ arg_val.fmtValue(Type.usize, sema.mod), }); break :msg msg; diff --git a/test/cases/compile_errors/for.zig b/test/cases/compile_errors/for.zig index 999782c991..abb87084b4 100644 --- a/test/cases/compile_errors/for.zig +++ b/test/cases/compile_errors/for.zig @@ -3,6 +3,13 @@ export fn a() void { _ = i; _ = j; } } +export fn b() void { + const s1 = "hello"; + const s2 = true; + for (s1, s2) |i, j| { + _ = i; _ = j; + } +} // error // backend=stage2 @@ -11,3 +18,5 @@ export fn a() void { // :2:5: error: non-matching for loop lengths // :2:11: note: length 10 here // :2:19: note: length 11 here +// :9:14: error: type 'bool' does not support indexing +// :9:14: note: for loop operand must be an array, slice, tuple, or vector From 4dd958d585256df3119d5617d22492f41ed02884 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Sat, 18 Feb 2023 14:10:56 -0700 Subject: [PATCH 25/36] improve error message for byref capture of byval array --- lib/std/crypto/aes/soft.zig | 2 +- src/Module.zig | 49 +++++++++++++++++++++++++++++++ src/Sema.zig | 22 ++++++++++---- test/cases/compile_errors/for.zig | 8 +++++ 4 files changed, 74 insertions(+), 7 deletions(-) diff --git a/lib/std/crypto/aes/soft.zig b/lib/std/crypto/aes/soft.zig index b57f1746dc..d8bd3d4ac0 100644 --- a/lib/std/crypto/aes/soft.zig +++ b/lib/std/crypto/aes/soft.zig @@ -420,7 +420,7 @@ const powx = init: { var array: [16]u8 = undefined; var value = 1; - for (array) |*power| { + for (&array) |*power| { power.* = value; value = mul(value, 2); } diff --git a/src/Module.zig b/src/Module.zig index 377ccd2441..76777532ab 100644 --- a/src/Module.zig +++ b/src/Module.zig @@ -2469,6 +2469,48 @@ pub const SrcLoc = struct { const src_node = for_full.ast.inputs[for_input.input_index]; return nodeToSpan(tree, src_node); }, + .for_capture_from_input => |node_off| { + const tree = try src_loc.file_scope.getTree(gpa); + const token_tags = tree.tokens.items(.tag); + const input_node = src_loc.declRelativeToNodeIndex(node_off); + // We have to actually linear scan the whole AST to find the for loop + // that contains this input. + const node_tags = tree.nodes.items(.tag); + for (node_tags, 0..) |node_tag, node_usize| { + const node = @intCast(Ast.Node.Index, node_usize); + switch (node_tag) { + .for_simple, .@"for" => { + const for_full = tree.fullFor(node).?; + for (for_full.ast.inputs, 0..) |input, input_index| { + if (input_node == input) { + var count = input_index; + var tok = for_full.payload_token; + while (true) { + switch (token_tags[tok]) { + .comma => { + count -= 1; + tok += 1; + }, + .identifier => { + if (count == 0) + return tokensToSpan(tree, tok, tok + 1, tok); + tok += 1; + }, + .asterisk => { + if (count == 0) + return tokensToSpan(tree, tok, tok + 2, tok); + tok += 1; + }, + else => unreachable, + } + } + } + } + }, + else => continue, + } + } else unreachable; + }, .node_offset_bin_lhs => |node_off| { const tree = try src_loc.file_scope.getTree(gpa); const node = src_loc.declRelativeToNodeIndex(node_off); @@ -3129,6 +3171,12 @@ pub const LazySrcLoc = union(enum) { /// Picks one of the inputs from the condition. input_index: u32, }, + /// The source location points to one of the captures of a for loop, found + /// by taking this AST node index offset from the containing + /// Decl AST node, which points to one of the input nodes of a for loop. + /// Next, navigate to the corresponding capture. + /// The Decl is determined contextually. + for_capture_from_input: i32, pub const nodeOffset = if (TracedOffset.want_tracing) nodeOffsetDebug else nodeOffsetRelease; @@ -3216,6 +3264,7 @@ pub const LazySrcLoc = union(enum) { .node_offset_store_ptr, .node_offset_store_operand, .for_input, + .for_capture_from_input, => .{ .file_scope = decl.getFileScope(), .parent_decl_node = decl.src_node, diff --git a/src/Sema.zig b/src/Sema.zig index 7e8520eaa1..07176ad1a0 100644 --- a/src/Sema.zig +++ b/src/Sema.zig @@ -9716,6 +9716,21 @@ fn zirElemPtr(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air const extra = sema.code.extraData(Zir.Inst.Bin, inst_data.payload_index).data; const array_ptr = try sema.resolveInst(extra.lhs); const elem_index = try sema.resolveInst(extra.rhs); + const indexable_ty = sema.typeOf(array_ptr); + if (indexable_ty.zigTypeTag() != .Pointer) { + const capture_src: LazySrcLoc = .{ .for_capture_from_input = inst_data.src_node }; + const msg = msg: { + const msg = try sema.errMsg(block, capture_src, "pointer capture of non pointer type '{}'", .{ + indexable_ty.fmt(sema.mod), + }); + errdefer msg.destroy(sema.gpa); + if (indexable_ty.zigTypeTag() == .Array) { + try sema.errNote(block, src, msg, "consider using '&' here", .{}); + } + break :msg msg; + }; + return sema.failWithOwnedErrorMsg(msg); + } return sema.elemPtrOneLayerOnly(block, src, array_ptr, elem_index, src, false); } @@ -24195,12 +24210,7 @@ fn elemPtrOneLayerOnly( }, } }, - else => { - // TODO add note pointing at corresponding for loop input and suggest using '&' - return sema.fail(block, indexable_src, "pointer capture of non pointer type '{}'", .{ - indexable_ty.fmt(sema.mod), - }); - }, + else => unreachable, } } diff --git a/test/cases/compile_errors/for.zig b/test/cases/compile_errors/for.zig index abb87084b4..dff46af085 100644 --- a/test/cases/compile_errors/for.zig +++ b/test/cases/compile_errors/for.zig @@ -10,6 +10,12 @@ export fn b() void { _ = i; _ = j; } } +export fn c() void { + var buf: [10]u8 = undefined; + for (buf) |*byte| { + _ = byte; + } +} // error // backend=stage2 @@ -20,3 +26,5 @@ export fn b() void { // :2:19: note: length 11 here // :9:14: error: type 'bool' does not support indexing // :9:14: note: for loop operand must be an array, slice, tuple, or vector +// :15:16: error: pointer capture of non pointer type '[10]u8' +// :15:10: note: consider using '&' here From 7abeb52abc9e9e38d8af4e17e25e89083cdec397 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Sat, 18 Feb 2023 14:55:02 -0700 Subject: [PATCH 26/36] langref: update to new for loop syntax --- doc/langref.html.in | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/doc/langref.html.in b/doc/langref.html.in index a74d06ccbf..3c2bdce671 100644 --- a/doc/langref.html.in +++ b/doc/langref.html.in @@ -2367,7 +2367,7 @@ test "iterate over an array" { var some_integers: [100]i32 = undefined; test "modify an array" { - for (some_integers) |*item, i| { + for (&some_integers, 0..) |*item, i| { item.* = @intCast(i32, i); } try expect(some_integers[10] == 10); @@ -2408,7 +2408,7 @@ comptime { // use compile-time code to initialize an array var fancy_array = init: { var initial_value: [10]Point = undefined; - for (initial_value) |*pt, i| { + for (&initial_value, 0..) |*pt, i| { pt.* = Point{ .x = @intCast(i32, i), .y = @intCast(i32, i) * 2, @@ -2461,8 +2461,8 @@ test "multidimensional arrays" { try expect(mat4x4[1][1] == 1.0); // Here we iterate with for loops. - for (mat4x4) |row, row_index| { - for (row) |cell, column_index| { + for (mat4x4, 0..) |row, row_index| { + for (row, 0..) |cell, column_index| { if (row_index == column_index) { try expect(cell == 1.0); } @@ -3579,7 +3579,7 @@ test "tuple" { } ++ .{false} ** 2; try expect(values[0] == 1234); try expect(values[4] == false); - inline for (values) |v, i| { + inline for (values, 0..) |v, i| { if (i != 2) continue; try expect(v); } @@ -4659,10 +4659,10 @@ test "for basics" { } try expect(sum == 20); - // To access the index of iteration, specify a second capture value. - // This is zero-indexed. + // To access the index of iteration, specify a second condition as well + // as a second capture value. var sum2: i32 = 0; - for (items) |_, i| { + for (items, 0..) |_, i| { try expect(@TypeOf(i) == usize); sum2 += @intCast(i32, i); } @@ -4674,7 +4674,7 @@ test "for reference" { // Iterate over the slice by reference by // specifying that the capture value is a pointer. - for (items) |*value| { + for (&items) |*value| { value.* += 1; } @@ -5659,7 +5659,7 @@ fn genFoos(allocator: Allocator, num: usize) ![]Foo { var foos = try allocator.alloc(Foo, num); errdefer allocator.free(foos); - for(foos) |*foo, i| { + for (foos, 0..) |*foo, i| { foo.data = try allocator.create(u32); // This errdefer does not last between iterations errdefer allocator.destroy(foo.data); @@ -5700,14 +5700,14 @@ fn genFoos(allocator: Allocator, num: usize) ![]Foo { // Used to track how many foos have been initialized // (including their data being allocated) var num_allocated: usize = 0; - errdefer for(foos[0..num_allocated]) |foo| { + errdefer for (foos[0..num_allocated]) |foo| { allocator.destroy(foo.data); }; - for(foos) |*foo, i| { + for (foos, 0..) |*foo, i| { foo.data = try allocator.create(u32); num_allocated += 1; - if(i >= 3) return error.TooManyFoos; + if (i >= 3) return error.TooManyFoos; foo.data.* = try getData(); } @@ -7265,7 +7265,7 @@ const Writer = struct { comptime var state = State.start; comptime var next_arg: usize = 0; - inline for (format) |c, i| { + inline for (format, 0..) |c, i| { switch (state) { State.start => switch (c) { '{' => { @@ -8629,7 +8629,7 @@ test "integer cast panic" { This function is a low level intrinsic with no safety mechanisms. Most code should not use this function, instead using something like this:

-
{#syntax#}for (source[0..byte_count]) |b, i| dest[i] = b;{#endsyntax#}
+
{#syntax#}for (dest, source[0..byte_count]) |*d, s| d.* = s;{#endsyntax#}

The optimizer is intelligent enough to turn the above snippet into a memcpy.

@@ -11116,7 +11116,7 @@ pub fn main() !void { const args = try std.process.argsAlloc(gpa); defer std.process.argsFree(gpa, args); - for (args) |arg, i| { + for (args, 0..) |arg, i| { std.debug.print("{}: {s}\n", .{ i, arg }); } } @@ -11142,7 +11142,7 @@ pub fn main() !void { const preopens = try fs.wasi.preopensAlloc(arena); - for (preopens.names) |preopen, i| { + for (preopens.names, 0..) |preopen, i| { std.debug.print("{}: {s}\n", .{ i, preopen }); } } From 74db8c2e8348cb7e9bf264294f73d26be956ea61 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Sat, 18 Feb 2023 15:34:00 -0700 Subject: [PATCH 27/36] omit safety checks for element access in for loops One of the main points of for loops is that you can safety check the length once, before entering the loop, and then safely assume that every element inside the loop is in bounds. In master branch, the safety checks are incorrectly intact even inside for loops. This commit fixes it. It's especially nice with multi-object loops because the number of elided checks is N * M where N is how many iterations and M is how many objects. --- src/Sema.zig | 101 ++++++++++++++++++++++-------------------- src/Zir.zig | 8 +++- test/behavior/for.zig | 2 + 3 files changed, 60 insertions(+), 51 deletions(-) diff --git a/src/Sema.zig b/src/Sema.zig index 07176ad1a0..5fa754d6cf 100644 --- a/src/Sema.zig +++ b/src/Sema.zig @@ -4544,7 +4544,7 @@ fn zirValidateArrayInit( // any ZIR instructions at comptime; we need to do that here. if (array_ty.sentinel()) |sentinel_val| { const array_len_ref = try sema.addIntUnsigned(Type.usize, array_len); - const sentinel_ptr = try sema.elemPtrArray(block, init_src, init_src, array_ptr, init_src, array_len_ref, true); + const sentinel_ptr = try sema.elemPtrArray(block, init_src, init_src, array_ptr, init_src, array_len_ref, true, true); const sentinel = try sema.addConstant(array_ty.childType(), sentinel_val); try sema.storePtr2(block, init_src, sentinel_ptr, init_src, sentinel, init_src, .store); } @@ -9691,7 +9691,7 @@ fn zirElemVal(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air const extra = sema.code.extraData(Zir.Inst.Bin, inst_data.payload_index).data; const array = try sema.resolveInst(extra.lhs); const elem_index = try sema.resolveInst(extra.rhs); - return sema.elemVal(block, src, array, elem_index, src); + return sema.elemVal(block, src, array, elem_index, src, false); } fn zirElemValNode(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air.Inst.Ref { @@ -9704,7 +9704,7 @@ fn zirElemValNode(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError const extra = sema.code.extraData(Zir.Inst.Bin, inst_data.payload_index).data; const array = try sema.resolveInst(extra.lhs); const elem_index = try sema.resolveInst(extra.rhs); - return sema.elemVal(block, src, array, elem_index, elem_index_src); + return sema.elemVal(block, src, array, elem_index, elem_index_src, true); } fn zirElemPtr(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air.Inst.Ref { @@ -9731,7 +9731,7 @@ fn zirElemPtr(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air }; return sema.failWithOwnedErrorMsg(msg); } - return sema.elemPtrOneLayerOnly(block, src, array_ptr, elem_index, src, false); + return sema.elemPtrOneLayerOnly(block, src, array_ptr, elem_index, src, false, false); } fn zirElemPtrNode(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air.Inst.Ref { @@ -9744,7 +9744,7 @@ fn zirElemPtrNode(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError const extra = sema.code.extraData(Zir.Inst.Bin, inst_data.payload_index).data; const array_ptr = try sema.resolveInst(extra.lhs); const elem_index = try sema.resolveInst(extra.rhs); - return sema.elemPtr(block, src, array_ptr, elem_index, elem_index_src, false); + return sema.elemPtr(block, src, array_ptr, elem_index, elem_index_src, false, true); } fn zirElemPtrImm(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air.Inst.Ref { @@ -9756,7 +9756,7 @@ fn zirElemPtrImm(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError! const extra = sema.code.extraData(Zir.Inst.ElemPtrImm, inst_data.payload_index).data; const array_ptr = try sema.resolveInst(extra.ptr); const elem_index = try sema.addIntUnsigned(Type.usize, extra.index); - return sema.elemPtr(block, src, array_ptr, elem_index, src, true); + return sema.elemPtr(block, src, array_ptr, elem_index, src, true, true); } fn zirSliceStart(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air.Inst.Ref { @@ -12521,14 +12521,14 @@ fn zirArrayCat(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai while (elem_i < lhs_len) : (elem_i += 1) { const elem_index = try sema.addIntUnsigned(Type.usize, elem_i); const elem_ptr = try block.addPtrElemPtr(alloc, elem_index, elem_ptr_ty); - const init = try sema.elemVal(block, lhs_src, lhs, elem_index, src); + const init = try sema.elemVal(block, lhs_src, lhs, elem_index, src, true); try sema.storePtr2(block, src, elem_ptr, src, init, lhs_src, .store); } while (elem_i < result_len) : (elem_i += 1) { const elem_index = try sema.addIntUnsigned(Type.usize, elem_i); const rhs_index = try sema.addIntUnsigned(Type.usize, elem_i - lhs_len); const elem_ptr = try block.addPtrElemPtr(alloc, elem_index, elem_ptr_ty); - const init = try sema.elemVal(block, rhs_src, rhs, rhs_index, src); + const init = try sema.elemVal(block, rhs_src, rhs, rhs_index, src, true); try sema.storePtr2(block, src, elem_ptr, src, init, rhs_src, .store); } if (res_sent_val) |sent_val| { @@ -12546,12 +12546,12 @@ fn zirArrayCat(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai var elem_i: usize = 0; while (elem_i < lhs_len) : (elem_i += 1) { const index = try sema.addIntUnsigned(Type.usize, elem_i); - const init = try sema.elemVal(block, lhs_src, lhs, index, src); + const init = try sema.elemVal(block, lhs_src, lhs, index, src, true); element_refs[elem_i] = try sema.coerce(block, resolved_elem_ty, init, lhs_src); } while (elem_i < result_len) : (elem_i += 1) { const index = try sema.addIntUnsigned(Type.usize, elem_i - lhs_len); - const init = try sema.elemVal(block, rhs_src, rhs, index, src); + const init = try sema.elemVal(block, rhs_src, rhs, index, src, true); element_refs[elem_i] = try sema.coerce(block, resolved_elem_ty, init, rhs_src); } } @@ -12771,7 +12771,7 @@ fn zirArrayMul(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai elem_i += 1; const lhs_index = try sema.addIntUnsigned(Type.usize, lhs_i); const elem_ptr = try block.addPtrElemPtr(alloc, elem_index, elem_ptr_ty); - const init = try sema.elemVal(block, lhs_src, lhs, lhs_index, src); + const init = try sema.elemVal(block, lhs_src, lhs, lhs_index, src, true); try sema.storePtr2(block, src, elem_ptr, src, init, lhs_src, .store); } } @@ -12791,7 +12791,7 @@ fn zirArrayMul(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai var lhs_i: usize = 0; while (lhs_i < lhs_len) : (lhs_i += 1) { const lhs_index = try sema.addIntUnsigned(Type.usize, lhs_i); - const init = try sema.elemVal(block, lhs_src, lhs, lhs_index, src); + const init = try sema.elemVal(block, lhs_src, lhs, lhs_index, src, true); element_refs[elem_i] = init; elem_i += 1; } @@ -24145,6 +24145,7 @@ fn elemPtr( elem_index: Air.Inst.Ref, elem_index_src: LazySrcLoc, init: bool, + oob_safety: bool, ) CompileError!Air.Inst.Ref { const indexable_ptr_src = src; // TODO better source location const indexable_ptr_ty = sema.typeOf(indexable_ptr); @@ -24154,7 +24155,7 @@ fn elemPtr( else => return sema.fail(block, indexable_ptr_src, "expected pointer, found '{}'", .{indexable_ptr_ty.fmt(sema.mod)}), }; switch (indexable_ty.zigTypeTag()) { - .Array, .Vector => return sema.elemPtrArray(block, src, indexable_ptr_src, indexable_ptr, elem_index_src, elem_index, init), + .Array, .Vector => return sema.elemPtrArray(block, src, indexable_ptr_src, indexable_ptr, elem_index_src, elem_index, init, oob_safety), .Struct => { // Tuple field access. const index_val = try sema.resolveConstValue(block, elem_index_src, elem_index, "tuple field access index must be comptime-known"); @@ -24163,11 +24164,12 @@ fn elemPtr( }, else => { const indexable = try sema.analyzeLoad(block, indexable_ptr_src, indexable_ptr, indexable_ptr_src); - return elemPtrOneLayerOnly(sema, block, src, indexable, elem_index, elem_index_src, init); + return elemPtrOneLayerOnly(sema, block, src, indexable, elem_index, elem_index_src, init, oob_safety); }, } } +/// Asserts that the type of indexable is pointer. fn elemPtrOneLayerOnly( sema: *Sema, block: *Block, @@ -24176,6 +24178,7 @@ fn elemPtrOneLayerOnly( elem_index: Air.Inst.Ref, elem_index_src: LazySrcLoc, init: bool, + oob_safety: bool, ) CompileError!Air.Inst.Ref { const indexable_src = src; // TODO better source location const indexable_ty = sema.typeOf(indexable); @@ -24184,33 +24187,28 @@ fn elemPtrOneLayerOnly( } const target = sema.mod.getTarget(); - switch (indexable_ty.zigTypeTag()) { - .Pointer => { - switch (indexable_ty.ptrSize()) { - .Slice => return sema.elemPtrSlice(block, src, indexable_src, indexable, elem_index_src, elem_index), - .Many, .C => { - const maybe_ptr_val = try sema.resolveDefinedValue(block, indexable_src, indexable); - const maybe_index_val = try sema.resolveDefinedValue(block, elem_index_src, elem_index); - const runtime_src = rs: { - const ptr_val = maybe_ptr_val orelse break :rs indexable_src; - const index_val = maybe_index_val orelse break :rs elem_index_src; - const index = @intCast(usize, index_val.toUnsignedInt(target)); - const elem_ptr = try ptr_val.elemPtr(indexable_ty, sema.arena, index, sema.mod); - const result_ty = try sema.elemPtrType(indexable_ty, index); - return sema.addConstant(result_ty, elem_ptr); - }; - const result_ty = try sema.elemPtrType(indexable_ty, null); + switch (indexable_ty.ptrSize()) { + .Slice => return sema.elemPtrSlice(block, src, indexable_src, indexable, elem_index_src, elem_index, oob_safety), + .Many, .C => { + const maybe_ptr_val = try sema.resolveDefinedValue(block, indexable_src, indexable); + const maybe_index_val = try sema.resolveDefinedValue(block, elem_index_src, elem_index); + const runtime_src = rs: { + const ptr_val = maybe_ptr_val orelse break :rs indexable_src; + const index_val = maybe_index_val orelse break :rs elem_index_src; + const index = @intCast(usize, index_val.toUnsignedInt(target)); + const elem_ptr = try ptr_val.elemPtr(indexable_ty, sema.arena, index, sema.mod); + const result_ty = try sema.elemPtrType(indexable_ty, index); + return sema.addConstant(result_ty, elem_ptr); + }; + const result_ty = try sema.elemPtrType(indexable_ty, null); - try sema.requireRuntimeBlock(block, src, runtime_src); - return block.addPtrElemPtr(indexable, elem_index, result_ty); - }, - .One => { - assert(indexable_ty.childType().zigTypeTag() == .Array); // Guaranteed by isIndexable - return sema.elemPtrArray(block, src, indexable_src, indexable, elem_index_src, elem_index, init); - }, - } + try sema.requireRuntimeBlock(block, src, runtime_src); + return block.addPtrElemPtr(indexable, elem_index, result_ty); + }, + .One => { + assert(indexable_ty.childType().zigTypeTag() == .Array); // Guaranteed by isIndexable + return sema.elemPtrArray(block, src, indexable_src, indexable, elem_index_src, elem_index, init, oob_safety); }, - else => unreachable, } } @@ -24221,6 +24219,7 @@ fn elemVal( indexable: Air.Inst.Ref, elem_index_uncasted: Air.Inst.Ref, elem_index_src: LazySrcLoc, + oob_safety: bool, ) CompileError!Air.Inst.Ref { const indexable_src = src; // TODO better source location const indexable_ty = sema.typeOf(indexable); @@ -24236,7 +24235,7 @@ fn elemVal( switch (indexable_ty.zigTypeTag()) { .Pointer => switch (indexable_ty.ptrSize()) { - .Slice => return sema.elemValSlice(block, src, indexable_src, indexable, elem_index_src, elem_index), + .Slice => return sema.elemValSlice(block, src, indexable_src, indexable, elem_index_src, elem_index, oob_safety), .Many, .C => { const maybe_indexable_val = try sema.resolveDefinedValue(block, indexable_src, indexable); const maybe_index_val = try sema.resolveDefinedValue(block, elem_index_src, elem_index); @@ -24257,14 +24256,14 @@ fn elemVal( }, .One => { assert(indexable_ty.childType().zigTypeTag() == .Array); // Guaranteed by isIndexable - const elem_ptr = try sema.elemPtr(block, indexable_src, indexable, elem_index, elem_index_src, false); + const elem_ptr = try sema.elemPtr(block, indexable_src, indexable, elem_index, elem_index_src, false, oob_safety); return sema.analyzeLoad(block, indexable_src, elem_ptr, elem_index_src); }, }, - .Array => return sema.elemValArray(block, src, indexable_src, indexable, elem_index_src, elem_index), + .Array => return sema.elemValArray(block, src, indexable_src, indexable, elem_index_src, elem_index, oob_safety), .Vector => { // TODO: If the index is a vector, the result should be a vector. - return sema.elemValArray(block, src, indexable_src, indexable, elem_index_src, elem_index); + return sema.elemValArray(block, src, indexable_src, indexable, elem_index_src, elem_index, oob_safety); }, .Struct => { // Tuple field access. @@ -24409,6 +24408,7 @@ fn elemValArray( array: Air.Inst.Ref, elem_index_src: LazySrcLoc, elem_index: Air.Inst.Ref, + oob_safety: bool, ) CompileError!Air.Inst.Ref { const array_ty = sema.typeOf(array); const array_sent = array_ty.sentinel(); @@ -24452,7 +24452,7 @@ fn elemValArray( const runtime_src = if (maybe_undef_array_val != null) elem_index_src else array_src; try sema.requireRuntimeBlock(block, src, runtime_src); - if (block.wantSafety()) { + if (oob_safety and block.wantSafety()) { // Runtime check is only needed if unable to comptime check if (maybe_index_val == null) { const len_inst = try sema.addIntUnsigned(Type.usize, array_len); @@ -24472,6 +24472,7 @@ fn elemPtrArray( elem_index_src: LazySrcLoc, elem_index: Air.Inst.Ref, init: bool, + oob_safety: bool, ) CompileError!Air.Inst.Ref { const target = sema.mod.getTarget(); const array_ptr_ty = sema.typeOf(array_ptr); @@ -24515,7 +24516,7 @@ fn elemPtrArray( try sema.requireRuntimeBlock(block, src, runtime_src); // Runtime check is only needed if unable to comptime check. - if (block.wantSafety() and offset == null) { + if (oob_safety and block.wantSafety() and offset == null) { const len_inst = try sema.addIntUnsigned(Type.usize, array_len); const cmp_op: Air.Inst.Tag = if (array_sent) .cmp_lte else .cmp_lt; try sema.panicIndexOutOfBounds(block, elem_index, len_inst, cmp_op); @@ -24532,6 +24533,7 @@ fn elemValSlice( slice: Air.Inst.Ref, elem_index_src: LazySrcLoc, elem_index: Air.Inst.Ref, + oob_safety: bool, ) CompileError!Air.Inst.Ref { const slice_ty = sema.typeOf(slice); const slice_sent = slice_ty.sentinel() != null; @@ -24568,7 +24570,7 @@ fn elemValSlice( try sema.validateRuntimeElemAccess(block, elem_index_src, elem_ty, slice_ty, slice_src); try sema.requireRuntimeBlock(block, src, runtime_src); - if (block.wantSafety()) { + if (oob_safety and block.wantSafety()) { const len_inst = if (maybe_slice_val) |slice_val| try sema.addIntUnsigned(Type.usize, slice_val.sliceLen(sema.mod)) else @@ -24588,6 +24590,7 @@ fn elemPtrSlice( slice: Air.Inst.Ref, elem_index_src: LazySrcLoc, elem_index: Air.Inst.Ref, + oob_safety: bool, ) CompileError!Air.Inst.Ref { const target = sema.mod.getTarget(); const slice_ty = sema.typeOf(slice); @@ -24625,7 +24628,7 @@ fn elemPtrSlice( const runtime_src = if (maybe_undef_slice_val != null) elem_index_src else slice_src; try sema.requireRuntimeBlock(block, src, runtime_src); - if (block.wantSafety()) { + if (oob_safety and block.wantSafety()) { const len_inst = len: { if (maybe_undef_slice_val) |slice_val| if (!slice_val.isUndef()) @@ -26330,7 +26333,7 @@ fn storePtr2( const elem_src = operand_src; // TODO better source location const elem = try sema.tupleField(block, operand_src, uncasted_operand, elem_src, i); const elem_index = try sema.addIntUnsigned(Type.usize, i); - const elem_ptr = try sema.elemPtr(block, ptr_src, ptr, elem_index, elem_src, false); + const elem_ptr = try sema.elemPtr(block, ptr_src, ptr, elem_index, elem_src, false, true); try sema.storePtr2(block, src, elem_ptr, elem_src, elem, elem_src, .store); } return; @@ -27782,7 +27785,7 @@ fn coerceArrayLike( ); const src = inst_src; // TODO better source location const elem_src = inst_src; // TODO better source location - const elem_ref = try sema.elemValArray(block, src, inst_src, inst, elem_src, index_ref); + const elem_ref = try sema.elemValArray(block, src, inst_src, inst, elem_src, index_ref, true); const coerced = try sema.coerce(block, dest_elem_ty, elem_ref, elem_src); element_refs[i] = coerced; if (runtime_src == null) { diff --git a/src/Zir.zig b/src/Zir.zig index e215dfac10..e13140d7ae 100644 --- a/src/Zir.zig +++ b/src/Zir.zig @@ -382,7 +382,9 @@ pub const Inst = struct { /// Uses the `pl_node` union field. AST node is a[b] syntax. Payload is `Bin`. elem_ptr_node, /// Same as `elem_ptr_node` but used only for for loop. - /// Uses the `pl_node` union field. AST node is the condition of a for loop. Payload is `Bin`. + /// Uses the `pl_node` union field. AST node is the condition of a for loop. + /// Payload is `Bin`. + /// No OOB safety check is emitted. elem_ptr, /// Same as `elem_ptr_node` except the index is stored immediately rather than /// as a reference to another ZIR instruction. @@ -395,7 +397,9 @@ pub const Inst = struct { /// Uses the `pl_node` union field. AST node is a[b] syntax. Payload is `Bin`. elem_val_node, /// Same as `elem_val_node` but used only for for loop. - /// Uses the `pl_node` union field. AST node is the condition of a for loop. Payload is `Bin`. + /// Uses the `pl_node` union field. AST node is the condition of a for loop. + /// Payload is `Bin`. + /// No OOB safety check is emitted. elem_val, /// Emits a compile error if the operand is not `void`. /// Uses the `un_node` field. diff --git a/test/behavior/for.zig b/test/behavior/for.zig index e3c4a8dcc0..20d43c6ff2 100644 --- a/test/behavior/for.zig +++ b/test/behavior/for.zig @@ -314,6 +314,7 @@ test "slice and two counters, one is offset and one is runtime" { if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO const slice: []const u8 = "blah"; var start: usize = 0; @@ -342,6 +343,7 @@ test "two slices, one captured by-ref" { if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO var buf: [10]u8 = undefined; const slice1: []const u8 = "blah"; From e89bfedd8d68a731cb227327a325e16fc7812df9 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Sat, 18 Feb 2023 15:56:29 -0700 Subject: [PATCH 28/36] update compare-output test case to new for loop syntax --- test/compare_output.zig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/compare_output.zig b/test/compare_output.zig index b3a6144729..e2525eb119 100644 --- a/test/compare_output.zig +++ b/test/compare_output.zig @@ -196,7 +196,7 @@ pub fn addCases(cases: *tests.CompareOutputContext) void { \\ \\ c.qsort(@ptrCast(?*anyopaque, &array), @intCast(c_ulong, array.len), @sizeOf(i32), compare_fn); \\ - \\ for (array) |item, i| { + \\ for (array, 0..) |item, i| { \\ if (item != i) { \\ c.abort(); \\ } From 8b05205bb71fca55569a9ff4cab89ec9e09640ba Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Sat, 18 Feb 2023 15:58:27 -0700 Subject: [PATCH 29/36] implement error for unbounded for loops --- src/AstGen.zig | 9 ++++--- src/Sema.zig | 26 ++++++++++++++++++++- test/behavior/for.zig | 19 +++++++++++++++ test/cases/compile_errors/for.zig | 10 ++++++++ test/cases/compile_errors/for_unbounded.zig | 11 +++++++++ 5 files changed, 69 insertions(+), 6 deletions(-) create mode 100644 test/cases/compile_errors/for_unbounded.zig diff --git a/src/AstGen.zig b/src/AstGen.zig index 866dce02e5..bd1bba168b 100644 --- a/src/AstGen.zig +++ b/src/AstGen.zig @@ -6394,11 +6394,13 @@ fn forExpr( } } + if (!any_len_checks) { + return astgen.failNode(node, "unbounded for loop", .{}); + } + // We use a dedicated ZIR instruction to assert the lengths to assist with // nicer error reporting as well as fewer ZIR bytes emitted. const len: Zir.Inst.Ref = len: { - if (!any_len_checks) break :len .none; - const lens_len = @intCast(u32, lens.len); try astgen.extra.ensureUnusedCapacity(gpa, @typeInfo(Zir.Inst.MultiOp).Struct.fields.len + lens_len); const len = try parent_gz.addPlNode(.for_len, node, Zir.Inst.MultiOp{ @@ -6424,9 +6426,6 @@ fn forExpr( defer cond_scope.unstack(); // Check the condition. - if (!any_len_checks) { - return astgen.failNode(node, "TODO: handle infinite for loop", .{}); - } const cond = try cond_scope.addPlNode(.cmp_lt, node, Zir.Inst.Bin{ .lhs = index, .rhs = len, diff --git a/src/Sema.zig b/src/Sema.zig index 5fa754d6cf..84185f649c 100644 --- a/src/Sema.zig +++ b/src/Sema.zig @@ -3975,7 +3975,31 @@ fn zirForLen(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air. } if (len == .none) { - return sema.fail(block, src, "non-obvious infinite loop", .{}); + const msg = msg: { + const msg = try sema.errMsg(block, src, "unbounded for loop", .{}); + errdefer msg.destroy(gpa); + for (args, 0..) |zir_arg, i_usize| { + const i = @intCast(u32, i_usize); + if (zir_arg == .none) continue; + const object = try sema.resolveInst(zir_arg); + const object_ty = sema.typeOf(object); + // Each arg could be an indexable, or a range, in which case the length + // is passed directly as an integer. + switch (object_ty.zigTypeTag()) { + .Int, .ComptimeInt => continue, + else => {}, + } + const arg_src: LazySrcLoc = .{ .for_input = .{ + .for_node_offset = inst_data.src_node, + .input_index = i, + } }; + try sema.errNote(block, arg_src, msg, "type '{}' has no upper bound", .{ + object_ty.fmt(sema.mod), + }); + } + break :msg msg; + }; + return sema.failWithOwnedErrorMsg(msg); } // Now for the runtime checks. diff --git a/test/behavior/for.zig b/test/behavior/for.zig index 20d43c6ff2..0c5ab392f4 100644 --- a/test/behavior/for.zig +++ b/test/behavior/for.zig @@ -378,3 +378,22 @@ test "raw pointer and slice" { try expect(buf[2] == 'a'); try expect(buf[3] == 'h'); } + +test "raw pointer and counter" { + if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO + + var buf: [10]u8 = undefined; + const ptr: [*]u8 = &buf; + + for (ptr, 0..4) |*a, b| { + a.* = @intCast(u8, 'A' + b); + } + + try expect(buf[0] == 'A'); + try expect(buf[1] == 'B'); + try expect(buf[2] == 'C'); + try expect(buf[3] == 'D'); +} diff --git a/test/cases/compile_errors/for.zig b/test/cases/compile_errors/for.zig index dff46af085..5bd3aa0c64 100644 --- a/test/cases/compile_errors/for.zig +++ b/test/cases/compile_errors/for.zig @@ -16,6 +16,13 @@ export fn c() void { _ = byte; } } +export fn d() void { + const x: [*]const u8 = "hello"; + const y: [*]const u8 = "world"; + for (x, 0.., y) |x1, x2, x3| { + _ = x1; _ = x2; _ = x3; + } +} // error // backend=stage2 @@ -28,3 +35,6 @@ export fn c() void { // :9:14: note: for loop operand must be an array, slice, tuple, or vector // :15:16: error: pointer capture of non pointer type '[10]u8' // :15:10: note: consider using '&' here +// :22:5: error: unbounded for loop +// :22:10: note: type '[*]const u8' has no upper bound +// :22:18: note: type '[*]const u8' has no upper bound diff --git a/test/cases/compile_errors/for_unbounded.zig b/test/cases/compile_errors/for_unbounded.zig new file mode 100644 index 0000000000..5d05b1061f --- /dev/null +++ b/test/cases/compile_errors/for_unbounded.zig @@ -0,0 +1,11 @@ +export fn b() void { + for (0..) |i| { + _ = i; + } +} + +// error +// backend=stage2 +// target=native +// +// :2:5: error: unbounded for loop From 12a7a0d76f9435c8c538f762daa79a49ca0470af Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Sat, 18 Feb 2023 16:28:21 -0700 Subject: [PATCH 30/36] omit safety check when incrementing for loop counter Since for loops are statically analyzed to have an upper bound, and the loop counter is a usize, it is impossible for it to overflow. --- src/AstGen.zig | 3 ++- src/Sema.zig | 24 +++++++++++++----------- src/Zir.zig | 5 +++++ src/print_zir.zig | 1 + 4 files changed, 21 insertions(+), 12 deletions(-) diff --git a/src/AstGen.zig b/src/AstGen.zig index bd1bba168b..0a86fd3d0e 100644 --- a/src/AstGen.zig +++ b/src/AstGen.zig @@ -2400,6 +2400,7 @@ fn addEnsureResult(gz: *GenZir, maybe_unused_result: Zir.Inst.Ref, statement: As .add, .addwrap, .add_sat, + .add_unsafe, .param, .param_comptime, .param_anytype, @@ -6440,7 +6441,7 @@ fn forExpr( try loop_scope.instructions.append(gpa, cond_block); // Increment the index variable. - const index_plus_one = try loop_scope.addPlNode(.add, node, Zir.Inst.Bin{ + const index_plus_one = try loop_scope.addPlNode(.add_unsafe, node, Zir.Inst.Bin{ .lhs = index, .rhs = .one_usize, }); diff --git a/src/Sema.zig b/src/Sema.zig index 84185f649c..6e8d77475e 100644 --- a/src/Sema.zig +++ b/src/Sema.zig @@ -1060,15 +1060,16 @@ fn analyzeBodyInner( .error_set_decl_anon => try sema.zirErrorSetDecl(block, inst, .anon), .error_set_decl_func => try sema.zirErrorSetDecl(block, inst, .func), - .add => try sema.zirArithmetic(block, inst, .add), - .addwrap => try sema.zirArithmetic(block, inst, .addwrap), - .add_sat => try sema.zirArithmetic(block, inst, .add_sat), - .mul => try sema.zirArithmetic(block, inst, .mul), - .mulwrap => try sema.zirArithmetic(block, inst, .mulwrap), - .mul_sat => try sema.zirArithmetic(block, inst, .mul_sat), - .sub => try sema.zirArithmetic(block, inst, .sub), - .subwrap => try sema.zirArithmetic(block, inst, .subwrap), - .sub_sat => try sema.zirArithmetic(block, inst, .sub_sat), + .add => try sema.zirArithmetic(block, inst, .add, true), + .addwrap => try sema.zirArithmetic(block, inst, .addwrap, true), + .add_sat => try sema.zirArithmetic(block, inst, .add_sat, true), + .add_unsafe=> try sema.zirArithmetic(block, inst, .add_unsafe, false), + .mul => try sema.zirArithmetic(block, inst, .mul, true), + .mulwrap => try sema.zirArithmetic(block, inst, .mulwrap, true), + .mul_sat => try sema.zirArithmetic(block, inst, .mul_sat, true), + .sub => try sema.zirArithmetic(block, inst, .sub, true), + .subwrap => try sema.zirArithmetic(block, inst, .subwrap, true), + .sub_sat => try sema.zirArithmetic(block, inst, .sub_sat, true), .div => try sema.zirDiv(block, inst), .div_exact => try sema.zirDivExact(block, inst), @@ -12887,6 +12888,7 @@ fn zirArithmetic( block: *Block, inst: Zir.Inst.Index, zir_tag: Zir.Inst.Tag, + safety: bool, ) CompileError!Air.Inst.Ref { const tracy = trace(@src()); defer tracy.end(); @@ -12899,7 +12901,7 @@ fn zirArithmetic( const lhs = try sema.resolveInst(extra.lhs); const rhs = try sema.resolveInst(extra.rhs); - return sema.analyzeArithmetic(block, zir_tag, lhs, rhs, sema.src, lhs_src, rhs_src, true); + return sema.analyzeArithmetic(block, zir_tag, lhs, rhs, sema.src, lhs_src, rhs_src, safety); } fn zirDiv(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air.Inst.Ref { @@ -14250,7 +14252,7 @@ fn analyzeArithmetic( const maybe_rhs_val = try sema.resolveMaybeUndefValIntable(casted_rhs); const rs: struct { src: LazySrcLoc, air_tag: Air.Inst.Tag } = rs: { switch (zir_tag) { - .add => { + .add, .add_unsafe => { // For integers:intAddSat // If either of the operands are zero, then the other operand is // returned, even if it is undefined. diff --git a/src/Zir.zig b/src/Zir.zig index e13140d7ae..4dd2386c51 100644 --- a/src/Zir.zig +++ b/src/Zir.zig @@ -137,6 +137,8 @@ pub const Inst = struct { /// Saturating addition. /// Uses the `pl_node` union field. Payload is `Bin`. add_sat, + /// The same as `add` except no safety check. + add_unsafe, /// Arithmetic subtraction. Asserts no integer overflow. /// Uses the `pl_node` union field. Payload is `Bin`. sub, @@ -1023,6 +1025,7 @@ pub const Inst = struct { .add, .addwrap, .add_sat, + .add_unsafe, .alloc, .alloc_mut, .alloc_comptime_mut, @@ -1338,6 +1341,7 @@ pub const Inst = struct { .add, .addwrap, .add_sat, + .add_unsafe, .alloc, .alloc_mut, .alloc_comptime_mut, @@ -1570,6 +1574,7 @@ pub const Inst = struct { .add = .pl_node, .addwrap = .pl_node, .add_sat = .pl_node, + .add_unsafe = .pl_node, .sub = .pl_node, .subwrap = .pl_node, .sub_sat = .pl_node, diff --git a/src/print_zir.zig b/src/print_zir.zig index 1674bd136e..fb9031296d 100644 --- a/src/print_zir.zig +++ b/src/print_zir.zig @@ -296,6 +296,7 @@ const Writer = struct { .add, .addwrap, .add_sat, + .add_unsafe, .array_cat, .array_mul, .mul, From 40c4c25e2b5e2242c3180cd8564dc22697bf363f Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Sat, 18 Feb 2023 18:56:37 -0700 Subject: [PATCH 31/36] Sema: add missing coercion when checking for loop len --- src/Sema.zig | 3 ++- test/behavior/for.zig | 62 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 64 insertions(+), 1 deletion(-) diff --git a/src/Sema.zig b/src/Sema.zig index 6e8d77475e..fcdb1ce518 100644 --- a/src/Sema.zig +++ b/src/Sema.zig @@ -3934,12 +3934,13 @@ fn zirForLen(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air. .for_node_offset = inst_data.src_node, .input_index = i, } }; - const arg_len = if (is_int) object else l: { + const arg_len_uncoerced = if (is_int) object else l: { try checkIndexable(sema, block, arg_src, object_ty); if (!object_ty.indexableHasLen()) continue; break :l try sema.fieldVal(block, arg_src, object, "len", arg_src); }; + const arg_len = try sema.coerce(block, Type.usize, arg_len_uncoerced, arg_src); if (len == .none) { len = arg_len; len_idx = i; diff --git a/test/behavior/for.zig b/test/behavior/for.zig index 0c5ab392f4..67a20e4840 100644 --- a/test/behavior/for.zig +++ b/test/behavior/for.zig @@ -397,3 +397,65 @@ test "raw pointer and counter" { try expect(buf[2] == 'C'); try expect(buf[3] == 'D'); } + +test "inline for with slice as the comptime-known" { + if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO + + const comptime_slice = "hello"; + var runtime_i: usize = 3; + + const S = struct { + var ok: usize = 0; + fn check(comptime a: u8, b: usize) !void { + if (a == 'l') { + try expect(b == 3); + ok += 1; + } else if (a == 'o') { + try expect(b == 4); + ok += 1; + } else { + @compileError("fail"); + } + } + }; + + inline for (comptime_slice[3..5], runtime_i..5) |a, b| { + try S.check(a, b); + } + + try expect(S.ok == 2); +} + +test "inline for with counter as the comptime-known" { + if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO + + var runtime_slice = "hello"; + var runtime_i: usize = 3; + + const S = struct { + var ok: usize = 0; + fn check(a: u8, comptime b: usize) !void { + if (b == 3) { + try expect(a == 'l'); + ok += 1; + } else if (b == 4) { + try expect(a == 'o'); + ok += 1; + } else { + @compileError("fail"); + } + } + }; + + inline for (runtime_slice[runtime_i..5], 3..5) |a, b| { + try S.check(a, b); + } + + try expect(S.ok == 2); +} From 15d767c62154859724dbf63dd0fdfa4195e33256 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Sat, 18 Feb 2023 19:17:05 -0700 Subject: [PATCH 32/36] add safety test cases for multi-object for loops --- test/cases/safety/for_len_mismatch.zig | 24 ++++++++++++++++++++ test/cases/safety/for_len_mismatch_three.zig | 24 ++++++++++++++++++++ 2 files changed, 48 insertions(+) create mode 100644 test/cases/safety/for_len_mismatch.zig create mode 100644 test/cases/safety/for_len_mismatch_three.zig diff --git a/test/cases/safety/for_len_mismatch.zig b/test/cases/safety/for_len_mismatch.zig new file mode 100644 index 0000000000..871e203f61 --- /dev/null +++ b/test/cases/safety/for_len_mismatch.zig @@ -0,0 +1,24 @@ +const std = @import("std"); + +pub fn panic(message: []const u8, stack_trace: ?*std.builtin.StackTrace, _: ?usize) noreturn { + _ = stack_trace; + if (std.mem.eql(u8, message, "for loop over objects with non-equal lengths")) { + std.process.exit(0); + } + std.process.exit(1); +} + +pub fn main() !void { + var runtime_i: usize = 1; + var j: usize = 3; + var slice = "too long"; + for (runtime_i..j, slice) |a, b| { + _ = a; + _ = b; + return error.TestFailed; + } + return error.TestFailed; +} +// run +// backend=llvm +// target=native diff --git a/test/cases/safety/for_len_mismatch_three.zig b/test/cases/safety/for_len_mismatch_three.zig new file mode 100644 index 0000000000..95bc244269 --- /dev/null +++ b/test/cases/safety/for_len_mismatch_three.zig @@ -0,0 +1,24 @@ +const std = @import("std"); + +pub fn panic(message: []const u8, stack_trace: ?*std.builtin.StackTrace, _: ?usize) noreturn { + _ = stack_trace; + if (std.mem.eql(u8, message, "for loop over objects with non-equal lengths")) { + std.process.exit(0); + } + std.process.exit(1); +} + +pub fn main() !void { + var slice: []const u8 = "hello"; + for (10..20, slice, 20..30) |a, b, c| { + _ = a; + _ = b; + _ = c; + return error.TestFailed; + } + return error.TestFailed; +} +// run +// backend=llvm +// target=native + From 5fc6bbe71eeecb195d2cda2a2522e7fd04749d5b Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Sat, 18 Feb 2023 09:49:40 -0700 Subject: [PATCH 33/36] update zig1.wasm --- stage1/zig1.wasm | Bin 2377691 -> 2388586 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/stage1/zig1.wasm b/stage1/zig1.wasm index 9a3b25eb30ad036d83caaf3bc78cb2a235ded55e..2fe8728cb3562fe78ff3acede61698bf3a98adf3 100644 GIT binary patch literal 2388586 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 z≺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 z zT)g%NH*+?C?~x|j=gIaYJM>4Vp`M5bo#8gIGb~HRY!i{Hm~eSVJH@amTWj;t(HM(g zB6hSW7+^4G220qpUAqiOVXJtp5Vc4~9Y+|V*g6QpISz)0TcQWFElQ#Lnbopfm001@ zo*L4=50-6%R#s<_0)>ldN>pTl^~tlyM6{}4ckiuDg<+kgvH0F?jK%-;^D!0ymM|7; zRvruF*9v2ioc*!Tdi?Cni^bP77U%zbj75MYjK%7e$AW!}6~-bx`(x4V6)o(ZU;EZ8 zvOepr;UB4q;)v7DNP1$kS4>duD^?BzYSH8Fe}48=d?kba6n9_pyTspp#_w=0LR%>w zu)D`)+|h;hiXZYTz9^+*%;uZj|}IMIg_mM{?LQ+%aM*)uWKK#Kv#{kPgiU+Nmfco%Pt`iI zr;|nm<^AnJJ@YLl@~f;x?=%W*6rcW_y$N?8e3$N|Z@7Ydk~T}3S4Ia0xp!0>Ee{wV z>IRwVWAv&>r=F{W=$hpaouW{#=+{7jr&#b_r#(1qol<|xauwPB==G!+n?x0^%4j$6 z5x%ZS`L;LkbzJ{i+qIAIwRCv%K-;IU8`alxs&e?G2rBRF@$z7B(?ZanPw}Z1B+5BP zQO&y_s{_*Ie;zu3+l4PUh8?g+P!6#oPiJJHI}NH7jO@1p%ur=Zc4^b)TqSb7D^?tN zob_!BO*p6_#_B~yQevRxhyrcKVZnV-*pi7Q3=E0imL-a6SodpS&aLCLHmoasT@C98 zAN8=#1FD8~zYnX_%eSbKa~?MkRvH*_=%3xd7#Y_FM#}SYv$YzSFCW9xY^8x&>Fa7> zzN4?(6;97!zM0lPIxr_x$w~wB=s{R%V4#7sGB9Bh6~|fVKlG`63YK?+#DmxQ}U-8 zi??c-z3%5@ECMWHET&c-i>VdIqJ8$q0>_%OG#0PdGW+LbUIbXeSWK=w7VJH*FfTf1 ze=G=fI!j}5S_0@vKOgfVz!JuyxAIsZ#a9@MiL*Zzcz>Oxu{b1ovFYbyECMWHEV?U? zMR&!q=$`$tNTu#Y#rOBJ;J|r@%ag1>CbLhJ8*`*vP0}X&l5z3pYi0yF4(xF1dT%)29^kh;o7pM1>l;s!VH@{ z`=e^kTv741*D$I$TrjHarLw<1GO8GC%2B1n*%{S$Da>vbJ^tr@R0E`8RB?7&c2wD! zSz%PC&i<&f_8Q;PQxuLR>C?Xd>&${getDcKQk*K@^Z}AHoGYh_FQrN9F%3J|&yvFe zB=Kd<`Bgdg7%WIohMSNE$+LODRKL;o)>b477{T(}XQ@nx@}id4$$%-ojcb0k^I-d2 z@gb>^=Rpx?zFteU=~zy4j>aPRY`Ck&GSe2WIt`IcUvr>pX-kbWsb(?yQ9j48naa4R z!yQ{S;F#3{j-OHB0ukuAo3Pk25Q2VhE?`+7%Y_^PL?<{`2#4&U;Vm`878-9RaVQ<# zLDNG{8jCV*pe5S)hnhUT$Gi?OP*xjg+G8HwKy%+LJCA%guB)S*Z8yHd36v{(&m@A}xKOV>4gNf0c6D4>rpK8}co=uw@6y$|*NB%)jO*<4vsdz0Jy5j;3t1 zaGYXG8kZOx80{>E^Y#?y{dN)mYgvUsI=(BN?2k0s=DthG%={(rL&)_+$Y)bp#^K6e zkNs@iO-OwpOCuCurzZmzADerKNT89@SEcFk@6<)nMzkC-$(2Hzx8s}N!LMtyX>E(s zt(atsF(bMqx>>4i@rtHW#$Yv~N7ZOr)>LdZ!d+A>+K?B~6>h|_aHqI*);{uwIBP%n zZFkoGVq%V0et3kuPuV2UnUc0w&@#)3S!?MU7z66YU6*Zs`Cvj(4WNTKgG0FQB#?=m z)|4lhBL;=0_fpgjj4d|*78?ixje&27(~ucOXFxNY@)t38SGL@M)9&f?}gV$mU}sq!SUpvXHk4|(Z$>OU>v7mZZ<(`Q-r5JUYbCr z+Mj8G2QFqHYDc!BpDkIfB_krZKD$XN0XO*$h??4@o{=U6=L#JdV~L|w=l?_7JT(7Q zoE8}d-p%6Plbtq<0vVmQ=koYDjZQBAFrfT=;!qx$$GNQ~S)o70{5%*Uk8=3;`5O-9 zjcYh`6p+bra#3=SH{<}NPh{Dfha04W*{kPAG=~u(Rfy{H{{o{6q&;Bz91RsOrim7gai!O=m3eHO-(yCa? zPlp2`_-XfwC-Flp*m{20PHpo;x0%NPqEiZcnkVo)z+$GVEBG|tfvIk5d^;r+KTBa= z59Hw#-vvJ6-?>&nGUnxkr-K3sLG&fDxDyBzKA%J6gXU=;Ohws!F*6a5h&}}+4|GfB z4;)c-FRvs!qb2)78sxD_VSO=xL-zhd6-E(5LCe;<1!ut>UR_8619S35vNw|_)taX= zK7O)5Qtq<*=(tRLfcrdwtBF34hqTB&}ICBCMvyBo}+PpRHZe7T~J)Pix@#kT!`l;s-}z;VloLoX8s_%+BImiw@TOC!v92Oj1TtBfZ-D zpMqQ1rZS18%q`MO@*3yLkH0&dQLN&vx#BPC_aEhEYh>t1icgd`4UUMRyNJEXfzBjh z7HEc28AKbZ30L7$ej1e0-xh!EoB|}H^fP#o$LFFV(Gj#D%fp#s`NywXR7o=L5H*KQ z6ormSEaDZvB}*G4hpV>oqo6H=oLF?5vieRL5x8Y$ z6{qe%bFkbc#K6JTATN5zI15HfLWz7K0=J5Pk=htc#w$Vie6@{FuJ-8J7uQZOj@`Aj z%TsG*8?~})mlj1>M}>UNzt-;UOFY_+i38I~c0gJR6mAtd*r%8f_bIl)#^EJ%qVz9E z#Wo-X5K0kR`C9|P+ePSy9u(c@Zh($77(tUG{RPPyBr%wB{!v^!5M3p9ZBG}km*?NZCE}Y0e>a=cG_uN)GW?^gV?s06YGBZTDKx6w6T)R#H+t82Rc(q$ij$wQ zF;`%h*r}n(t~2flD>;weDNmv>thq@-^oS@G&_%ZT-qo?rkJCv8<$I125OdZ)jXq_S zfi#s0C#ZOVt~`kRd}QiFJ))o`aO@pSoN$guWt1d~2ac&uU^@7|OSP63jQggpsE3{v zH+Op3AIB7df-WqDk9etiEl=ErH|vy#Y*qkBInjwSNpr32O6uIsYg~*)qQyHc@>L z90F~JCYP5`Gsh#b_P<1SYks!zVB1{r>fd9jt&B-Rw*CpOEkfL&$xf;jc1#s-RbeGWq8zJtWCb7jP9sH& zxQ};&{-`^|SPmE9U|isd-3nZ|s#f0&Vunt|L)PmSzzQyNy{$pa-nt;>XPYXn!5miL zPA6lam-}qgZ5`L@U4vbAq5dsBK`wbW)a~%CHvelZMkv1|-fWb{A`xPTVdW$*GJd#` zp_C)I(Sm@T;lZXkaPJ&#$4&-wO++PPXIKLmUoFM|6Eljz<%nNNZVem!pwx<_R~g#G zl~p@$bm%W)G}mOa1v7Js``JOd!KFhuSdRPmwo*Dc=M%8=fD7~%8`Zv+cT!e#RFB5B< zWC3i}B@JQ~I*bx#$gmS%6SOaNTQO?3wxW9liVhE;{>?0Uyl~EgZL(G6bJ=%!i)(!d z?d5U@0nC8Q)uoI-*R7Pfk+-z)F@B8yJcu_ZdFUSVM8nJlHa%Z15Kt3X2U{+Wh93v! z(RMZJGo#n@D}b&97UE9$m(x}tP37Grsu>}ZH}+%?0pgbE*Qap$7MuL(D*Ij|dAU^w zqNp$Kv8J4#S5hMD^R)`-|5r+<)xHHqw=I)`X^7*+l09?36pt5!t{xG(A{KU+>n@(x z-cvwh*xcl#fw)$ll21>fzG77s_t+sJo|;0!h$O<~!~DnDcRF9y(0eKGV2EZq{6i$M z_-eyr)Lf!Mm_mS>Dxw}_5{Mnfrg@PnxRMDzKN)w$NGj8>W;lF(wEE=KK}hcvW( z(1vdG@Iq*aYvY64`duTXj-;Okxh2RI<=qXRw#jL$XIf%lP}U)0P*=mr0s0T*mavi$ z*wXw;JwG*Z$HNYPrK&)Wc7Uk@U?bFbqsO-BQS*Tb0=G1a0fg3t(AsH zN*zLm5tMqJO&0=EYcpwO@IKT;NfLm<{TO`EEgdc4V;%}Z9xe-^BF`s;7a+8g>9~mn zpdg!+p6LK89nvU(3KiBlXuF35p;IYBHC2qqDMpvJsCmEGAQXMkAxOuh+}h&6Z6KX*oH+DsVVj( zl4z$pjDqa}1ftXO${B|32vaGi<=M-DB?#bjNJVuiL4Z?n;)nY%^Pnn8@G!qbzN7|n z{cDyyu7LsW*Ak2B!uw3B7<= z!_h9O^sx+w76mNrMa6-DA=b)5Kz1qVJ1mqX2~6EgS!y5wJ_^Aul>nCHHFVashpE84(9MHo|m! zQ$ikADiHL|(P3kffn1FkbX+pD#w3F*S4ak>6>RMxj>MIaC6WQBqEa%D4$CA%ctnpe zd_%Xy`Hx73wj@KZlnmSvG%U$L(h6}8#`+8-!#H@THOoo{0TU!cfRA|<9xe-^Bm*WV zgU}=cHyqI}$pC<2dJf?7l0nvrnq>H{K{X;7M(5T#F;xVFrnG0fLMdqgm~<0{y({GE z5*AR+GRtT;Bs|F!RZ^$E5gAbqfT;$O5n}tW5SI~Cbk^pZ%(+n0QW-IocY}=R8V$P6 z^q6FXB}l8uh(|;a85q5rL@c?1dOzuM!%i+=A~)Dh3UZ@WQto3J7|9K+fy>AZ?8(Z0 zHpvfZ<|RH5RO8~~RUKbIu>TT#KWYmIx)6m0#N==Rv2M`RX1-WMfjmT%&|`#!Ej?{% zE1AKFAr5suwbE%(9$x2(v?AN3PS_h1D{DH7Z+c=$TNSa?DV2Z5Ja3ZSEGYjRF<`lS zIf=_^V@p^`xlH+o#B5JJJVLcrrh%bq!r}HR>dJq`;_J%4vG}3#FP(P?x1a{gLdi1V zaV|BgKj7KgWCXm5!y9;XTLAKKSpdc1P4@@DCAzu}D)KL=^w6lOZlM%V%61E~Cvml1&H*$(iS(9O-gJGGapD9X4so<{f0KQ=d5SiSMgQhB=so`4%0*n+a^0G zDnLk&_miXPn`A@Mv(;P~?v$?2aou0TmD%t6YXK2EyiQxoRa^p)u3H~4;Pcpzy-srq z+ExZ8!*)KIy-@wxfja`iOkLToFO?=(H<#9{xsos0Yv5m*^-y8_+iU$>Aj;SHx8Q57 zUomP}?61-8LrZpPZgRiLIczb2*#dCX-6`1{z*iwFRt5WYG)GE#{>6MnKEc)A=nXUq zH{oO%5X{f@Ch;wCl-5=hCs`E-sH|ek>b)!%x5o2vfRla$#!DTH?Q>>$2f9u8kvPyh zcABZ64#i$gVr8jn6iU=p;cdSv#rZ@a>`iNYR4{d8cf{ zsFdW;B2z|5J|zqWjjN&YW=2Vso5m0Ujk$xBrOD$dX|_Dio7^x#iW$n2 zOtAY#P>`8slQb_#YB8X*KW4DiO!j{1Ev_#Ci)l0B3RreT9U-~3K5Gaf3}5`nRZEPs zWO8}Zt9&Bwjp$DH_L<((A{eJU9;h~a1IQXHe}KvYz>Jx8?t8i_Sb4kbdsf>Db%)QY1-8@0U-P#_;Emw}cN zphDCD0SXV*qlvl-fn&U@6HS8JT;ZVZLe24ro_V*<-w9;V>Xh;ROWf?5ej z>(h4{qE-=WO4~qQO4JyPEf1*i2L4ZKhhzKoGJJ109>z%)wYUElaJ5j)Xe}RP(}XP z+~H!GagZJ3LDZA)-ABSaa)1gfQdFm;x}3+4SEk_ScqnsyvBhXcaPz zqp;kH=~oOEJ3j__g>rFrgYYJtb6Lf{iJB!cG`>D`1xf1?d;qWEDZAgqFIIen1ms7+^j$EdqBmNclxgn1>=6XoQWhW$0K) zFM8Y}8|*8yl%iRP3(m&OS2ji>c@iTg)yJtUust_hG&O1no$y0do*9MHYO-TjkY+-(jMi7(l&$&&*~F5=qY+}`|I{D-^<2iKyGA!B!=uYqrOQuSF?RaOGe*{~ zUNe5?S?r2*{=^0ApSEG+g_|}`u3L&bo8Y3)x9D#^D&(H&uG-?SQs8g>~C? z#KQ4k|G(>6KM{uMnQ?n?`Dr6-*Nm6nmkqCIj*T`foVl5OF4#5N7&;?4-9P`co>va6 zT8#wPPPz&v6c;=k?BMq$yR#1jE?{iU)i;h@$E(fmap;7{nZ(~dUpNQ zhZNX(S(0s}tmh=zX$|9yZ!?K5O0uWtU!PI?`V784L(%je)~DCLj`8*BNp@Zi>qQk< zpC(w(&S9;W+O<+^MRi+S56y+Oujlgh!UQJqUpLmip2gRV zb#BX9izAa4u-+!l4M8~L@{%SW+LeB1pu>cPbOx6}rqzbm*ZcTXrCm5Yp#WhK#6!ef zuNNecT&D?+80dgD9p1Z<>(Gvo3%K-ljGRLraru=a=c_79e#OXy$g4AmBq!~aBO6ul zKvBX4KA9DyR!v^T?TK(#*1r128@WAy$BiTBXRJ@++x5G%N!f!Gh7cMCCSJaLcXoaL zGP0Lh+|fqZzqmVl`3}u34rjyJh$a>r!xw1#IfKTDS1S0X6~&BiA%dExgzwM&*M2qBqvs{%jkv9GKnTmG}xg!K}s|GXE8)ZU;uSU=Yq+R3x>~4 zh~aJwpYNb*X8!_C&y$qxWkZ>2%1geQ`-chc&1G%t>KoNET7nJ0O}OsHfLeU zlyTd_kL+;!S+#19Ga6*~ngRaLkXm7oyFBO{# zlB$+*lvlvB0<4%^I;*Jsyjodd&{x()3(Gp+mBkbr;33XE!>*}SxSm97lI()~>+0Iq zr}1@llC6gXE+s{dM6Dh=D_C6z{W8+7Qb_{+Bt)?$dv=bnm9uF$q)5 z$^4HrI&VH|Fx-(@l69Hwp;BMY8DgOktjP3nmQt+&Bp_p@CB8*C<@7|AewfA-GQbL3 zZiOkiheoBa*RLx@*~!yp<8Mo1{g<;ra}4u*OptKacROJ>UsdOYo(f++*lsUp9Zoa5 zPzv{KKw`(=X7(YNmE-Ay9TIh4v4?pcw4hnG6IiNBfWPpT){x2n2Z|?><$|FhsoBc@ zq5AEs#e+UMyX}kqozmYpvP=um&H|{>Bb*6>J@bq!5R z!9Ox=<$RC8m+ucU6?j@S_XME1CVr1V)7kI~P&yLGwOPVEl=Gn)pcU7$l(k$?Qj`Yi$kg57T4Gfl3L5}~T>4ER?)r2&`Q*j0zJu#~PlqGt#x*;Z`wBFR!uWTUmIK&W-`0E;W94hjSMacW1)6vu zW#KHKu?+X~F^a~ccwXEBd|DtU10!c*q&3$Or0>V)F%ezfL#^xPDvkW@)wW`&?mPjL z`h1!EldeWw4L^#&au{$x!+m*pK6SBrSb^>e-`32zYQgF5hw8o-%`E|xM*n`c zAon=jKx53~V2Cs?Yt7}Lk8&L4BYgR0Co}~Cnb>@vIg2>U@>Gro%3jj(z&Mu0K(2oy zu;5&a%0~|u(dd^QDYk3 zDQ8`FIx`{}uAG~)TRt9fP*st|Er2}zO6H_2!j>j>z=x)+!t@&k%S*LBDFh7$%xM)( zNgFgT0`JAvu+wQ5nJ0IV_v@DT^3f=a5GP@0l!f|{#*AliIq%YNoYry%mYr%XH{+KE z0Mj<8b*RJr67GalnI02B9l`Teo1~#uFtlzo!cZfUSAl|bQ8xeK+^5O|4%ZXaXJ)FV z3I{BP8-@KN^K}ecuy5@AFyV}Lo&i`axY)o2Hk_d5-@)a*g)8hBa)GVBW=*@S+C{`g z;f~+N1QgM287uh09jsPCUg1S%8W$hZ2)Uc--?n@!Rg=f)O3OQm+s@@gEyiI?r++t1 z1CZtEV*?PLA^Qiou%zetY8A|ichGp{Dr*X4SEAiyy7e%pr&!(};c_pTUqogE)U}oe zX{J2x=pD<$Y)YyVS1iv@ad{tkUhMG4f&rUSW)sG0K1WWL5!)&3LLfrVfY8%lGDo2p zJ)3_%HOE|>ZDkP%-6rwc+QH8mjN?XOq^G6d%wf|+9)e83aomHtyTgbRLr)!bz0Di- zbqUjPfdDfr|p1xbh3iu3#_tG9z^r3ie^s$6Ap0_m zag6bTMzEbKjX=3YHc7-u1V&}Q$nt+JzaBNtf_)&+?A%L3#T~#tS}z}=?aF=}G5)u8 zB#^Ykp!hlxUo%x*W7qGX;Ulpuf`QN39`==zK0?x665LC{dVNS0u+b@lCvIk$6c!(f z1Mepsb7V;9oK;|^%3o7CcBDKDL z7Nkpdw1lnivQbAiOLe^gBb}7X$(L0H0>?Z6!3~SjS!?O)m#PdSZd7m&f?O>9NP?7E z?QGqp;Z2SbUaoIO4Jf^mMYU^$X9LRkZX}9YvN8C7MyOVdXk@^&9nJoF(Ff6_>xVt` zLl8o9w0%mOL;Nd9G`hhgnk)ob{U#%rOT$~a3Xg?MBho>ih;mTto2E;^SfFhvQb#&u z|1G7FRJ%?25o`NgHbNvyq**o-9oETYd#kcZu-&0-u*H68-HW#U)vOiKhT(f^(dM?M zXWq%l6@&_47ox2xsnB#%p)T4=@LUP0E1_dL*iJpdqO^zTN~EBn?GM#}Lp0!kZ@{!` zH&GsCyDKsi%i3h7ytjxS&l2UGE&H#EJ0-+S*U8?Pf|`aJj-U$tbu1{f&Ft%F9E6eV zeXRq;1kUGbm_|+u;?$%RQ&qz{AsT*m+TBw4Y&zn(%R(8i`SbJuN#X`WWU^^6plVdG z4lX9(Xp!`%Z6&?&(?L-*p1nr;hzYluuooJhO`af@eOaJ$eSDBO7x}y)pI||;Lf0_z z&bNKQ2oYli7oefk%#9ddVkxdzgzHuXFh!_7KvjFr*&*MUvm&^0Rz%zzuG$e4>v|`V z2^X6+hBTMC?qQR>n6rs?KO@XMnvdN8lZxZh@ylj(H?$cSZKND*Yav4l!P>6(OxTfv z8Z~{&#N7ASC-lUh7^&HFE)5CohiDl?_Ru9@RNFjgTW4nDI)3y+4Uitmt*8}J*KAn* zJC*&HPNE<+@3-0D1wt2cfrBstUO|XNB9{gQ{4~-pU^HsG6wUBuvwvR9o9iRPCZ%Si z5oU+@5PD^@e{$^+%QtpFUT4Cgdi ztcvy1Ci>5g3=%zKhIo!fWjGB+)G7XQvzxoY*AGuxM4ddai4ZN2!JTP}LW(>HIraN~xj zU9f)Q{PWITcTTU{IeYE6XjeQs%;ngp-r)O$2L(*<4B9}Brl$-|B0*uR$Yg^L@%&{X zNsY7((^2{^#>kt(7nM9bY)K}fYkN^<(VjLOvBmv)*yIs6#`45krhOA9cAA~@8_+zku27PYcZ8El)WBS8@@#4 zqSEUvyQ!y{eHazoxg@5N!JEd`1l_oEIn`UfL}PD0{i14rxiyhM!}R_J2q92f8|si! zyQ#UL&m1dyD~|&uAzmVnkTF9DzDyQJp9(9_67&i`tYPK0unNAVK@U-L1$-083&G!S zoVYKP(?iFJ(f|QrKAI(a*4m&>CGZ2K@7pl`#GSfL;1i!%2mhWL_?89(S$LgsLI8*s zcJ8cgJ7=_`&OM}9NhTtx0CTrq!GpC5NCWoNOy~K*to5OA)>{^PocETY<%r5tLp?nc zCdFU+p?-2ZR)^?_LBynKENxMT=#d&kmgcx?^4uw!JYTQixK;2>RdAxef|Iohl*UfD zL2tOG_c;3!MJ2CPoJ~d6kJ2jXhjHB@Vjb;9E)qM(1{CEu8ez4t`5YVIdBeDEDpH5A zzZV2c`E`P2U$m0nNKoHL_1})3mW7%NxQqDw}-lQ)0GRc;(1N z0BAAKi6duKYyF0!5zrRW&~zQ-{RZ+y0(mO#19?we1=-T)-&TVc)$VJm+RdtVnw+(24>YUQTAG8T zq1tJ_)T^EM)jndyFKq3JdbRUb?Iu;bkA)5j3lvDmb)Kq{(nn`a;b+SB^9@?y7u}Tw z=|{x!rdp<37F;XcDe1GnrAA$-(ht>2pIN;0gDQR2N9h6H4_WCKsPtpC(vK`&`eBtmXQdzZr8g_3 zAFr1_XQdNGfW@HlzziDO*+P#ER7q87CZc)XRb;1$qFi>Gpgm!An&B+{{GJQ7A1blqGXfyWGi=cpWu8kEzoR4*E`eY>`fz z8LVmEgPi#s46jq2hsahV+j|GA%k7tzQyl+H1m| z83HjA7f(i-*J+!T@*U!W=84gg<~c^~+I#oG2E$de!{>&yE`nq1hP2oQ<7E&-N6tUS zX$qU-(@FajsZ1{C4tYXiurq`f>O^=lV2TA+>%OGcNqZAv z2RRZNjQfk+vJn^Np04NKZ@G~ds*TylAPMAWWDzetr&o&Y<|XsYdKz#WQq#k0`>5bH zRuz?EP0`8jPbk>OtY}G;2$6y!>$2qUm=H`Wka`O|>za>n)>)bAoohkQ1b& zLEhx$cA_`9)(Gb#G$szr+o$#MB8rYrMhfj4*67*-ILekQY_UYzX$7Vu>jn|7jc44J z9P%u?b%-s=+^3$|q#m=hMKNWM5#hiAPX+XZ6AC^>4O5db4_F5G8c8n1vUO2mJWj0@ zmd`fc?Z@)b8kWyS9~rmu))C91+9)ctk?`KHjn2_*4w9Rypx=ei&9ABP&ha$`bjK`9 zsk;{DovY_PW_by2L)Q1V?52$s3{Z=!x(`4(f`Hou6 z;~uB`S0meVeFuvyC0gzXO&n*_6iX+kM@*co)`p{0HtXO1h29=n&0L?FGG}igvqeyL ze07bG=2nZ42-ZYK;bW=k$9q;)QKmHbNqAR)Eka&GB1-%Gh6nwSId8)BF9qZ=dx*26 zw&~nL#Lg9)(V0PdY*hi@abL_|shGVq5lzG09&3>EGDN$Kdp@i+G7>%$<}0lESx^qn zv#?OZ?5m?@uc5{kyB%BEhnk00R#9VV=12pAj`1azwCPcSI_+D0>k=(KSa0#PwV23H zWL1B)dur8Mn!T>tsRh*@=7aDvvr-+t5Yb2MeIf4-uN0z@OGt$?`dWL}8P(QWniW z2Wr(?nuDaFwbKi#JvwVLYj(r9PaUnpyq7Um2t*Bz%(#(+tXpZrv!1^au{RuwM{E6t%6${%w zRj>2J3bma;66m_W&bw-LTACSG=fMSa9?t7Lv`C#tR@8**VXJew>O65;Upr5pR&A%H znR0cW;7h%o`|~>YEK=umz0UnsCqXi3p#D1VsMTp{4w420?pK|VughV&?^ANi8V*f( z)+buXa_BVk*{i`e7eOo%osqldpZ~;TU_v|)ZT&Frslli;_&a%bN;=$2Db$@~&5zy} z(!{>gYW=g9+2eqqX5cu!ysv*AU0&@U0-xP@EUJ#njxR69WwvuqJ6D1(__Ctc`@P!U z6b5$;*m?uq(8gYFaK&tn&IH*)(07!5nQ-qbxPCIYa<{@q{8&ps z6U%FDonNlD63&Ex?QiSRT3eL{(Yl=O&AT64zt%Q3oyc*`R;Ld%Jp8t=KV9`?;Xei- z6vY1nngv*7f@7}Uh-20W;#sh5+*;_;J@yE@beH2dOEXUznli^1ay;sCR;}F9Ou5SE`9d8hU5>KyBYf6}`)z)2Vdck)c|Ws% zj-={70)Swd{>t~%Dz`NINF&B^mEYQ5`5Z4)`H^L!k%g5XxA%qKm|LdG3FbiJa~eRc z<+qJiTW)ElNkirP_(G05T#mBk^Ssc9hej8#{Di$PDxV)!<#;yGl_PzX9~h}tZfRyn zL*>(aA;(=VM_Kulul)GP;+5~MS3YHx6JG+e4fj?47`uOz1ZQbZkcP_V+0;1akMz@i zpF&yW^vDQXBB1Rau?zt zm%x`VErD4yU^CvtxnLLex9gr-yGTQS3xQqs4p0+jh8KEU^EP_7l?EjPPUbN}m)8|@ z!MkBKG~vw#P$VZ&?rJUO`G`AW)tYVXi8m48*n*0-dt?36=zZb>hXKa?GkSUufJa>{ zv56&uu*`w6hY32EM{&P6!*DV9GCpW!uozw&lkflRucTR++PNt}9hnyiY0M2F;R*&5 zxpx(Ff=@}Z$`$^oTx!DKoPoGlEP$!Zf{y2gMaPhd_5oqX3iC-pR=B%r4D}dJ=aQ@x z{aHu&d6c#x zcx}1QUm6JHhI?^{Q`Iaiu!LYG5SY-c$g`((S9gEY3MG>Xz z4!X&E{Zz`aeq=sWLuT$Z&FA5dCHbT;?B^$Pa}_Rj&E`}dSh9s9i%ZJ7H*(Irk;KQL zUHW0UzXl6w@{TofoP8o#4%cB>#B+6|4$EPK1!;lB+YifKHCRYfgXQ28!7@{aWf2W> zs1D1F!D2mq(B{Y+Zr=K+NirjNSi#MnFQfsEdEsHvErqjkT=FQljOoVo*vUi zZ2-WweDE=MqVJr@TET>V=FRKt1zd-KGRgNnQHt{Be~E8 z2h!?LYhx7pr*n4lU0!TejTP!@I^?lLaAMQe(&Xl2UqDh9$uCtRVA$X3Gk9q@#cGWt zjd-o{LQH6{X^nfmHqqpRK}Z}k3M7Bfw5@stQxf^k_IIcVhY8pISUt)MEH(L1@hW%nDcw&E^#kn^nd*{yhz-#DI({Mi6pPw|JSB|65G5<7q# z41>lf|2UQHDgSE}|JdIv@!2`@t*P7mnx?H*nl>6?)Q($&`q%Q=I3aFez}+|Vl7=h) zmMvS>XpHc$(HI(Pv=|B-t%87YkCleess+WV1NoA30k>mo^R*R!6YSuWQCPGS?~f=GAvp2sXiK<44{3{GR*riAt1sfO78|DwJY4>l3n6Y(FP-@&$HI6k&V0{3o<0t zP1)N%5bQ>-WHF<_k!3pakWvF@JDj?GvX~cd8ahv=4P8S>WMB97oZb1QV23uYj0Bp1 zBLna;B;_#TUBg;W01B14P8GiY82&6QcZn>$z_?=Nm5rM->T-}FmaouP$cdkR=+8{f?h}!QWK~=x4J`v~WM>wn@#@!3y*et1qg^MC zr_vBX{7DvOKUba<|nqB2zM&A&bGq5xH&KYjWuFhO- zqXqif-iy|D4I%lazB~^pQBFzRPACzJUP@8Sb4?2KJp5#3Z#4PT{#ZibWi{wFX}xxQ zaA=@CK0bctnfyGJe{21}@ioeI!RWHH&Yig6yz|dl*X`xkb1yjeg0nkkcN#rc@aboa zuL{Rku3noikH*JWjGZ>FXl(wSd8RU+dCt1?&Tq0Y)OqK}9b&fEuC=$VGl7jh0B4M5 zcG;#Pu9p}*AaU1MR3(R3E54?bihQ5w`+lAkCGqK#X_DB@-m)u^?1P@0`gN01m>(D{ zyk%y4LS~cEi4?VjM`M@!LZ!g>qzjEJg_3oNLZ2d})k4X-M4?2+2-3XqzUkN(G(_m@ z73i~Ra1eNoMX}jU)ht1B?$m}UITkf(PNH63G0%Z}u5`doP3rgM=wdNmHvn#a=lT5(Yla^Hgm(O%oUnb^PtKDOLV1U{d1>wk<_!<^K3{bwf zGy96OSx=+bYN>gryC8*7OO8FYESAbh1L~(N-yXF$pfyG?OwpBCSG$=!tG9b(wF9rn zLW+78Ccg44Vn#ZX-L9#HT1l(3`mob0L}EevMHUSc($8_s1Eq3Lc43T{{?d&yRxm}A zq8+09?PyD-&8=mh47QKhaW~US*#XRRT))I!C=>e;KlMy^Jhe=!XPPVw*ELvJ1inu6 zJZTS19K1#mMuR+(B3Q83&RCLALy;ojOA%)%dg#faX#S}I?ojmDca!PFQ_Cb25sLra zpol5X#Yj760Ic}MKIfE=6~5T#JU26W)z3Yn!6-YMHL&ynbhtAo#89(z6(-Vnq0R}+ z3RTPUoa$JiG|JsGX^XNTR?YU5&*DU^)q3gXKrh5WsRDg9g)}S`;DY@9n$IQ#BIz^1 zy`V@ZtZ08#TRs68i{>%+`%|pPyyiu7E67oQ6uKL~rEFZ^f~8U|uo0b{;(R`{taJ5= zX`D+kBsQX`6#Do(oe;0Sk^zSxVjm=ak1-=Q64;B^+kp|<9bI9FjqG>1%86o*+Detl z&J34dz?jQL1nP8PEK{jV?d8FFUx`+}S_3VP(F8r-`4Vc1p!KINBJ>)9Yb7TJfcfAI zd3m$F056OttKB-GBu)gp_MVU>?-3^vHWlHpu&L8(fnX8ZmP`52P`FGhE|0{1%^_R( zGZ==$)^&%fmatx}%HvJ-AZLdkZpG|*7eWvofcvyxO=3<*2Ydu@x{)#&TJ{`4=W9e%+AqYCX+?Rltp@&ns!R9KqR#-dl z9zsx*mCo=~R`(E3eplt9qJ!o zAMH#(ui;~u&Dyr|qV!9GN!$BL2sdijuq58?=!ikN&>D=oT!X8NG7KNK_j|rj@i6s< zOtTF9IZCLtT*Oerjp#vSZ=m#{Vks2#Q-`C)rAb04 z(DHk=R4ACymA#vViX1iG)X8aLNem#XPRWG-elehyTVI2TLv;+q!bpa3_ataQGMm+N zIDxLiF^$;1*9adP(~;x+9S<ltg zuocgTfGjzKi63xS)G(iH6ZkhqZWDNa+)S<$LZ-$1L5Rb82SG$suP?vCo#e%Or~J#lC^*{}LBI zN`P(W{JESA;G|`=yl+8E7vQ2FTi%{ft7)AzslW9|Tx&hTk=ARi09t}ATHKfgj-<`> z1PlJudK2*w1$|Q2WhkVBp~F|DJC#FNxt|=I2c+#KOPt9+qslNZgh>nn!zfGbg<%{x zPmD>EOh%&bYKFri(b+1AGFEqg3rMsucBF4`WOwem5-6n9$iuCP!L-I`h5e95a}8=?lBsyn>^suD5j$L z&G~2?L+`l#WQ<7fvC^@rxJnio@iK3Em!3VbVhQkoOh~`zh;>6rtQ!hqHFRu{bE9C~ zp>o1Yr)f2?O&{mq!0sNS7y7<8Y{Ivv{c^ganW%@E!K;wqBRMOV8MCF~-v!2f0r zi*tnP2rI`fq-5AFvD!BL8lhuK7|I=Xtt-Ix;#em1hl(&s%}jAvL^TaNvK0<>xCk-}hY~$jMj-!KBi)HA>ADe;(J$ebE;H64 zNa$*qfTjR@6_GjDPtJRC>RrT8)3%==PeKKRbNrxe_m^`41ux?Q_C?6fMEhm#47WaL zq%hi{?6^auiYQ%#X`&cA!)OsXmj1P9G0xVNw79OIMaEY+32Nqfl^5{uG`i;E4G^wR zroB#*)J4O_a&xt3|M;>_FQs9S*a1C%}lgf#?+a3FnD z@>>R+O4b}wp^__uS0Siss+0p)Ex?OevgWn&WuhC#)}*f+`3n#V^NNp!P>2@-s&Fit zt}YLqj;N5>LpenaR^_4NPzfg?_=v8M&x5*x;={Uv|NC{dacy)|w~H|A#nEwn0lSZK z6+zAG8IpX=KcCREi8+3cLtw`pfo&@ZY+GTTIALeD>0;w<2|K*IrW-ZrSSiZfKubZcinN@!gTC63^ZsbNc^M5wT)g9@Pr@l^~2W8nxzZi*K9UquWGzKWRK zWcfdX7_19xWrbXxERL2$jA)~Zke(~t$VS2uT6dV!#zaqyAyZ^>JS8dieg};LHa{Mu ze=?T57eA5TLzf9^aciMM>w?{%N$GGb>N5LCQd?SAzRz+J*bVj-{R6DMawK8VPPxfS zdW$#FC`E=?XP}U2&lk~L99_kQ)2Xh!B)AT!WpOjUNWZEZlme~!!;s;aokKYH1i%YU zDV~1?I7PHC0y4G-d9rZc8@i3eP6=hpjWC2yP@@1(=DQ5Z?ljQ4oeN&E(ESLlzg-k1 zX($GgIxVeR2=m2&UKqEuLqk8c1Jm{@u*_<5!}3>3EPpf%TQXlu=<8SnT4{c(vf>OZ zRlDpz+3D6SsHN5{+pnWA-)R=HR=!y|^pUg8rGGX2l)Z!WQ9~T*?Q|W&=zu%51+lEQ zNE?V^DsB0bL3eD~Y_6J~f_pWO5M*0_^RL?0u>t;7Q&TQDwXUXeQYS!AlbqV-Sbb`y z@O-~kLhRG>idMP}7v>@+&YXA!`LGxEl0w>}E7EsLS6Y5j-!ThKusTEMRxReI({gjm z2P}#{@WX0+=xxYpl>u&Zhs*(<^;s?}5=$?j{SZR`n3hg4LZHLx z-K7Zvj;|4fQ_K65#YiHzq^jspkDF66rv&ex?ZLnZKf{#bw>54tJQZ5#)CkJ;^!Efo zsAX%V)12QGu9iel!6HwD7`n|LW^H7I8Dq-&lxVU6m?`Uh5xZ|jllqhFteMPl?#H^X z9BGMc(eL>4q@#4#7IWJfm(~^v$>X$QC$F_g&>N9nUh~2F8SPDSrlp+EFGZfBB8GXQ z>^4s*XbAymMDtmT6=Sk)q1N?P6MP_%7?6;&m9M0-9WQcI*75z3?Yc`@dZ2Fxyc)LswM8eqBN9ZMvcw z_UY;XJjiV}$E*j(Uh_Mg5PTE~p*M%U{ zFt|XwH?rFrP5=OzXo{6v;wL<)<}h`Bu%^c<*gOfQB`|JP;poCCUBR}|mkc%Yi0Ku`PLH$4ECo|za+~Wd zTw|WLmvW&`u6I_hhJ8-UPI70ybMx$Chuq+-ki1J6k~&MqJ1FX2UJb(3PV(KV5fj(F zx{3;Pb=_v(_*enEaW=*1CrZDBw!pi{^Qv;5l8Iq0@A5?Acl@Lk?u=>Lk>6?js-58- zF*{c={a08|g}EZ&ZL2)V>ml(lM}PW>iJ=Z(q;_)e@l(Pxk{iS?aPA44VEJVZ6*mY2 z7e_)p%BGHb%o_QZ&7!R1)T0o(Hk1x^+UOQTVT;KXQy#)C))YUB;&fYqGtfz*&E+!_ z%yLBMm=sPs&fXPHWi{_J@AKR!^W)iHy>V~a1+Dop0M3m5zw?*w)LC&%X#dj7|BL+# z@S$s8__o^^-tP-hmYoU*OKHe)=;m+Vaecw{CmZC6`|IY>If!b0@Ry z-*@>HJFdLy>hFKv^Iz}-*IfI;AN-*g{qT?c=ygB#<3I7@pZuwpT>sNQ^B-RNv;Xnu zZun0-cfIUC|NMVRvcElHC=ZF&YJWkmSm4l z+mll6O0tLClfLatvg5x~r2J1w_MP(E4M}#(+l%^sF3JAn?&9e`CfOhSUQy=HCfT2r zki9g?{<$pWKLF?L1)M*VWb+PA!Sd5QJ^U+q8?H~Xzbv0#l4O7Qt3`c3m1IX8xe4l@ zOtJ%Suy1;Lagx2wo`!!S$!=${y2lB}V1KfN~e{-Gp$jp0~FYXA2V(ibM#SIe@lj#qTf0kvv zfF815;Kc3hp%TjHCE258S>K;zM@yKmPO^K-lCMg#Z@ZE?GyCzfWRA{$orCgPs` z(;T9GXW4(>mt=Q*`*k_qwkO$_%UZJ}n<-m2nPhjBJ^kDy`+Av@Q?$SAY7mAwO#7Cy z2F}!;D^qe*_N(1DVfd0Hd)UGLtR(xU!9Ki=_PDYdq~Iv)6J^O4C)sDpvN$;VD`mU3 zB-t@n)`@DK#3Kh-&wk`JdeUjVo0II*U%n;(wkgT}=uM&_9W4Ek z&sv@~sW`s*Gqd)@!DGW4lI%SXsswgX&i-ZAXijBakYs=TC973WoZE+$C1TfoG-qemt=4FOi|al@WlsK{yyliquyDYWN*4h`E)Yx z@4m_E(tA$g{p+Llq&%Fp`p3maSyrHC?7|oz0*oJ zNyW*qfA3nOZ=7@c{`XiuJ#pgf10S`1Nx|bMi<*~l678M>c6K4+SeopEzpFPoWtFVi zXTGMEvM7^tHskDz1`9#$_U*HOXDK;$loARb!v#~8R~Q|Pi2SQgxGNhuOavoFWDqHu%_CCVkE+>U9T zqs?Q)F{TpAwj0Kiax!H%6M)_cIhdV^ELIn=1~`kZY3LjKPVC?~f{^i7*iB^iHMCOG zUf~(y2qJsMVrzSa*Qq<=UVVe@Nu)e6?Yk^_kj#oH#H!`BOg}7low^+nG_Do9Y<>_l zLEyk8f&3ZxM8K3@j_@?dX--@?uMW?hUY^cV^O9hU3-%rD*UK|`YF!eHb0KnsD8Eko zl3*Q|VI8LzWCQpWHT@D~%Zj^|#ogJ(-TB2Gg`P|P$gn&?M)pC7@~%-q?ClcCa5i&4 z`BOjBbmUaCc~5Dc43xQ$Ly?pj-F{3|nIhxJ&<^83bAvFVppVQ_)$AiC@a0?>6HL+! zO@U1AN~h#^U_8Sx>dm1$A4veq8(EA^eJv2q1ctoL#cO1yY11C#PV+Ssvs`t^Tpn5c z8Uq?|#R!s-;#KewcKYR9JXj1JJy=>}A+Ub484lTu9WH z0~|mMNH8H&#&*84TYK&woZr_Tw88{<%&!iF+Ok)p6FAtfmyxTB8RoJwCK{Ntr9w{jpSi5cyKi@U~{-#PhFlgWa7f0SKN+cX)_mm zw;Q-XU9hVBfAD_BmJpul&nfO0npNYJAtWQIVrVvO{RbDS8J&Mn=ouj z9-y%$r5c80hif|u8UX-8b5S6~qKf*|UycK9pVBneAw^A6_^Fkz;UbEIFn|nU(3IT; zp=%w3YQ!fMh2oKlqSb+WDHVlZ4VRBJQK4q!t)?APS%t!ZQ#IBd1W#x*$+eazJ59(S z`#!d)^2QWJV|fCr?yJ6M0t9l(8z%#lMSyn-`mP0MoW44XzDv0XievXSS(+acmA z?xO6o5iL8*xMP=(a5skr@{ReO?x-Z)NETmdsd2}4nH@tODjT14Bp{>+TbtwzI|WwI z(ZUM6D6AAn5XTBXC}tWg#azROK39~vok$yGrB>#%)H>#yqV@|NO(UZnIvG&pCp5!s z;aaEW*NF`+v@!Wq!$mGn6D|Se;8!s>Y@HWbs4J4e5!sZeS_xv-fEXPg%`-f@Wd{$d zwCrz9M(=a@fbO(m2s_0=q%bBbwbOQ+dr-jIME&8ERzdLUUjTE)f+$vECpRW)6bv}S zy(VmG^LB;ArHZC!Q8z7tgon-xb<$Kg2{bK|mF+tq!ssN|pnDvl7}XQ(XU%G5AJxoj ztTh#_>{F~l)OLU;u-j-5wxSN0#Jra67h~07TkAMhPajk>W{1_{kA)UW2QCzpgD5&8 z9hN`sK!h%yN_s{M4~?`6TJjuLHv*A46$7G!V5z;ygX6q+NfPU&1Igk&$X4D(dQC|pl z@cT6ukZO09qOq|tP6@F$H^nAiqd4=DXKx0%=j1m+Hpqge!v!@1i~;AAEGD}nUBmPY4L;>L?5OWv0$-x zMSO&e?E)%#lf@+LfCFL(XgB-8oxZX~=Bri)ki=|V#AeqPQ)4`o0eB_?4cY8TmSfmn zmezts#1#z7T41zj7&fy(^P72IFzhyj19x>Z4&!X08G&tw99Ji-2g}xgCCv!&q8SH4 z_Oz-&cS_S@uu!@a>eovGnTz!D25P;iD24i;&UR@7LVvxP|UnGzP0nZDv_>s+wW!jNj=|w<(-rl6u5OXD1_7#>tNn z)(}Ah78s(n)H(WY^GVmodt(44o`EC;Kq%9`nBAleX$O^$V+B+fyB^+Sn4fW3$2zC6 zA{{ggsS^$|u`FGG$ZA49!$9eesiS6H@*x_5?P7@!kr?_`zWv;$kUHcdBxEQG{>RYI z_5!VemHsV!WxH-O`JERJRMR#{JrKKUj;I=oN_;R@es-tDQcI`>i+uwZ$a$hOv>oGg zGxhPbj?1>4dLdq$+~vkcBXsjHJ=p3tHTr8ISvlHf*E6GF`;p*Pz46ZY_D6zS{y%5dV2l$qyb=Z1hPegH0Ajepm< z|GLa7ciK8sdmw$Z0m-P=-k=2P8fb8LHv}`!+IwerErkhS%IK}QqBD5KjUyph*LGG& z_*}^)_yJ5vNKN5Sw8E92{+;!*B!ebb?+1_Sve}l_OQ;%|^=Pop8me+T?^OU17=sQB zUwviFd7j7-$hsXA zj+@y&&Y9L86+?l&MOG54K~sr|aIzg5#~5);dcPJ=iPjt4Wx#WUq?j6Bwm;;P5f{^- znV8LdUIvK@agAQ$gp)!+T=5m*bi!p7q{8;Rjyk1r2+}DD72Xb}DseB7I&_SFv6A#N z?BvM4rh#Y@WUrw}{wld$)P4k;Aybi8%5s}jQqT|7J7@JaQEoZD)*%c8OS6zU zhF9~+Xpe5>^{^;!7|y&u(9YDNRTpPw`mxeT&O|lB;v~mrm*%nSQ`2Oo&P;V$7n2gz zX{Nht*G!S;qz1U;IT4B?C!)KWRLb>W6CRfxnaY03bXt&PL*{$)P+m4kr=$?}*ml5P z$g6ZK?cS#A*h9?(kuN0B~a-kNbZagmZmGjG|yFn`B6Qe!D=gA z&nC)8R}7|ybY)z9Ojpo-R98CSh^~x$9@G_)d01CE>@loEN<7SIjdy8Z7G_rVeCW+- zx1BSYWFV|Qgh1>E%x)H4OYV!GBz@TLb~h+?B5o8JBQsMXE-6LaC=$X% z95^!(H)OGEbortp?p~n*@DFj-;jsvrQq*bG-BFcJ)U`JTY(&6@y-sS|D!E)RYtidS zNBWBFEeQ{{sK*k9*nwW1AReDpEmBMxq?!V9qBs2jEfog3;~+q$7sU-^H`9ybcM1!T zx?#Z_Z+f{~9cx-ddl|6#aq7{syfe@p%*F4hkkc~cP$n3c$}#M;gdK^DA&ZoCU)-_`-2}6bEXz90eA{>gQ{b)F3U}TB zD;QJ0)bZx^8u=pztP5NxD3)+q-Ou%)I)<}=v)BFlRGOvfD;Sst*=?V{4U0OPZlQ$I zn_S8nrQ}@U>~^J$N!cWB5?kR`sM<+>khw2^Xt_ejo`s?UA`4r+@$FhYz3fK>p~%9B z4@-rTb$;>qo#|SsuKhAbNU|P-#w0N8c31#=N+LP5bgE|jEX%ax-B{@L)}%j|zeh!? z4E9awYgUmH7OUW)l2h7fM#2U3O>q@+e-Yr2Oox#ZLKnBQ+`il-z&wkGBmpE(kF;=H zbV6oyOBMdx@~c9)^blbOoEQc44D!PFgkEn7yxhBP>yyyTEmoWh4lA@}(w9y`1h9PpZRuQ#0z21Ot)-<`@45Yt`f1=ZJmnIi+ zn3DU%?je1nV4mECM~ThLhi_K7@|SU`!x91$$mji{Ajxj$8-*zW_M%|M@)yk1Bw*Q9 zR-hA3OgD3DIBnRu6FOv~-NA59H_!vgj@^jLA%5AsaK~;Y-vzmFVysiktaTH~rF0Aa z9d){VB$Um*kPGJT(a55NZs0AQ7}fwEdz=rr=^8p>ch8m(_l7owC|L;&@gPr%iwSlz@B7Y7Tv^ZRJEpnwbw=FMcTAkA?=TO_zKb2XI%kRX9eOz4 z-NQdc`xN_%EAD1>o}yhlVPDhWvBmpM6DYDie7`wHu%0>-r!)Kk`S$S#X?7*Q8#~V{ zvJNsOoxGLVaQb%wl!*$UXY|bfLwp;|hIdHFDUF*D0G#$sHzG9{K;1|qmhH}3KaXkQ z2FW}!YG1b7XX5-O8atFde)ewC4=Lt(+3r_n&)uEfc6gte(Hb^sp2)pL_zS@9_*`Nt7=sM(ihcDa2cZ^nAvhW!B zGaOAH!tB`;UWVJDsj04LvNK>}9XDgR4kW^r+d#GM)(6YB28gEY)sdfGc47ja!R>zz z9}p{Uy3bcS%sXTDl{?o5!B!d@xcbkQs-*FfnqYvc)D9Ez?}($8Q%B5W4y+5zFUS!; z0sWzMvW4Jxk_~z-9dY$LCn=216qV7|9P;qa^fZ$XIAvF`zPEvHw^lc@=Q7XJ9)zg0 zrxz->t!*mV%YDZP1BUFP9oW|j)YviN_V2tjY`DX=K$NrvEWjYcoq@G|ihr{jQG0LN>RTLv;3TH!+k$FeqoQ%K` zr{9rm#=bPSxU6Ti({F_?3stJl}m>h{rE7A`=Yh6Ac60XhuIP8R4!vN0mx3RsA z6<|U$gb80{UO&okYmh@8P&#`ca9K3vIyfVMw-Muf^q(DP^4chS`=*s z`(g<$wPGVHG*Y2)Bh*eSk;ZJS~mQ(=gRNRlbE2WSHE z!8o50*Mfx3E9w%$QjiZ)r=xtf98xj}_i-nZQng9tv7O=?>9O#Ys*|gC-iEK}HmC)< zBDaSl>n#EYe6Rox$d}qBF=--sGEL$4!7u*#Zs4_vppes=F$e^kafwZS@sO6IJ;Znu zE;9|SUA84XhBRRub|PU0u`F}f;#UMOMx%Hs|Ev-v`sroOyE$gT0nkV`Ey5+T-oz+( zV0-s7%5uooN{zAxs_m|^WTPha?X5+vXHmLUc-MR<;AN3!K4sEJ*`^&yveKoTi+5-7 zD>ZWLgs&vIv4cZ0Et1qo-`d2u%^x--uW}69$>Y&vW~Lvs8g7z+%p(f8UFB9L2iOXl zqcc0NMbo1gR-$Z#&TfkMiqV+-1dfaKzZoD+^I37WuNiz`8qQlE3zg9AlxM6r} zV=$4&x)}3^3KNv5X=LZI3_1!)%6M_lZA1Y}zl|aecqD{8dka%_(Cu?}XBY2q8?#IB zL~EhYD9L{PZ-_OPbDRKak=z@b8Y}a?GD`T-e2W%@vkf*hY7`M7?QPTrNg+wyfZYuU z@muhUk8W)0K1I9@2{SVr+VG5*T%4jZ;y75Z7(&Z}9yvM2t<`cE@<7<+)GyS<< zX z5-8P1GjSg;+GxFniQJ%@4Lk4pG^ZU#IB>v(hQ8|e$rz7nCmrBl?j1{B zqh@6@bA;80B3u2D>$$sogoEuG9f+bhMk~rjEB`tH`-ipN{$cAZJcnTSSHIY2D$bsiWr45+h%j4oQ?}+8 zvY&qbNU;6uQxClQML*uXcYFAnYZ>d)mYcGZ;conF2Of5QHtC7%uFty% znH-VXHR+F=5yV#n-Z1iA*h4?UNY1{w1ysChdn`PNZc;Gt2QIi(2E_KDL{N?i+I7N( zUlGB%Ycz@5jW+*Utw`}o!KgcNtdVSQElalJYuY}@|3ik4i!l?f8Hu(xc!Ln%KHxC% z7a>B76$VlEwj-<^i1V82*G_mRGI(?-s4PHZDMOTf?h7p8iP7*ZONg>he-yzHbH-KH z=IOBy)5o#g?E3aiEfR@`S->#F)1!ZGPb^><;ps~UtQ7iml&AT(*%Pu#DgWhTEcsGA zynTD`@7Xs*lTzMe`NXP*Rwtp7k2k`G7)R0D*1Hfav#a9FUXcE_f@;v?m{*|P+Ypeb zLa-z4D})&wq%WaLb)?>-!|BiLA=V(lq%Y}tD?5mda^=kK|LZ7X4lz847>?Uun9gZr zJ=tFknPXCEGRK_h10+0aeSvlx?p@8pguCBz^^H7yhqoP_H{Hn2aqk<~?4}F@ZW7=o zccGbIKi~noVx+CpxXk!6zg{Gs{t7EYD$rjsGGGU5875@FMF^d2-#2k2mrZ1b!Oko5 zi6%%iu`@f$dbwJnrp7#Zb(=}Fd1v;SIY?o0EE7^nB-L8%EXZW7S8wU{$!SQDY=~W>%u^qxx3`o3*O>=y z^a8Dg!XpH?Gks^610VReJj?3Ny^uck27uGw4?EGOu-%L0=QY#G8H&gh%F;L`gMf?& zq^`VZVM934xYY;FU$aa; z6Wv$?HPo?jvRm}SQ%?b-HrECoKqRAU+J=cs|FRs+Vy2tPmLRW_;U2A_7Fq)yWy_Rx zTBoZH<@Ih@`dIc2PS5nW$5=T<2MGfp1V^(5bI2BrqWI&<=&A#L=t~QDNbZWN!wbN$ zWf(!>It2z{&MXa}Tv%wdnGL0D}-0l8P2^DI`>NG+$&-3UcqYc?v+4( zC~s!u?v=o~NOJdzdo0{5?y+#M_^-Kp#pli4EAFvyueis;y;Auqfo)ERvxUg`ZpThg zYkKzG%$dcn+1`2W9$YxdFTmyCkp5-zMO|?PBVTKBgc3lsGs8KU!!Hx}B3bM%NT=o9lS~lJ1G-wK>kCFgQZ?Ln^R+9~ z1j)c)6hFVJgz9^$T=PP-$v=trn1{C%nzmPotbZ}IFq*US?a9%s2J^XZOOsu%0;iF{ zQFUNb3@$FG9^>kcdfND>OIZ+Pm*Pe2nxRROuSo8h++s3F^0$k!5RB&i091;{6{&C{ zhFZdbhCKLib*C2NLgY?P;zl${V$D|=j=%>s`L;W`Q-Y<1QxxRkQOq3?NsXPFwb9fy z(Qv!c-*;nax0jz_r)6?@`j+8+ln@@`BGMT$?SviEhR!I33M7RPtrR5bNf)NS&gjbZ zq+r|So47|-ZwP%67v=k6me&-X=k!B)h~6?Lx0d9_noghD8Fd|{tkmf9(AAr z;aH#ug=2w5nj)`J$cni z3em>C9$l7AM+c)JnjI!(L6Y7j0xkzvr3&%MPhcWua@sb!A#jFLDzCKumWxg<8ND{T zL+fNz2Vy}fs_SZPim9Z$#c*3I!@+VJ!F9sq_riSdRa8HW=5X3Joa5BLvuD%C>fTQL z^SwBO!Lsmq%!JuA22xdlUSiA+8)FXdatMS2uo`8Ivg(djw%z$fu&(K3&ez=~z+ECb zBH@dlji$u(?xrTFy~ntr9ajDJuumC8V**u&er!l6l#o_BJ0|j4Yz7nqJFlq%CRL9Y zP%Tj_`r!QII-IX5c7g>?Ia!42oY){6$S$CtVz9$prxQFmOPV+mRg2Y)Tx{DI2@O27 z5*kd&+mqu}sbIR2zQ8vw*#Y^O2KcoqvSRh8YnZXhfOTthH4v~#(Vd7LJUTj#Bo=*2 z@>t( zFr@jAI@|UXwjex<;YwyU^+d2rJV^#Y#wtef20k`(qu3MF#tZXli~2w?OvE|hCgqWx zQWcftJ-1U2pJ{Hfp)Kyy+FH%QVbQ9lp~UyQ$IMY6#ZSt0vBH_ez_hI@>v#)F1pB z?`AP%6v|B~n<4~oSw6CxxxKmW`hhMr;#fvNX94Ioy(n$coBBaGG zk?3(|OE;jUX4SiynLu1aVM^hwc*Tg69xSh1sS!n${+%jC{215p(;%vkHzv&<7|f%8 z<}pc7PthceZDj9!HN*PYB3~p;ftx-V&&GDU zco$Psmb}WB26X#EYEiN2b9*hHqE)Hvt*>YB-AHc%J!Y6nuxHbRrx?OPU$&nI_zo!} z09lzxJdt|1$u`iLjRsBQZ03db@X<6mTqRB&Q71J!TvE~P`e@zOxT8CP)ib{`WGu>w z*Y?n-<9v&4lb{YSi1X4yXr|ev%J{+2(nvpvUfC2*+Co71l2N&XO1`B~`=McGx%5o6 zL#RxST-Ix(?~mvSGG5mUWq$Ma`GhCoNqUiRqG6F-=YDjg5JuNRA~%G(Et*GbW^?ji z(b4Js%sXugUut9HrVd`~wA1^v06tHzE*5BH8~X^Yg-=@Ueq>AVe~xV}q! zvMGWqd?VRuEDL=r_lDMGvPTcIt}F{WLpT+d2f{u3b}dqA%U24}Dt#(M{BzwyK{iLF zrf1Vun}I6HjJHARY8S!9H0og3^C9LW>o#1&VSe;4p=Db-ivlx~10(AmbkY1l2MJi0 zB+$lBG;4#1%;a+;ozhT9st=fKx&9`^u&_K^g4b{`9WG$v+mnUq$dWKo#}hSZZb4?T z#a&glI8d?$f@)#c(-z|2L`G;7)z>Wh7Gj=%6=I=L-(_DuH(QzIf z2Sw8)&p3Q2J5<&lW;1#1x9RiEHcPD8*jYV7yoYqXhgNuZ%?O7Ch9#jxoRXymo`G(i zt7gpG;`hBNdj>~Zfi{Pq7uztJq$dGea!ZDP`fb)NnTt>^TD|3*IB}M=0aX_(FBvDR z@wQA&JZf`DZ((c&2l^G3++IfrvF2$R)$#NqD4pk4j55%4e^WFJvumndivh4X5myWW z&6z0BqE`WgTmrpzHYndwJ6nDY^Yaafk42!_%$ErPvsnzT34CHXD6`YPDSa18ePgg; zgiuX6KfjwI-rbB|WrctdN(mG5v83HGs-k@pD9N2q*GPP9Pj^LU%p^n$R_jm3eC#e$+Rg8Zw?yR`8t43oh(@BiHK z85RZNBS9379+1!IC=wlkDVw{(o3SDc6MY4w&($uEsDfU0Pur3Izv2|JdJr_QK-h$;_($Wpo8!hAv#wexU3dg#pP*;v(UaHyfK}2 zc23JdH4O@=M9>OUR=!qYgZq`dA3`S596W5N1U+IN@gEe&Oap@0m!YZ{WDG)_1KlAv zrRAs+2B!dIXa=WC=CF>%9oM#8LNh~Pjo4b(K~R*_M$U>tkm+%c=xf6x2cgDK0SNRHpAzoEOV-lfBP$)ZDe;aQKJH3X?KrQ2z zVXk2wF%#G+r6i6^xFEF393YUhFOy2GrfJv?`*L006sM}x~ z)-cl?^xEMU@#Z>^%?>6Qn#rk(eBgi>^%_pC?_vP~s6x-?LFnB6-?f0?f3tZ~u|u*9 z{#`C0pmEs9dEasS?`8qP>p~YW(y7K7n{ladPn*@wcfrIjunKlVkPt-4T08haHYP$8 z53enZ6wPD16f9Ov!w{)RgJ@Gu7ikd!&W2X<|X%I?`r8=zPKt4v9+x25Z zC)&;ss)I6?Bfckx7WZ6$TNf5Tk$4r#Y(jU4gx=uRSkWTLzzA`XzPCxqggRVip$?Iv zS|SY-X!bTl*uBW4P2uJ4qh3zR!+8~HBz;{yfnD3(*!oUg{O(y-B^3q<7>}-(-sV)iFxp4E(vfLR$O}md#T-Sc zbzFiU7jwP zNzKV>s24lM6UApIHG)Yi?+$$e;Q`3MRoOUQ+K~<9$L;K&7v4w$?Rjx)^#wcCWc#Zx z_7l)@pz=c0h|k5Kc+6in~KGZ z*azZBnBfh^jr(KshVmJ|%$C^N<5Ac_a>?|#!&Q0lP zSZI01lvYD=W#fe?+sl~Z6TgN>ekJk7184)#R4f?B=qwkE$38+kn`-S$Z;C*?y5U6J zYnO}0bLfr>I^+?*$N6n*-8itFX!e?djh#1|*sVt3Q@|*VP=OJ|7>r!|VRWm%g-^j| z!FBW@0J(+Zj5(?+x79(&uWUm`ReE6X=)BQBo|A1ZI6FefnreV#6MYJGGI7s7C~tFY zX3~#1!l?rV;cHd7Eo}iv9RvnGwO!RZ&s3re?df{E?N$}5^KLiVLWW}#KMJh|IGNsQ zT5Ou&MUjLuNuS&fBpB4cg|7cQ24(Jp$R2WtxG7z>!Ff75l#0&phbIRRsf>T!g`{oo6 zfS9Br zo26}N9H`Y@6h)}HZLoqVNoI>7Fb%EnYrj$^)I37|U54z1)%xfvjRUl7l;mu~$1S?@edw;vz@~7l*G6tJFVC7f zzF>bVlY~Y3M@;5z3fJ}82>w9Ub&tjayp5M^mX{nlXb{7*CCRLX&`kCsc5xhO*f7A5 z%37=ERf?~Wg^xj@afjZS%f~i1?O|`rvd6rP6>!2P+W}LrR_-?B7kelu14d1vJKUJ; z8g*}ksVcQZ?F@44LPzQe57_`95U{)#{oxNamp{9aV$3N#c#Mku_R9sr<#lofa4T`{*g*7h9hDCis*er`zKSPL>b%CXK)7L>>1sKtFnz(Z=FV#y?O*$@8e@E)?$c-cD za>WM8$S8;7~TTZQpr%n)Q# zwu6_9hnB38EnF14;Wih*LK<@{F%C;G$k%3>S^$R#VvKB?4ZxwP#zVa}ENeqnS)POn zvfCF!D7@8dDyOS_1Z<8dR+z>zDw7KaVW+Fla+#cxw?!DZT=zwyqm98g8eLo;8-ssn zFwe&IgwC$y`mIKHMHVtgG$6a%f4{y716Go zP;4l~recFeyFG|0wLY2)*`JAazE=CLaoyWwBU7sRcB6ZSo?qW&M^mnEXm;5TdSmdb z&F*SlZ*6whDBUL;T`c#F!Pm8?BiDH?HEm`00z?6lt2?@fy0ZuQpuR6UJUfWNYdchv ztD(*`db+>7eXzWJh@}o*WFI4&7GF}@QEnCcU-bP^Fe}cKBJqv9{J5wlab-2!Kbb8OM_49y-5kS zj-y!biHX>HvbblDw&MPt%KcrH`vcr-TPYyXF^W8VS+hP)F@3ST{oC^PYvt`fwS}@! zZ6^Zas}8pC5nTySp&eh+?Q*-F6T~p;!*;zi_&nDf>c<2T>@u(9l=S!h`lzn#bw){l zqg!Z^+vD82nfAZxuwU1jBLgdn;t$?-p-ZMfzYZ9=hPMlB!ch)LXwi%V?tOgFrHhY=-tQI^ml_m!G<<2=H#fh< zUEy!J1b?71gNws=>xvC{FW1gm!^eB|ifaB$uULH#F5jiw)pmQ2ZdcjuJ9WF#Zr`EX zGwk;5x;@=)XLQSuhZ6pjTU9^nVLl<4k5}+g-X1G&8FG1;wQt*DpZ5q?9U(ODpZANc zAJazh7y+*T?kl_JL8DLcrrP~J;85c}=HQ9$SLYugS_`?34<}3|;x~my2Td|ZlM;|e z2C;o^Q^dX8mKY>JPL42rv!y*jT6;NX#mo=pP9VsV&7Cpcjt!dlZe@=QNcA%lq2E3a z+oTSt-*^wgp;TJQKAL?n7dh#)xgkdCT#pZ7Q(1aU{AT)3_VN*cl+&Ssvd1mL=-zh~ z_9D_ldzQ<@BA@R~?D+SB4;L@*Ikb3i^gj=LtJ+6p z%ALy&k$SgoYxIzwDUppA?RrpGy6KqSN0{>$M~`ruA>~!)DtvLhINR&`Ni>q}(Z*mI z{#f;#y*Wv|eXKLc^EWaB?#CdL8~){6Ba~XySpzrf74`t4D`Ikl3Yex&?_+R~{V(#~ z1<1~;y7T=W=Y9I|wJgheSvu!PHZ8D_0Am~5N%Zx_#$1yd&yz;x$fBD zxX6@&HW<=?nKU4X00%mW87o8vL77Y^aY6?SG`1lP7!cq&wQ4$5;-+%4> zJ|~w)3VR^+K;u@UVH7e*IIjRrkYIQeVE%m#r(az=u^zk@uIAlSD6n{CNvNo zR2`@h=6QEa_2eq}89n7H_#=ACRq(UQMZayOtxN2a;OA=2UwK4{P8lb5P0zR}_+h3s z>P9VJyggFfe%NlA1W|7QZ`p2;9wKvDIj@oyRTtNXxvC*2{Pj)^#@sppa3$6Kw4zQR zN$iQ>lzfx%rLYIV zE%8nBYRZhB7BU%x4-DpwszYs@%irsbnM{x>_;5mdO|bALpMZ?jWPms-jp<~4Ke$%= z#~A=DhiQf7U}2DaL6b_99;6CZ8|p75yD#o-Nj}-vYsg(a)*)Gn!!bTO$*1~~AXgO$ zrebZCA)A;D?m!HMjH}@l9t)Q^yde0agk7ncUI@Z}OIPF#i`U`p+w23r5 z+XXOCxGn=63x#sl_PZU3iJcpxxr(EfZWbF*51OTf>msv_1^qhD+_B>H!Qj`l(~9Cz z611`YI+HXyYpKSh$WA^DzIF$XIT{2)>A4t4S+x#q6f+Nyj#DHs8WHwQ4XAfE=sH&? zZU){=+%9WIQ2uoYWV~bRTJoS}n}oH|(m1^jE?gPnui94gb_b{Q9-|8@8fzvkGqa4Z z?+!AqS>Ke_>rQDXBZAML5Y`$<4=N{j0*r;PbaJe%?Ge(JM}on8sP6UwL8g}mGgPkh z(-cf>_ejgMJ1azDj?zQ$&(BcY%7)ung#gl)6w0X>It7dCu!0wwD=A_>E|0(|zk6g~ zTmb}<4Op!O9o*mmE&gW>_9KFw!JvePxp%xu6Ydi4L=F6sT;K215I}IHkCVU3$gl@p ziBo~&mf<``qQe@n^oMLqIbTuu(+|C#+wFGy<=eUKSZsa@Cv>CSN{{^in2MVOm3h$2rn0$PpPbp%F~rdt|~1nD7yLARDvo3@4vMy(AGC=#JGC zJkx!C*gjJXrnbx~Zro*o7aIXn^QT@o^L0EcLfL39=egYt!;+}8CwSb{9lL|uVyVG) zvG(bnXPh(Yp0De2)P0I7Kkk(s_eOYP3RMvb3?#5SqV71&xfAD?KHg5?`95aZ!2#?J z0nuWm&Q<&vAuH0l<6i%~sAm@S$8~)QD_8%XaPU#*d~CnEiW}(amO;1CgZKglk6Y49 zgCFS=oQ)OIzxY=Kl`nIBJr#^v$&J#O9rOj;D8hdyUH%qo+f(p!^t_+fhl99sbKMi( zQG;|t-Y7=4=!Y!H7wpr)?9(Afzo1~JOPCOup1gPZ1dNWFX_;m$q1friIl(t=C1133 zclmTe^bGz8EUw|(Sz7KV+4KD+OL`=$^QZ@hWFDM*vrn^q;E>RRb6=KVu2l3CP)~lA zhEw-!4UN9X;Mi_(IsQEQ2ks7eW3wDZj>Udpts-3fv zH`$bfTD0&<02f}oay7wGR|0UCBKnA}-vz^g6eLb&Y~2*N6k!z_unET@_*7aeg(+UN z7kDO_@znd75Z{;iMMw*(9LHGJmAMY=*6jETh5LoD1g_>wZ>H_dT=7Qif`fcw8%T^7 z$GgPU5Qef|?0C45Wk>4p7_o91GQ<6%-7^Ex z4M_0*=@5+mn7=<**OtJC^<-M=o9U|sp3-IW+oIh}e^nq({+hlqNaF%Z=OyCzg*a1& zO``Q2;Q9c->a9a{hmwPJSjZSMq~;R=2}O^=`Ndg<@{?5UNi3OzXyKR$RN~&83k9iL zNYEophRg%w(W#14W}~DAQZ4J|YNC$Rcmw<%3QSo(+3dwixt@GoGn1w`J;}90iI@~L z9hDbZaj{ZzvWyC!H_qv3N~B>Weo!+~$ayOaQuOUVpMrDNEcDHld2w(I;RHLm53?v8OSN=Anmg(5X*NJ@9mr!QcFz!&Zt;sPwhOf+VR-K|OR)B+FP zWu#q+ZX2PSUolf`UW0xXxPM~ogZoIo@zx1qmgxTwjqT(vZm=xPL#VyUK)=9)~b zl;oRdUY4;j*q18{9St7OvV9u+)lhRMjN@3zazf)?$l|ycDrVLNIyFa(#}8=*$9)3u zrvyH0VSrazuHp(NmXt)L$zUY; zTZW(t)x1*BT)Jq3p)_8WR*V-ng399sN~4s;{t?6*u$7M~qkMU~X4sQ5C|4uW^%;Q+ zfsC$fpk0S)R^5KTQoAv8JRhFvL%hY1EXqN5cptqhUE7>ysChnZ>LgNg+F0X6Gu7Qi zc;fhq?s+76gd}7mx7KgUsoMp{O{f(CN8Y(L4~a)u<#f;I>lE`)q1(J2vptG?oyMW8 zlRRbOZAh7s*gUW@w)wM=SG9S1!;l z&2M@iIMWbCU!45FR+Z`=QwDQ&OBa-gU;jsT*T40jrxIvfu~WCC?Ub-DTL`CF@%9=- zW;#Z8H(2H0Nu^=-A(7y3UXhL45Gx2lFobX{U33GTr;#_~oSQmu!mwUhjPjtpTMD@~ky8xALSXu2yz zB8hhnUVp-q4PK1zrtC;R^&=o3E<@ho)bGq!mql*!og4=6Yy)3;QG%pjR^F(b*Vw<- zUYduCS`P!Ua^|)E?VHItQqD=O^bFN~cg^blS((CeCLP?)0Fyp&9NmAil;@>#S3Q*q zT}MIJcptiSx&&Sn@F&}A2}j~;6Bl|B>$NFHM9MKEEHpxEk93t{bF*p=*EyApkez(b z%hRSd%IY;anWato+k=a$0WwY+GL-&D-oY*eQkVVA%sZNB z@GB6K-cO?Z{R3jF5JDy&UfG6FR=Xa!^r27K3O^@G zq(7&TEv9&L-^|LEno`QibXN)U;y(=9Mb(Rrw~vSsd6aj$k+Rl(W=8t{?Hv%Zz9r8> zFuL<`gZ5bz@^H@c@at)?tQ1dX1qG@6O->K0mD~?&XlqrDQwonT;4rPQ@lKw9%q@!K z;OW;}1QP0^z12>!#S7Pa%`4<8JmO;Z>}Hwn$dvkIJVYF-EpBah5E%q^ z4OO3Q;z@6l8l4liqN9l2Ht?xYrKr?~~jX!DS zlfMIWj!I>(ty={?Tv7XX2anj^TZy3Q$w%{vl0!^+u!%BoZnrA0mV7@)EgZhV@#eIG zDPfT23$|)AJ4i<73yLc_ik+8LhGJl3{Q!c0UA{fb!7c0 z7H#%26)_AF$X8U!-VR6X)y@v* z;z|MM*ci? zJq!%Rni0cis!^ngF!}Gc$%1vrwA#&eN{vRoY9{}Kq2&fy!;RM=A9J~($O8n7bm8Hk zAWy)wup82O5Hy=ONfSxLJEoZ+luujbvJji6IPR1NmyJFbV@`F7;Fx->xMVq>8`M~a z3596aVLIcOVSip-NT7nUblJ9CfpZZ(6g}1J=+OQ?BJCJP8SZ~;A(Fd&4 zTAfihP*I$kFweV1K4~rTT&t{z=@=?Q+pkrAF7s>IOQDQMP&x z3a(RQlnJc(3BUv8z*<$oL$+QpbyR-FB=-$l-L2^QNAA{S;WvFA+(WTF*W`gt~I7uMw57w7@@{f_R z541ik_)lmpZo;u!>D&HS#tH6E;z3NM0ZV0SVU(lUh#1e7Toae73Y~`0RU+|HYxPGZ z>Z(vJ)d6PpLiu9rZ_WQtlm^y2l-8s_TQjLsFVrs$4tWeubCnuyr`u;~rhiD4@uCm- zVc(o4zkw#xZCO)~#WVUsmz(;hpHtf|In5{N5S?NN23hSg!FshZDi=lxn2ypJ7BJtY zpgrO3D14d5?9DH;?)3i+@oLx~k8oiLfe;peXVY)+3W%@^--fzZmeSjX@=|xzgqcBozCZs^i zkbWt+atnh<14^4j(rsM_Dg&y0IdQB(q)d>#`05HrS>f~yi@BwPgrzwV&RgNQdM0n% zZ9tJM6+T&od$rrI!|UkP&V)ZC6ROQ$-KM*$lL4!Oc1X~*vA=5OM;*<}UJF4Dl?q?j zSdUm{GLj&~ZIya;CqdO2VcWEn8OU4-zHZ@`F#M;Z+BFRC0)RN33#67dcBTpfIFH^C_QZkH?aT(^)L_CvK1rK| zRX#Ywbdiyy%1AEoN-#ItnW!?MR2%qe98gb3lhdfA)~n<0E}E#IRiXkrXI`ueZKUxf z|6XXPGN!tg<~YvjP=^qM&)E?)dss*DvDd^yTpinM*|cQyo-HhxyfC%%rR@4qdA>8e zQ>ul!WT>Eb-pU1EuOTjInzhY@ITGcj9oNYPalgZ8WO<5I8E}Vwjny-ESxeyV?R!EO zKVk1GfnXqC7v@cpAQLZyZs9=LzhJfuiLY4_X(?2J>Wk10XYpW6j24+9gKu@4uz&z$ z$kdl*9w*QL7jWtYy=m1JO z;+v5>Bb2xsoDoWKRHc~|8l@vdD4Y`lTvgzzn|x2_10Y92W0d6%q#$9(Ai{E%qUMM? z?0kvX^=?F%E|GzjnDiE*j^Xo^QQgwx%p905l%is8k+4IXZ#kfKU8ni{EmX&J5IhPCB0C5c*I|6A5TG&c4v7zltrI)G!}%0=EfH6g4q*gSGl7OR z7IHfF^vA$1QYc4O(MBp_a1?n&<)Usb3`q@IP#ic~uOV6(ia*@S!-ycY>R2AnG!V-; z&!z0o>SnaHe&KiJnGUzFZ3jkPP{*p%U03-F*jO2~6a5?FAPxUFI@-ns$Ni18 zqv7GpN`jB)w&&f!q z8;XKBz8dbel7k5^;+_wXGr7bq1Gy<;gO zg@t4jz0j!BRJq_8Kh6cSKQ_5emA;R%7%JWi?zz14kP}N$%O!v_Vt4V*nJev#F=MZKl0QJ|BSvn&Qi{bYSQclEJewY(`KiY#7Zkv~-$MM%%8(No_}=j3B&- zaXL&>M^Hz}B;-DUQB#hYRduEOjXpV?XQ7LPjbj!&c)m7O3;k+_$P&7|3$CeAO0Dqq^IB7>}iymF5imfr*4Yy|^IA0^hC>6S|Us_DYf zok`)OI#Ro)T>Jyp5%y8GQIMCedhgFN`LZQ@yIPn7f{9Of0#+AJ zTZr4cLwAA{(^5rDR9vB=F>kw2sT5yOy0Ee*B(g2N!=fHX8Stf@)(9!dS9tFhipujS z)3G8~z@2rXVyN{S9ZuJ2WgMoLE0eamCST@Qs4Snj(!K*q_n@NRh_AavgW~g6jJ>zN zwk2x%7*Q1yz1*Z}6Q2g#lmAD_j>}7#W+Z7`Uaqx`p=L|hRsPyTqr~eR)4$>2{CkoN zh1tXCP&6{ap=_1fkhnavp9D+EKy+eEYxwDB_AKYEljujUB_7)3WVnuc06#nk=tA>b z2FVI3t0#JM(ZrN7zJx(-~8RgcZaAE<@dhWDE{?foj|iYzt~{ z?$e0F0Wa}~05vSf+@4Qfc}x60+Xc!Jzz$82W>JGqSzShrWZTD1RMm^)>mVEacI8?c z+cMrl5lVH1R`KpwT(J9D=j;#q4AjEFF$wsWyZNR`_SoI zt=)Hq`MgjXB3lF-@`aX@z-F$_eD*=?`^1cmstOBlX*eATO?wLK(Rfk<9L0IZ08*!> zr;$cVFp$s75~#g~wN1Vd7c`b{|8Q(k$y^0pHm1ZE9Ib4I-nc?%nL?Te5Nh6q)*h+4QlCZUrX*ZGVm%Ndu8j4U<=Gn({gqOr*N{!)dfKAw}agxJ9u3^CTGK8yyiMzFyw04@+1 zV}+^`-P@G3s9^1M>k@I6;(c0|gHTC{a7QOH!W)^NqfBIkCmL>Ro@1O0d(sB57STwi z3E=g_svLu6cyr21m)OB}JLwKNI!-6y?!`QOJN68#&L(0d5cKRpgM*?Pwl=e~3)W`Y zm~+^aGDngM5hgv4i|j-TrfNZ~A_%n=UBO-(lCiBtC}K@0ASIOYa=nvX`+1uaVKWFU z&NH*)QNh6VuwXc96O$Yg*O++O9fm%W@1`DQYNk3%i#xIk67Fq-+!M^aF2;+^yz(J; zGcOxoeChN(Sa>%rwVBs~)iLwdSD$%_6y6wuetb#!%nODWHGkwYZ*#@Wt9f+g%v%{o z6{3mPFwDfOa}Q`46E8!%n0SSFfevBX#9J**yb=RS6R&91%{#^&q)*j4g+0HWM*k#y zwNxmENunwF>6g^m^y?w+n|@i4F=o_jTn~deM>k7EA1Nr^(amw_2GB$#i?F2=>NF&j zW%aAX5=~FsE>p;d4E?8~G8>|h0m@fNCn+gFi81)iui9CH8JSP2GbRziiUrQ;SeaIC zgIq!_m4G~@qOe@&tDt^TcZ;Dc@w5^jVh5fYIZY;3MR7VKc?@yc;p%W)Zl-eX4(^h2 zWT3gM0n}C!tbom&SooSrNjrV#F=ww3m=Kg!(Bo zlC%ssm(~QkJZ&bES?qz8fUvNv$Wp}qBgnm;ysHhrm2IvdFp@C+^6edVzz{Y194&G* zR?A_lwvcZwht`}Th&84gwE#mfL5bg4&rh0)rM6>eW>%+Y-!JALBCcB<3K-2kBflcg z`f824}TJwtaRy4$O} zQQhs)ohh}RuDdb4+pW8Gy2GPCm^e#!Pt)Cc-91%zXX|d4?l$OdTzBW_?kTz>W?C?G zzV0^Z?mXRX*4<9sZPDEh-EGxfPj~0)uB*Fkx?_D3Ol;TPcHMP!$C@OV=<1F|SuoMl z9qWT&Vu$Wn4FnT1j%!^JOvp7>tK?wfeBDWsop_4wBn(a{R{W5pzlmMCGa2itx|3uz z@ig5@hMKrQcM_T=cI!^!(ZthrCxK{UkM2zL*{eI#+dV^fVyY9*)SX!9#Itl~%%XOzgH}OllW4tlX zNF0pQZ=s2i;SP<9R-tHWa*azi!WERnu|p};`&BR+n|7AlR+)m4FD1W3th1c<9hD@T zOWTKHr#)H-oJz*TmQag2293d?75=oMcxe=yV1X_|j-Qxr*kUSBa{Uyq*p%A$3a_l2 z`(BvQEG+hTS+NKeTTLjdXbVhQc|LyhwtlyRyJD$aG?B6jajF#N;VY!e%2LN!YEWsm zst}#4viVJe+&A_or&yNn2`?DPi#b~=8N($r=eUGgDb7_PE)NgcqV~dKE^-OeIo79I zlr!~R&V`(NQRI+E+80%R$^PU4=Jh?{3kLGq{H6Ah=PGb4kWt6(4EikizmhXlQ|kdg zIjmU;9+#%h3(}98tA-RnFx~$A|975W3>gGrsFUp*6_R==OuvM6u6jUjb2`ALu)>pq zifDuTpd1jbMTeJTi#afQ(%O^P5mHBJ<{sI2q^@N##Z`c%TW(Ib{6;$bzqkJ`bQwf# zHFD4nPiBFgT(l4Ae(Eg;Ic3jjnAFG2`ljYFDH@WLLlra9!}y3YiB*#?$=afXici-w z6eVwHcH9{)g)fdfd2JVPr$#ECd5xa7OtL{G9{^1njg~<{9UXWAi(d8V=+}Fc zj-h8UBVCpE^Qx`=5s@IV?kvJ|ekMrXyT1L)uJO5|mTmBAf&)d;Ck8Y5;ek5{2copl zm7;Qs`#)KWsxDsNqBcN+KGaj9wB(_oXrCy8^@#=rP3vNSBo`fkg$|n(S{4o68+^zO z(h@D-1`t}{@~&(HLdS{utsWvRiW<+KRm_dhx$pij@I^O}sJ~BK9emVMe-Z8Z91rubBU&>qCT~wi0d7`S^oP6JSpfvm!KN4c30 z;;ABCs3G_vt~7|yRh*y-omIV;79^?-Muf^r?vSiVhrT%$UD4UB%BV*?o@F&fq4x^0 z?$1FL0bLqQOfps8*`fP6u@dVd2@kucCY<|_Zh3XIV}Znj^e8Ou6ydAVp~OdGf*i-8 zL4GREyFN${L)t!)6UDlM(eP1LI!pdHEs(!m2z&0AL_Un<_#npP4B!LXXw%7 zy!5y2GqHx?3l=g#O#xflw_43)(ABZPsDVHiLdst?0q{w6mZA`6YSWQZG9aLRK*;=b z#l^YRS$>(6+0$lJX9s|qXgT>brL6UjP8vTj(ymmU6c|VNxhO5~9}Vz^3bF6PkpVz8 zGnxQK;y}nqgLppm!Hb`V&O+ZA@@DuXiexUEGiF>xX5zk1Ee}Vn??L4muZwMr@V*xXZeP5w3 z6H?qfnZEmt>>?e@^O|6#HI7Yz>H8lC=ArzniAi*fvjn7H`3Jr>^RFiKFjq(!3{F{r+N{3+zc6}?^xh-QS?>%Y}2<)lVSQ^;bSzS~>}A3-P9?UL7ha;BU!#-?1HQJ?6gzzZpILxB zmzUs_U)Z9n_DC(62SS}Ji*AFa%Q*0HO=&3jDx&#jdb>1$ZhTM<&6p&e^d7fzf#JV` zG#OUw+{5vc&kQ{QS{W}*XVRiZADctKr9twS9CNlOyus8j1MpZbOvJ8}UYdMNkT!S4 zH$rlhXRu4sHIWomh##l)YVuinn}8th@LZ${;m%;4A&r1hiHE}E4@Esl=~5YnhE!&! zrdi6~T<;?E!M0kgh4IMTtXr^-UKZQ^W?pZXs;iB{(q(vEyQ_vm)|@I~-ONO6z5bBD zep>Gz=Wmq#|J>v2rvSsuo<_nmaPOnKmsm#3N8RGi#q9&!+LYQfLykZ^%9Qb^hA?K( z8bhnpN;PhQ!k8u@Fk!{vIQf)iSXz-`cW^w^=oIiLRV@W9QoyqA@fPOw36&*fur@iN zgHHa+P>e!2*UEYFG=(dPn4eu1#bPq5n6hO*{b2BJf2sAY?6wz`v(}UhD$Y-~(%?He3YyFKCHU_xk0=O(~i z{FO@j&Oc_qBryl+ekhGYJFE{lrLm#~EnLAR@1yOz;xcV38S+BRstK6#HT=1d($z?vDT-xw>{WGyhyGtb&;o>829flHk ziq`5otSPcEh_+}aogYT=T;9@MdwrgIlW-^pFwllKm8Mm%O(aw zbeRBf7gy$?szypWZ#B-^?;L){haiDH;X~}SGuBM`P7pAKi!h?R^U%lwrFd9~QAAT1 z$$GVDMIGZeO8$uSc9fC0wE;UQRV-O*YT+~c_+9>d_J6F}TQlb}sX;wf%xW$GEZc^! ztRj)St@TwlM6c~awPeYdWwVbc8lEVuNC^h=ozIDa08<4~h)qBg)+c>L0ZL502vM+| z$LP%pah-SvXG_6wHP{Yo>UNz-uyJ+bG+RnsC$c5kI&m6>Mt>&~f809pPNhJKJIEEf zs#zy$YcPDre%a9MJCRUet`jN0)QMu>$~((|pQ98H3&GK?6X*46!HQy!a^8tVb#h&i z7iOZNNm<&zWUb(rUC%Cm-ieQ#Cg&oltrL&c@=jcoBHon;)J$uu4BsWo=R~-orpBX3fSH;Z8uAU>B} zv4S5qX2pI)GbgZC8%f7FQeORlurQ+;#7Wk7X%fkVXibYV_5H~gJ*!)DZ9-jZkvXe3 zm`V?k0kj*Lcyk*nQRKQLM)h>RQW#uDT)ir{zG-|B0{#TaDRY0^bt6)J_I3aPx zY$7G57#z_mT(I9`@=miVkE7hTcIJiJfU-iDEG-`(AM{8 z>kF+waD>QK9e<`NNX-U)F-KzxTs97Q9}X9)$} z$w-PsX?>A2fL99~b6#wuv+@4)qu)Taxyb_SH(e8Uk+8R}2(53GOp@0EqcjY2>l9a? zYS>cWL{@6RYGcl6VM7qa=;1nDbxsrOwnKN4yXkl5o|+Wysp1KMe@N>luB@M=BO;C* z+gv)Ba6yA4Xw&dZuBMTDz{zF77^R)Xt_~s3qs;aqZzTyb!$vL$1@hG1xnDdo5Hm;Z z)NP8s8?rH2H=;ta?%gO=Rs*F{uSLo#-A+fhlK-wXyTq7=^jU5xRhN*dq{*Mw?&*%j z`#MQy?BCcAeo zBzi@FZVo-t%vbPGm8|CaLb5Ehd*%?WQ{(98g8(_$<6dL zAwfGudX5xiV1aU8nvnuDAGK|yY5Mrju8LQjEI2YI98`>yxlo9 zt4ey>m8mV^3of$b9su7DQZnlxt~6fr7;;m=C1AOmX*^UfR9A*akQ zA$^tL@B`8Y?g560BE7Tq+-4FCl1d^c_f^L;&}k-W$h8y8`0r7+xaYmRvL0Zwrfppg z7;)ARC-7_TT^l?F1xgwCr z#tW_=j$9u#6leXIrL_w2-L%QfI!;v`Bg-*ksOaf5`vHn3kes(?gUPxG8Dp@E2+!^3 zfF*+h{Z-z5kMYe&Ax0|bH2WM8E*mggBah08>#WyLV6z^x=|`v|!+y?)X#a1N1`32; z0;cq0?JlJ6_IHDr{!+IJx8RGbBC7CJ7fc7*J!X4)+fPv$luW5`n1~4ICEHT%m`E_1p(32OwiPkn%Yx`fb$tN z939lOa2U2Pn+%JO5;(Fjk=kSL_I30;e&a2+Iu)r|Pj^EhZDUINw}7bkBZeqiFuKz; z0zT4ZVLi+jS*HQ zF!pI&02v+(rIbYkZ{@9_edX?f6Q=!Z{D7_J)jr8K0LxfRw*e$B1{NHSE}%kyK@%Y0 zjY{9t$)tRpBIMkOYrtR|C)xhADl_k`CcpJ+3Ts=I?5=w0WD--94-)INxp>ivIUxKIQ0 z0CKtzmVW;&tWB)t&UQ2$rhl(JDvXQprY$6r^znntt_{O?Z@ydYTJ(jg+uI5Ye=nNI z-NCfRa5eoTRbT~VH>Bhe)+=^zQEZV!crD|bNf#QtRTCLv;y?OA4F_iY%bJb+QPqqu z7a5SGH4vR=$Rd1|xj5giXKtNOwKY(7Go_}X{7P7P02LNn2g06h>=1az0B;=Kbr(_w zwQ}+3u!Tf!m|5p7sq>a8qar~-GC;+4L{!o{B5i`#&O?#;VP>>Sdb@ka)EEURH^7QDtd`lp|U%;m-$KpMF!U*Z*3iqnnMXOs2pNw zGHF-RF9hl5HHhg%o6+UJ!sKo00rMzHnSYc2f_B6VGp4qYLB>Y3=?MhA()>1FTzkTk z3=PpUXUoVM#q~tQWI(NM5KPL&$QJxaGCzzw0wtw*F0{@dH=an!L#4{u!K+5WR9)o= z{`8tlGi{Z#1ooA)1h&fWh|86;3?@0*;K*6!37g72ITM6HxL)>oz>_*qoEzHjg_*CEVYW%?TGwBJRbCgO$RQRg0=RDzSdbW;(S7k-X%iYhZ8ET*rt zNl^hd#^g`rDd5uj@{7cNx-_pu##BCPHku6ubZ_;9TM^+#$=e*!$`Nuzy)h*%GS@pQ zeMGCO50M4(E1{Lm;G&O*M6aaqZ2vCZLa&;R59_Yu#t7=-9Gp%zj&?e5jv6?SHE9U* z&S;nwNSqms6OgIE#yJqE4APuRo+FzZN7*<4q5}W(O0z&3$by2u=rO;54i`qFk5UKs z;r=8${4(5I!Wg-f{DJvjF>Udy%|gw zI+$eq6WmJUaDP}ZvFDwYwTzTp@2Zw@e^ezOT>+C$|Dbv=3@Hu9O~uzq=ST}zpn}_o zu+KD#I9Fm`EjbHSOwm;$*-J8#z1+bm^Q1`j9fmg!z^M+m1lxiRnB@9!AB>BtU$)SG zl5NUOBV!m#N`nP-r8H#gH5ddPtTfKnX?(Mgh8o(qP%-&oN|fc=jpfjK0F&RtHDZ91 z-G3oEG~*Y;8K~wfsv#xBSjp(oC)7XI4>Nqs`s%8zuU_DAAQPkdN@;$_@Nl#S9sn1I z5ZNNR9;uc4ijc@)o^1JiBd86e9t-$6eV(JV+iP}iw`M*`k+3Rf)#{EmzV{c z#_BB=caPRF2?!H7TF-JW%^|E?DRI*IJ;bk8Jw1d!1^$8?O*O%?x)P>6ugbymWV1(z zwYeOfuoTp_meYAVFJk0_#Q+UEfN8KhanSl`QHMHE#!}sO086M4wtKDA?f;d_S+&#B z{$KS7j=zGZjZwyk67^Dthn8@~WMDxHnp)jr^wI@UG++D!EPC<#g&Hlk-L?f3%RV?5 zPA7Gt-{?y*<4zb=Ph!-Not9)LX@KLBbCdbV*OGS`5_iS>;1o(dO`v{THrNQ5f<~NlhP<)!qKKox zjdi(Y!=xxyv?|CQ<(>q#cN<#obOg&M1Z_gK*|MQ(HD?lzRtj3CeDz_IPFKH$?jg1%~-3`CV(-QDNN}{$ZUQLHmv<@Ez$miUC|i$$Ko_oYL7~oAv4L>+79) z;d`De{S$;S3+o^kCA8YU63qqWhUq5R-Lzo;RcX8YCLM-lm>&M-+kN~`-rwmT6vESQ z9b+K1-yb_)d~M~C?rWd^F;0hM4xyb)9||+11y7jVCSMskh|#V=QrXh0VTs_QG(o0L zbgL5u-A779p`U%aO06=~T0s6xM<5M6Y8kZjY$Vc!AbZ#b91Oby!uNB4cPL9|RuFQ& zG)01@APvn~4g^9TNtMZ-r!hQr{w~)MWZO0j&JKw>St3|(DIGoIOByH9_+UlF=e>MJ zig6Xe>jsLkuJ(kTR9&M|u*4`I6pHd@#g($$SRz1O!&Ux@b!Uv^N4R z6`>$vUf^;A4y0ddX~Am2j(}zAE)GJt#I$m70@RAPt5%V5@*^7TdjU(4wnnm}L~)09 zp%jg!)=A&?Rg_}3ZgfCvR0>Q~x;dEIqgMt~J_r!XT)j($Pn1|~(rRK(ICm6*wunK+ z1TC1P{IRGoVD=2k6Ncd6BFT1>9}xb#>)T(A2peWQHBh$J;WTn*7fCSi75j8^$Kuha zr;9^O4q__&suH7gzFFutC43+yJY33Xs$txthD+tD?+Audo>sp#vg2h%T+%0>d||X6hGJH)DE; zUc$=Q?U9-y=N!4YN zpaGL@eqS3xnQfdvqZ)QzPo(7B6OQ+4G!TU-a}r@RcLz^RK4BlObsrQrkwR2Sot~`I z=ucUxZKC^AI8*45tjB}ZIKV6pvrUx@qU5g$z{&iw>V@Uum z_V4n6!vXZ&qUCU)Mwf+)iQM4C3{e?UKueo4s8Re_o*-3meQb)2E(TFGT(v>ltcu2? z3n6JPm-L!)h~RE-7wbIXe0^Zv=9b>5t2qn(%bTPdNg#)`Yn>6?6sc27O9I%@8-$d$ ziVF~~qFPP(tZ20J=69TlTN_whFyZEwP8+Kr&0yuLLzt-0V({v?Uk+lBtfdviP=L9? zx?U!+Hl5vz(x$oRr(?gS<)HPUnx`gQkM`ZgBOmqG#9h@{MN)_N>kGUOrlzkc?K-?u zxLk{~2$yTL`6om1O92z0hrx+3jPU8uJ;aL$Bn>lY+5IyHKa;KT=JeGszo|FEIqds; z>u`*MvYGiroMzyL;fUPTWXWdhT-?`TJVMDJ6K&XOxt>?xY;!1f&pmfc=a59w4769M zJ36B*cCAmaU6_eMs9I*Cv#uCMmSiN|(i7H!M8?zsAj%bbh^$=&Or^GUTYQ5kiA+b+ z$GG7D`c~HBhFXkugh+UlWRhM z$LWk#J1odp0c-r9(HK>j?R<>N<&9YNoiR>qEMeoO9w)%6yP2JPXWiXvq_1ARqosft z=6DAZOKjpG1K-hO8k@E?Q?5O%!QAK^d(xwmjy_9Hh6)FMnod@I8k$_JNd-uyW_8D4 zNp<^P=eTM*pfi>=Rl85fBl9kV++ zH_)NV?eA8@VabuyU6U?A#|q1QZ}V-H)Kq1G=L1c*S`zu$oZF4PU<>mjck5GX-O@FY z`esC51+VB1Lx4=}S2AO_fE4}$%DbRW7peN<4k2-2AqwX<3}~;Gl9owRNqZ<8u>EFS z2wB<~i#BpeptngNssb zQj>oGS@Hl4kf>8`Cdu$(RF8%O9a_rpWSVMzKQDIcC5{d;eT!bqa3zpD&J@@P{C1;TP)^NfrQs937IyA)ZtV zqe(wQ$v5FZa%dD8Xp0$Za$9_4U@1Ep;4O~-WMu%t|tGa;uR~P%asF9lRY%ry6)QCW2=l( zb(+@R`l;v$_Gi%b(HFX5e0 z{5rtsXarZ%xBkmil6+u&`#H2DK+%bQe9RjubCZ|! zO{s84Om7-;+(|Idq^!`A6LwW@+E9sPk}OWk{o5h`*5paA8nRE)@X^-x$LkqcE$T=Y=);*xy@n^+ zx7I(yt9KtlmA)Zpg)wKdw43}jn$2pv(rUKqn7L_>rc}XJz3GZegD4Mx<6hR?OZgty zK(Ic9RFlW6-LS}w9QkroYRX@7c#u+FA&_jc2SJ05incs;dV6`}F^Ru|E^ok`(~Yv$ zqTRXeHIohOwZohTAoXJXrnLGz4WRTPv`FCeqR_TpJK&@fo|GyIAuV}NEaOO`)JAPn z`Y>f5`XNtV&e$R8`m56)J-($A-10Kt5*9dwmnrIzSAa(Xu6P*z;DRW1&0il|8AabF z0~P*x8VRTceuQRH)Ot7+m`GdJfKX$wuK|3?3Pu-<<;WL|5;%E{ikx#r;=hy?IcG(d zjJ@;9i1yVWn$I%IjSpB#8FAVJ79`rN#zkdZB*SZK{djTRiKx^Et9F-`ks<}3Aw^Cs zOJPBflq#1$XULa1CkPSF`|=73c?aSIu9nB7(uf67FZqvtLQ>qhloYYsHm<<1oZ5=9;m3VWx zrPBJPbHSDTPKH;mNDc!nCs)%JBMAfl7Yy8Sm!J!NNL6+(!`gEhQw9V-49n@jzF#{z ziHiaaV@lAjB!;MCBHALvctU2l-cvghc z^!9h<=@q9mT`ay^-2LOlvjwnUDxNKF{bR+m;+Lk&#k0kSKT$keJouBvvxR{_RXi)M zY1V%1h2zPK)oR5!&01Z&weyM$7cwRFG`zj%x8W}NEh(fd7OE@J%vOWRLZ3{5Qe72h z?ioxL`DE~a51&Ocwx|OTX3VB zkErJc9BnWhpLhP^1{Z0|t3hUeMx~Xu4<0 zWYJ6$=^p~CK!$S7fLDoWTco%gqu*wv(meA~*L)$Alg_q1WNjyp_=atGcp%P&UJ3hZ zO1X^!bG3gf+kW1Gk&AOaV>b#9$Y1O(+zk&S6b3<6uA2Je72GNy!nBhxU4N=Y8Y@&` z(xIMhP;_;t4&#gUyq+O&N%RhKe5kJ6B2RlXLVV=C@o)u=N92fn6v5N}iw+31kxC5y}2YRHX7Cb^D@2inU}czL+K}2kdLETa?A7`E9ym zg15{a%iJktwyvhaar-i^F9PZf79fEUq1>7Uv6;Priu_vmlc94oVa=_Dk%`$xYS4Ij zB7{=eLfebe5jPXEvuknA1%I%`a60rn3~3>`{B$V9xCSE;xcxdcOJZo$UV{(=m}bju zH>cZvBMq)n{`5S16}}w%fd)iYT4{2PuQc02YV&Jo>l>!o4=}rx=5ZZ_>l(1n+QcS^ zf+VTN1*44O3OxsIc(ZT6IUf#JH`{FITj804ycldFYzEJ_T&H*VT=?zwqrcLKY|n}YRWu!BK)F8`lj{PlW0 zUIfAR?fS@{M2za@&8@EeZQHhUXK-GpbKbc-_zQx{)~#E&@VDMZwVXG>8-!wa7BZcO zbQ&hFz@GMTDu1v*>iRyDzasOY{6XQ>8KN>o73Y4{b_ds`kz0PC%j?MT|+i(@RgBRopIzAD<9$+Y6ou>@}Oee`(<7{Ef3;2o7>Hq@g!{@wxSbR7c z`Kog1B!b?xWQOC97cxHQNxMSnwzyL( za_DiRoeV)7a3{;vdoX$G?v7fIjq9Dp3%B&@Za+4WA}4}>E9Ze=kT47YR(2kYqWy=$ zG6G0eM(i|8Dis>Po~1~q{wixrM{UvC(9pbUTV`MrSz}lO_BX{=hWD{pa?Qc(#kIzo zt_5NxC0=u>i`WI8FOM2SR9^;h&OoF>@FH}8kZZTR3WyC>LjF5>vn#6bgk9p0M%H<8 z;XQ=oh+nG?(^&x-g&`W{1+s6w>|~xOkQOoLO7$2B2Q5iB0c!(7a}Qg?F`8L zto-}MNdl9soqXP`)iQQyG909F6b&S;`M>lT04U+ZQy-Jb9P5}9nK%@zy|Tgx%?I1XY&U; z#zEgF-(BLZCyVddiC7EyEAr3h4|e2(@-ODE_b^6@uf#ZpoIj z*vW=xbwFWN9Fn?n#!5Pb;4e>nwzHV0?RYfPFh85B&C*9nq)pKo$DQq~XN;*+<~8{g zp{S%uyW*n^F!<7rO!vqm>K=77T#SGbakr{py*_SLAv zHL@b9?3m6amPqW8OWqQ4VP z`l^^_RUqEkH~f+p7krJbS><~luhjBkWf6TzSR1dBq^L!UgOx=T-?c^xjI^TzB(K^e?4fmNvNqNm zqnq8|rcIl+oPGA$I*f?RIa`BGXP+Ic=Wk>acm6L)hBs_Ll3mB&rn5F7gDP{v7)=*& z57rQgI58)EIDgpGPLJge8{6q4`NKKwbTNO}&`yu%4`+j_{9%1NeJp=CtDP?A59`Vg zW95gW{D5+?$TQMTPviv*x6_mP!%#atl|QuG>E!#e_OMmx_WXh6?Nt8IXs37N5A}9B zoj3LRmcF z$IYVTsbP~PU)&6vG1rI(j3<=}=96X|J39)mBJQZBT!Y*#Fc7C>1cZuX{}CNd=fFs9 z!v>Yf0x(W%R}RxRxL2|^9JRO$%~q>Y869nn#^?i)5MQqMXoT<877jciAQZZ3fvcq2 zEK{=?1cZnmNg8b?OLWuypBoM7I2yyF^)?47p}=;d1OSNiu!D1wNBjQ*{zgZ6??0^v zt#g=$LpAH#^zxh1p)0p&QcW*9kmA5?yKdv;#o5vB4il%t!P#e*aR5wxI1rB2oLCFd zl{kPj2N6(iA^4#*!B8Nm(Fi#eqA@HN8P^hmC#wxYSB4KVtcnrv69i${hY{%wa$F1# z8Ol>8)SJ`ky*FI}TN=9hWy2$;A1aa!lZ@KQbXo)qmXr#^uXtk;>lu_0ugAl{kx~qWohex4q&N1d(p%&j3WAy?xt1> z>F9r_?iFoRxhoXdJx~ z%OFEm-BwC}qMY7AaxKOg;RQS`7--j~Z9>0wLfM_KVRr%mbb{ZU_?6f7=$KA8#oF_p zTkmfFpSii*`!_H%I5nyCf=voyN;PQ>k{tGS@oYJxwkvmEi~%9vC?vEh&FYi@FqlqfC-b>2P?pE*W!r)QJZb zD956Y${mAsb_8;0Sa!z&HP|%tF4;e!o$Wfk!JYS}tcgocDzsNhwOSeFoD#&X($nXh zE6OhC7G*d?JyENrR_%tX*QrEuz*!Z1-ajbCnv5}4obxCtm6*4GWjQnu*!Y|CxGKSy z7mVa<1v|f*Qo+E3fn^OuWtFW~qLkVLcw4)mzP{3$;|y}n(Inp|rTV?f++st~x22Y> zhN1!@A?Wldk`<{8R$iX^>3hqi1K--?C~HKidvbz9?za*zp~Oqd zCFW?&a`#p7#NDJd0BnZ;VO(Z1Nq1`FoRs2L<34I+LrF0jSF6#pkTV)P%;Hw?RTRvQ zl~T#8@Rm}mRJcQw!q-$lD%%-}vVmt?+b5ZR+LYL)hBy!6k#0f`+D_Zt&M4jvt3;-)mJVD>ShNySz><5MJ1!ky*(-p?otD+9@AuiheCAndR{{8~Ug9jq z22TzJiiEwLMy3?^(Bk)Mj-gjks&=HIl98T0`G{EtFcW8rB`X>;l4}uajB7NlnErev zyw^K;bpoEYK2*}Rr`Fuom>d#kMJD>R#`FsR0>d#kQJD>R<`Fuq8>CabNJD>R}`FsSv=+9SQ zJD>S8`Ft}gjR9-o)BK(+A3FX!OA38dg>(6{9p~)$G0xm&y}vYyMKbe}@}*7XuOU&A zP3O3&@vx5P%(R(i zCS(R6u_IxdL(Ed)k>*tBB}-OoZDgBsm-40OQt*GPttgnaimAxwjHRG0#pBa{(VXT1 z+U5zHvY-U$Jd;^=j9SdK%wQ>T5w|ZxioKIv1nZU+LkJIuAM;u-3a z8nr~DvOsc}2@LFce*LuNMS;myKKDCW;AAs@A+Eg43AL{5bgCsZ((nVg`tr6ccb0-tG-=de{d!*9l>kF?5c+Oidh zINTB8wPGIOkZ$~Lov*BzjwJ311TpMU}R?Te74hdohRjFg=Xy8D{ zeyrs>wxDAVyY-*z$x?gLc}g#O@}bi;VBR+%gAZ(Bhf0qcWKcTKOo-_MC29vqCVwop z%JZYzzdJZq?uC5RVdLuX|JCd;yNA6%^v*)drpsWfES>1NOND_`sH znrly|##0$M5bgaJa21QkFmxqU#CGB+kR$h{0XNqM`2f0v$nb9$~hJBbnWt0-9iT?@QXf64;lE=CGd4{uZ?8G0@=$F-XQ}YMTRleS+40^TXQ2ahm~}+ z?IQm<^soe3t!1b)EdRXnFQ{(OF!%H1o|8@pXM|#vve?c!kz-BAiWf$?ZLucve6>zF zEt7Sgui&j@r1P>=@?tlec@fQ=U#-BxoHvlti)?5be0QF9>Ndll3QVbdwaE$%fGa0O zA+lP6%$k=-HM?pGmh`@eNg;og84;>C?E&tWj?0%biiV zGn7kUK8yK&nlVitkGO2cI;`A>AqjSCC4aVJKG)afwwCkz*uG<-Z?a9jA`OY2wvU(P zSiX;!g(gY>scKOjzx_iPJzedqM{ToomVgma#9=?&*N35IBKiI-v z$*4&K?9)stU7@BEF}GxjSE?KG@o2>8isTQF90#-PqkUTMQZ|$l^hdd%fz$4j-&6Ts z6dq4{Pvrv@{22|I%W@ONmDDyJng&iz)I7?!G?_-o0ZDM$tyh@Coc8bGf0tGX@bj@x zyf(?WtjA^y*1h{^lY_-&N2yi=&JGB%G&afe+V4z~2R&3;<7xKL?Ro;&YZ1D`W5!}Utpc>cfY|pFJg3_2kW!gVF%op1tv*p7vcf1dX)z%dPkTJANl}L;D za;x*CwgRS|ev5GyncX%yMg66DCw*}7~}T2_%)Q6vS5 zAuwlL3V}LAjz?EzeaiCA;&7gpI{LEa|ZOz?W$YcE{Kp|XK&|lP{(p$7^1bB;&#DMh;%=!SCAu@-9bxX zyLi9ey=P~sR@HeO$hm~=g5fDj7)54*qZG(Ow8ZxAJB*uc&9?84M{p#9SBOvT)R5TH z9ZEyCpmvGqBu~4M74e!*nI&ajp|76@vD*b*EMR>ZO( z`dH8#RqL(<3T(GpuftRn%K}+aA>b^Q1?kw3%(%>AS%moXL2>;#T%Da!F*cL|2dLMO z9=ebgIw>fye?M`1iQe&~+pBOE67FfQg|h&5(Lb#fODne)2V+KcudYq8c|$Fg&-3$Z zDAC=XbVC)#@D%o00-ULdyu zCZ6sepk|IFFpQB6;cyfW2aOtA;)Ywp!_|6)o2J&{W^Je^??l70CtM5(jYufN@#qou z8R~jWTZ)ORh1ml>#UTzbD<=d75*$njB;zs}uOKKsUbHBGE|fo1RU+{cW8P&aRJQ_j zO>q>+hyR{4D=s$Cms)p`sMpG5U-7=W;c`Ly5wxkDaAEwmB>rX~k_xxvu-oDzI9XOL z=yy+7n-_1bam&7OORjOU>71@{7;b9NMyYMa$?gv`85cawg-*zgn6}hEtoP^v8Ul1Yw!{>&0Dn{%6o>i@FAcTiZZrLRiavWj<6CFew(+#_c_yWm)mG)o}~9&H%Th zI%C}W+B|N7i-T`|BHS{TexbNU8SGakUq0H_>7fNQNibHD{!Hm`(%I}%t?1DY3liN?9(fZo{7a7X$e;v5p zzB+Dy`a{{*_OEIvuT8ga5NP&SEaB@+;) z07Slg{K_@T;)QB=T~&)Dq|!V2E~Yun5*L4`fi6*ih?7debyAWs0r}E*YYrPtUe4no zEAk`~_CW-3m2;AEavA!FQf^+o8+C%m6U)$~I(;{u4np6d3X5F;`gR{MUSzZeyhT2n zFGVjdOZ|;Ow{ur0~AU1dhLQGKsUvL`r*R zp16aX!g?+yg~z#y+1A81aoD2Hq;OjzXOUwu5;_8?B=4xXsL}rHpMkzE_1j-a0{mpK zddG=&p19*|&2)x~pR78McMCQDlMO%yK!$f{yudreSxn+T!_^PVO6Mon4eS%#3cI*#cmca%w$3Dh`BbpzoNzFQ+{5w>}&g9gp_~l z0dV`&)p7gNr(|E-za~Ovw4;23N6j#zQap!Q%2(4F<`d#9N{5P`k$?^b=eEPgvP^{F zu(OaY)6umv*`ZTwkB|q%ke;!6FEV?a0Y4(u8S^7wo9{)_-~D9F9^2e6lpUe%w)zKG zj6bi*#>~m^WTtt=ckI;qJT@L^M~Tz9V-IWW478Axj&!IuA_aK^%M`k56i2A;bxCv> z3ohU&lh6-x@dqJxIC^Es0xF}$l&2;}A}Cj;qncN5bCgPaKqtZw)VV6lK2|C;tvW?T zRECT9Z8x?0jtLWsF2o*VY zfvg#s0S(B_NPE?ne)jd6F>2Hh$<^*|T70zE1fFj#rXw}%TDZUr> zIT{Y0$d8@Po%umO$r{N5&Vq{zGYt#+*M2+})sN`6hipPfpBn@^x@z5r4BJ+8zVVDqsqq zH_K;YJ=AcH0xDFQ-JP7{< zYP8Rdi7jp?7@*)p&rJXP_g|YNA6%ck*pt55zxW$PRJXwQxHvkeydas8=Y=_KRGgWZ zN=@!!hO@;omRDH~BX2cy9s%BUY-3L+2!L3&V%d@4X8K+4%xZR@$dyhuN2eS%UTIb} zGzGG%p)FoTISk3;WQ9jP4IZ$n*+@03T0OU_$&E|{N(NZDWp*m7)w5#L;$?riP zSzri%aKo=V5a=`KP@wr=Uha!Jn&{po9FaT8U3hZI%#Py-J>*iL)nIN;-d967l%tZm zPToC%8#Ig;#RQfq6rVQEsWg8}MV~+>hQB&Wfb8WOaG%O=>vF;Z6c?DY#(C70!P~1Pm<)nS_xC36+t1p;#Yvp60j8O zH(?*E<7W|T6Sn+AZKyj^7Hwv(dDq}1*JCY7m*Q02ZBi15VS5MiK-Eql!jFugu;RFM zxrk4*=;yT+H|2QHD2)_qNWMZ)sZQ$%iJOT_3CF+Y%s=@KLw`@W6?YpLyt&)BljkoX zsSX#GpRa}QOmF+aZzbslTU1t~ec+SbGMDt)nG1z#q3jN+$2GA)Q*Ajti-J)IS;kuWZP-pO~WooBL-|!W0@WqL&6rj;K)e^AeVitG#J$KbLE7j zi|Jh3E)N1M5Hc6wx#lv?aE{Wm1SaV6NQ#_Zmcu>GE7W-iN4Z{>VVb-nc3j0Y#0PE? zZ&}e}&`Q>0uD9y0w|KvkbH3DD0G0LDi0>@6$!2gc+gNAm43jlG3v8>i=rf?s@hD!w zPH*vNx>}A==|>)AfQ_Ns*N|iHcXF%yp7rXd_5GZmNw1cnQID75@yY@*69?8SvoStM zb{@ctBKrKUMH1mEBq2deBw^FqK1K(}n~EejPD&(!AE>xz=uUqFhcE__MCeFjBwYCv6jtIIy{?^ZM>t$Y(&NfixU#62rz5?gQxA= zKQh)J9#|u6HsEYwsHg`fc(OHNB&udE;c#QktfB$kHQZg_CLq7P4F0Vkx!NLB?EML{ z{r;t|vd9Cg13djJ+p3{W9k6@ei$C#B$n-n}hp)S9>C`8u6Hy~#q{$cB_{8W|`FqL7 z*xzVj4&V*2tPZ6+U<`b!bH4Y!5j;EpZ-7PdUjk>L07opO00*i!KR|^j?uX~P9G)8; zJTG4G08Lj{%wCDgD#;zIKJ}1elA4BXuVNB5R7TM(U43bSLM#tJGYC8$#xMsFqDcd~yjK10k^tDE9-BPxh!JrlKn%O#~Z0up_udT9Xwk))UFtQL2WUH>3 zEsLz7Y=;LUR@BzamIc;Ow#mW36ZJK-WpOo>?bu+p)|%O}uo{fCbjgn=x-*NKq0){H zMzLtDS(=NkJs7>BNx%nBhej_j5~PH|*U1O^zeJVi<%?AlcDto$x^VcyLoPeU`e@kd<+1#7E5;d7P1kMb@~dfBY%| z5k?HgV}g+_+C3v!+XT**ZenXh``ka=N9+g@Y$R~fN*KohD;LksSk{gAajs$$wkpYj zqKK-O3ltMLy-M6jg1q`5Mw%8718kN%DS#%2Bnbc(c*>#&O}SlC%!dkgOc|Bk!RtN)d z2b@kaVjChf5VX}GEexc=L>h^4z(6`Mfd&%jXn+<23>cu5k<((70Y`GbzyDf$)voI5 zM>2W%IiH(>-c`HS^S}P@^bNDAkJDB| z7g?8G)_&7@;7_#PT9=dSjcK_xrWI<*n$HmTR9ii}@XRX!29}jJu#ie8tWuWzq8#t5 zb6y1BjPgL(@@$U&3`7$(<#Nxm`yZ)s9?4u%mNT60)TlN<-Q|mJ=AITOYk+u)`lK`C zZ?-r$)$-(G6KXBaR88=7?Q+cvr0w~L!!4}9NDM?;APufg-C-+`F@tGsUv%c}5XQ{d zpr&(!I@&g<4vd+xK{?P%oh|#k9j!DrK_4423)gF>=#p$SI(1IjI3TEWj!x05mXNC(CT$h+m;&?(l@Ha!o8wc~qXcDJ2jLE@_xHH+{ zcQiC3kvcIY`u_`eU;{x2FHKD$K&<^l%9UBRmVhq#6SKE$`KN3IyhLrEU@Ioo$(Q7X zoVF5Fr?`^6pw_A^%a}F*smT#k?M>%T-e;3*lZ)h#Fqu3%#2n{_n4>_(=h>lFVwLwx zhciBZY^aUT&kc#slXk}1m{uDzLr(XYrY#7WR<6x7K((FA;uO$ds48`4QP5tpxh@Xs zIu7BXQ1Zkeu1cN{4muQF8q{&-BA5xfP*9CyB1)y9_Kk6xI znTG!Yi`E>HAd2WI{mpV)w?OJR&KZk-R`&378xbB3U|}jCb?GucFTH8PFC4v;}5mNm&|D zmD9_7j>DV^L=7!K7sV`$7oSV_5?QL8vQ)vYZDgLZa$4_R0B4yS8ra*l1#@3XtJRF= z1|1sBGBZqc$!B!7)zxKtUmt7U~jtH1dn?dSXk zE>CTYXM4V)Q~}6WDf%tHLVP&I4VKIkR>B6+*?10>wGQ=+jO}Fz3B%8w#;2|Y-w4~X z+B$&DEopZfH6TR^8savDL(t8SW}C9r%h*>E2||QQ01k^X}VMU4V)qjU%Ae1TWE zrb+fr))wZ$)|+maY}Jd?T^3_y>@bB`si->{uHqE1++pEnh&X-50elpL2bfPJM`pV=B5wqjR@DJY`Zv>Y7Om=X8!&OYC zPnQ`pnTXHT12qC5`KU>7Qvvh%kwaDkw$XaBM;q~jMM;p zi2DHeqaDGf*33T8T0Oc-N%31rS?Y214u*vL%rNY6$wjf4aFfBIp!t&fEvI^E)8Knmw))2_Y|&XaR`ul#+5q&^`NpmX+1zotw)k- z3)t%D2U{9mM`@jzbU{E6?vY1IS~iTjI;dYgrinu4ZbRRcMR!N6n=h?9C#1AoHma-I zV;)r6{{nN>f2>lE7NwX%))Y$pot*?M3a06O=J{nRo^jw1cWJn_0TfdTYSPZN*g{rH zdxnZ6Xe-F#xE(|nnou2NY3mVnR|?77#;X62kO;w|RHll#eV<2t#U)HO?{+16@Z5ug zFRE0^++Sh;2Pa$q@sihES5c_&zrJ#Lbf%zFtogO;TC>G-jtucp?4a=Rm2&d&70wV}Ae4J3caN z$Zn|gCXu^^?fG)~L|Q9F^)Y4|eWC0&^mW}+Pv-!`tOcl?y&&miUPbG%%hIqIhoqWn zS5PWj`e}C9d)X@Fd$Vk*I6xK|5f!su8d6Dm)8TP;ahv_mDbO{WyLBsRJL$?9AZ#Pf z@I^c@Fs|mo2Ib3QG(A&}T~=)+wvci#XU>(Ew^V)e2m!?L{Wg;vT$o_5^kssxq_;VJ znK9$T<_8btWw(WdewQ`RaCXPPD0pNkXthkCLfbvfz>gcVr9+0_y+WW>`-!$y`>FO- z8(wSGbOUGGvc0-(*%(yEvPpvl>I@-Vzecd0^i?LpWp_m^eE^{J5HjMNRXM@p=JJWR zKugd@@LL%OWRglv-&42&^f9KN12Wl6jew@q9{YQ8RaTfO8kE3R;l33?2!?LOlyzL& zSWP`Sx8`&|w&lPRKL&$8dBa%%Q#k)!I1+Ur2`mf=-au5 z(9{d*y)6nxKR4)1XyD}MFz9d^k#DCM9R?P#<j8#EYW8GG@N^>tyc%PFT~ny49g379TJvXyZ{ZKP{Su^@UCJbY88vf zs+krJsAOgfEvw{;&2^db?uN=!v@Y6xICkdo3aTlP>dj&BL@|b{;m$ZH6-sf~%woI_ zElYT^C2^oDN^aRGwlX7T_d%+0e! zGG>+KDwy$=`;N60tzFw}fm~^+`#HK%=j5lyM0)gDF+Tz;(P0UOtq;3WdvK8)j%0IO zWLb^mScdB;Mz?yOep47t#DT>Z1&s7LCc@^AL-vOWU$ar#{oXPWUSh)&$i&~Zcamp=ML zl7#Q-a#jv+jJbx0UY0+E0mB$*GUvM`kl0+2+o@W|^J_toa&b_5SBoag&Uo`44zRNh zaI8V*4X(-;2PP?%dY@@qhM9zbU_7YRTvnz&pZm`+z+2}T}-!NG~%QWi1y?I~O#|EBEhoPV>=B`gHg4p=YB1Isu_3s^7EjG&i33*J%R8F=XT zrFoZ?3IPOxlUZHe@NhRUWlQxk+L7ker>LIL|1aeGH`;9V|8n*3oFmRf%*7=qGA!iZWMH_C^IPO6*JhK;yQJ zEe4VfTm!MM$S=|J%2$}_4wD@$McnFBDD=p@mJcJfEWlLzqdvR?cC|p^;33{~C!dBE zE?g+SQtTtHKEtlQY&Zd3Gn&iK5|Cu)yhbA9zV7h`&-l6aXyH=70Q-h$a&j8xPS zdu4!;$Civ$TeWgc#p!tmYN%q)w6yhdHos3pD$;vDF-B}@>^H*_I?c5Wv$a^!FQa^G z)C#z!O}FKMJ;0h+m>rH8VSsp|Z*G9*RNf8=6sw=~v$)7{Gmc1B?p_(VCz;G3ObkoKFvj<1$+Jm+5gr#3lV`Xe913{bILHa$fcmh{bkF; z_pg{sCh8R#h7P^?$Wl1A>?h{EGGfc2sQ1YzSluDf@AkzNXTndA{7xrLJZO7_#`@>S z<_3&)P$jdxe1An|As2+*>cvtPwP%HMvDH~-))IGGr{FFf^9peu#q_&aF3Rr7;1pcu zdxOH++p>c_(5SecOK-|4F<~xe9a$RnD?uU)7Cr#GO2;^Vfj?OJN{i{&F%5*fX0FOu zwb0|50>XzI0~A^AT-;fL}ent;tzAPp`Gt zT;Hs{x;Y3SwUmRvGSdHF$ZZU@R+&ak;$yIZ;URq+-H}k=16XXTMCW!6yQmmQh5;|j za_FX!*dG9UAZju~WgH|)Y`vf%kR5S8YU@H!R$CLA-=wuQL0f39)SM#Crk*!O4QpwV zV`@ck1rp<27AvJZEQUU|i__zES9D#76dd}f9l0%s>d%BD9Edh2p&|)t^_$MIVUT>7y{neEiqiWccK!0s*dVaHa6vgSt*`nq zu>b@o@}WfIsA#z8?ox9lI}ZXFk(C_v5I9PEaQyL$@Lvj!+Y;kw2QN5DWl-)(e?*>k zg_Vmr^`w8vlckk-m6mH#Q!<~PWF^dF8`>d!{{n#aC3o9PaHw#_1ph5=(=H4HSXD-c zZ!J{wt^X3oV~2a~P{)|fMWb>5gdWPQmEmqAGYdTEnLikAUT9xrE*iehBb8Q{KA$9d&(X|?d` zZY{h@hm0mb9yvZIg+%x|%$v|;3jD9_G)&1we*wzaji;T>|Alcs>Jh55zBscZD7M839aRcRi zRXKPMg1OP3A=aaP(gX^!cMoB&jh0JMwZBv*a<{lO?jd-0YlW@ zmb}vs?1T-B5Y22vDnH=LW722k)2Vxya|VxPUny3r8pZW;A;_Eq5vb%|k|jgS%?f&I z={G*f4evW)>%PN#OTMNb7_WtP{006;u_|eH8(&Z1=iunDf$ci6lzu<;K5+>9JsX9X zi^c3~8P2)9FwIjVdD$iLkyzmzu9e)F*)`c(t_-suTo+3`H!PbhFHUC7`srIjVbV-lAGvVIlQ$3a`E=SrLf2V*xNV0AxDx z={F}xr{BHfh9oWM{2{AwJBJKdEYHd_#zOC1 zRX<&H-BHihb9cNT8FQ!L26J1~aa2GRgCTngH|q4G8}cVez+l9gt!Nh#+d|nT8MD}HQxX$|3TS53(ovJH85KGoYvF?$M= zz1AW(Ag)1!(>ihMa6p6e(-{@1c*I`CF~<05hEQ{j#!tw{>}mocn_2%WrP`)DhZs(e zg|W=>iAK6kW~ps5hNE1^NcDx@Aa&AZdo!PVbK2fKfaYH)TvA|>w0OrjOLBs)A??Eb zy_XceYoGTN7U=^ey_ZE*&<`uuryfqwMl~V68bmwN*Oc1^BrsasX$X*l_InBiW65F{ z55uaE{34twYeDlq&euJKo7h-!J;zfRHPc31R%Y7%3Iy7BNIoYfueFlIJmQ(^G*u9( zhAwmXjwj=ETcg5WoRen`6;V z6aL@PQdVfr3Ta6+`H9>ZXBlHQc0b-NjF)Yx9DT#$s^ZJ#bl5$%9jJ*ybP3#A^v-o~ z9rUjI+^8fs7K2#fcN83{kLg1=4iv%yiNiL`x!CMU-s4I4w5cWO6w%n!mM|oBBOVln zxHq~9lgq6(G2cB7ST`zeTWTru)bgMvPHO7#nj?Bj_mcw%87gP7okr%#IY^yG-hrh` z(4I~sSKRqlIh6hRR`M!pJ9H-_dHaYqLO4GVw+^_L{AuKw5xNnZ%p{VNM_-S{jGRQ; zFZ5+1qj*wEvZ`k&OS1^QCTlXM7I@C{Oy@_&)4x7Oj`zf$cD?C~HzmBE8-b*`2gypV zsN@PIzon8@O0t4P?GyZ_jF%20N0|C(8eu;}I-}$1zo=}K{F26nJ~-Mur*-JrW-vFb zR^?!p_^h9!bI;7+R3ag)Ix9(oH%b~ms|hga+(aM@n+VVO5%rOuO4~u%){K&Hv62S| z=RZ287HWz)0fZz=l*xz$)H$0bzvZTwow6-fbv5sfTM$$3!1a#Sf$Jc^MRU?A8o+Hg z6T=?k%(Xjuz0)1N2DkK57jjBd+8fP`gtOO%9IzX6O0c#{*CFiN&I9Bdqwihgdhcv5 zW829axJ}J82@pg6C?v^m%bQ@PkB%CN)HszZG&gde7Me3jr_4YeK_8t~#F-?7f=sTe zk&07P_BCQE5d``o3myLfvrM_j&9`Ap&8(aKDrc9pwKJxZ6-L3D&szHgpaK2XAc77( zXFs3iSzf%)7G7e$p&K8@VHM(Ri zWFP?n7jXf3usld{v}8fVwB(=|Qf$fYZZuTMU|Z@niv=NzE~DJ%}~XB$z1 zVzUcl>d~3@Xn12{UDz(riclMR%1~SIVgupU9E!_NFe_AEfOR<}o25CYC0f78X=W->+|JRZ5rrETh5%1epeoN-DNw zipjj>kB#adPTW+`4-%v>GCTPcDYOCvBv3uTC)A3pJrni)HYMZu$sJ|o7lFrV9>z(V z)#Oj1%?o7<#u!%owhNyk@H#aLCheBjx#p7x%IjK0^vk2Q&(N#E&Uz*NWZ?jRIS_fM zCV{6TVh*Lme}z)-^)xkQ^k7a6od)Y9mudSM8B|J7BUf$oK)c}ZQJR2IR_yH*GG6jx zMNf)6ETgLX%AFEix~?1}>s&cJgrHBy%1M*yQ+5tpOf4Vj)mASb!?5L(GT^{(%g1LH zG?}Y13#b-zPeij-5S|-`E!r%}D$}8Hfmvu&8ecW1Y7wtsfeICt4@Z8`xV{bMw++h1 z8%aB8SD>WiFd|9+>$tQs-DOEYijMD?nzJLX=9G=NOjmQ$!gqj%;540Mnutj~CbFic zv${vGqcjBq6bM5$6bi{6AuaJS%Hq|Nc3uDp>?Xz}ha$>Y9xt|M>lJhX7tlv@LSpT< zfYA;O1JI`I1;1yvPtl>+Dztxq<-AO)vwgKJ0u1wcLo$ zuv82rWWdf?t(<}B@&6^95X9fV6|y#1g$A%ia8n4;F&vHiuul#Vs5x(G6DF2 z^Te77y`4gSj#J3ND&aGH(<|gl!#RZa-wX-cdIhvWW1S9 zDK^rZ+yDXWDa?=BNxAg)QAwFb86-vnROUmCmRHRI4K4jTDUFoYG*+Yzd27w*Y?4aU z4)2Fz>hVD@7QA$G!a=;3un~(kX1^5yX16YCla#MTJ6T5cSeemoyyq=0Rh=P&aqZWM zP%{HgqS5hq^&K<;n;U%)IpL))&q-GJQ!KS(Sv7{Zr*JyBWKZFez1=HF)5Fk=G$e_A z;|s%_W8}l$$V9&M6alYg&q$m|EjM<()3&N6CiYzq3pTu9R`@8S9hlO6#4B5(QL!0G zR{!xveu6tmg>XIw?-hXmO=xr=j3W#4h-Wg_;0*vQj%aeYgC}XlTRh1tNBz0nWwG%j zG;Mhcj3=RY8c!1`Wnv$kF zH8!5U_V3{xW5#C$ZcLIkp0o%N&Z+DiWp7s50V{h7Pq%nd<}6UT8LipO@Ob(jl^eBk z6S&dYUT-TWwwf+c?k<(|zt z_d^?SjK}4`6L^(FN`q1-kLw1iP)|G#$absK3ARvYVC_1cAPjW^BwcrT_ecg*TFn8} z)x?sm${z+t?eVUTJVzzWoHfb0IJDW`Z`rTd3y2lJ3)|8DyR1qckm}NyIBJj62);0u zX#_gKEL}zl!*(8keT-6>i-XO1_?M7Wq^2hwv-vcYp?jMG&pf;WPk_N{1s-yU_roCh z(QEJ%L4zl3R)p#Asch%S67_kGEN=bSII?;cM>f{xIPx*^5kFkd=a2w!OFK!hd5&xx zlA1{yM^=ZPBZoeuEs0^$he9EcB&}^&e`(AR2tQy(a-lu|BTN6*&eUemmjdL}a+d4J znJZlzx*yS8Zld-M2ypC}Lcg*`+ zee&vmCz}bP$thGBo59QJb^mp}oNYriHY10vA7miojJ0d5UHp|I3{#8zkXI3L=C9m< zh&NP=y89_NuNL7!Y190JuTt0^)FSB#p3WB~YxW)F&mvXlAyIR249mqKk*H`N1@R!{ z(uEN&i&njT4QlOh z0O(eybB>{o+HAS^N9%S^K*Gc9;fh2R$m2{^)`YYTW;RzO`?7$+ij#YlI*RUg3Nyzs z6wO`ZdN1d;MvkB}WeerVq1>qVRH1!&K?fR{pi8`y>Oou%LR;SNlFEl?mp9H!)hXi? z10uy)b|WxABW_t8?60}%w~w0HA(O*hxZd2p+T@YkJ0p6yxVqps?5~q&m_&D*Bo#!M?k-1n&IBhnPpnO@Q41|j8&N}}K3X6G$Fb|Y; z**48&mShPj=rKJlZ>-D&0EXe=SNxO+7Dlt;2^Z~WEvJTfOS_M5wNpd9MNW+_oW=YZ z-F6xSX92LrS<6T-Rac(Rve7-kjNg&yTGm|82A^tG||G4FDYA!V{$J zDLIeQ_o=iv2=+%%;8kKd^AoUnmENUN_zA=}=0=)rzWb_iXmLRkf98Y;zWZ5ijDhv2 zH6xkt{+PxuZnLR*cm}|cfVSymF$z$Uan~+$3N^uI?Fa^TldF?$&t)?Vbs)ZDBW}-N zZp7pcY#6^8qJdBXPU1ns$SLCV%`Ts2p4u=#3}fV8Ou2fZ4FlqfK!e@!P5iD61N$;% zJA^yY1d7>)0X#rpM1XN(K}t-~X*PELLIFA1uR3X{6Tnb|#9cAdb@=4>3$#-Pa#v8x zdGsj~U-1@>-aJm$hZG0wl+CW5J=;0RP*duNx3+@@(j7I8i@+~NNf{bEFkkx+7shRI z$TKw>kjE>x7|*5psNs-_HPm6o3UUV=62GkBwmF|IgA9j^eR-iv@va^EwZx%G{3`mF zp6n_}Uy}$zoS#zU0S90b_b()=At=?VDv3YX|Dg2D1 zA}|p?Xrj5eIp&UFV%Ly34MJ8e%R8Tae0%PVk8f|iG5jhjz8#;nv<~-=%B@Hg!ojj^N63rI2-P)!_0~Zwt&{(vL zRTk*2bZy$8o43e@6S>rBJr)VRr|{q)sAp4K8dQkGvc{*pYXlPTx7*|%9?XaOWsq56 zc&AiZ)nI}4SCOfb^DcN&@){^9!b*tL_iGgeun-zV}U)ZTFx*z5#sj5t|IpTmYY+j%RUNvoNb5=6Gwg++}K^ zp7bzyZRakbo2FXDIpL@1>SR9cHMDA-bTF-&hHckf`HuW9VY^mss0O>)IBXAgs2xI9 zvmH*Eiwk{4y7UR4{R-@FglB@ctVh#J)Jtoa#+7pMQK^%8&T(Ln~jpdDFWNQ*`$ zk7PE5z&~c~=Z?cOF8QRj6bichlCs28GEe3h&HPY4$Zae9SX+g64rQ$77%*6XxYI?d z!4CPWMqC`b#wz~6$=&xzdbHyKaSrcSxl;N|J;K zN!xB!j$w~h0o2PDMMS%K=C8EEods92g0NuwIb;44wfve$QN zdD``sXa&`oOB*rRWY>}QH~ABHBndS%oh9L^@o~?*Vc170rrn>L^@Qd~)@%0PjMC0N z1q|FfMaqiAdlc+@@*ddivy3GxpK!*$v*3+3_Wh?S>w-Lv)*SoJ?@Y9@??sjMh7Fsa zfpxQnW}?WdaXYvQD9AZP$|(CR*1EeA-C4JvN?^fgSJ{lZvEda-F!a^bPb<{RSa*j* zq>Xj^>1C{&$ZJz2Tcldi*^_ScqF_=_s^7d8QhkmmRoK|SJ=QPMv6RooTlhR_5Dm;L z`6J_6x7YIeqoX%;UA!M;cScPR_3(6>qtZM(rgJ=(L%BzhCwZnbZ#k6l(C4{;5)XHB zfrXklpj`RsqWzq4fu&mh1dnx1ooD#z1lorqWV2dV-Sblm z^)jB(5fs+OGyD`YoYilt`Nmg~tjjlUl$c|L+Ii_lEzmo! zbpR@my-3FRKsN?y?M|7gB}FmQ9VZlaI&H79e$gNGVo%{sgE~XJr|^4&%89pM*gma% z**vEPo0T8s6*;mG;Z>@<_!Wo9g}J_xX`PcT871@kpkt?!X;!G+H}Emb3xR573W*e5 zaXlT2yt4x1N3t!M)?zlf%=Py>Ekn^Wy3Rqv@Xb@_c9<3kJvc972P3$RVt*c95bg<> ziQRAE50Q)nhXBn4cL2u_N_I45XehGacK!10vK@Y@3H`?GE4Cq7@(ZqwE-?9hIon+))X&#_u!hG&W<6DOfJe z;6Ce%iy(n~@?j5kcMnK7`{(Db(av@0Ae;M~A1%eW|6|qMkJ-;CvYgw|cAj%h0$`}R z;scX%XRwq7f`uRu3HFNvOp!;@K$1V>bWRpb+9d|LR`Bj^AAL+$gf8I)t?K=%Rz(o_ z?K)c3TLC1T#lp_#N=4@|XJCDyMZD()A`u_qzoF~v#oPE)yq=rV>N}1ck*LKo)c1m=`PKlOmz&I;={2_?La#a?HNNr10;9@Muog@f3V$2M-T&e>7bSgI; zOI45^JT9kV+@53!77Wo`*^6K|bSj$_*nuP3{W;G4;6&#ENbzc~-JQJq0gSA6dh4+iOE zx}vpwxSaR68h)G#0~J{V;}z`%WwdchSGPOw{6v2?qfYvt=vSeTGM2$+X%3udjAJFi z*CB8loR-BWAJAAQY1gflcorMY{oxRm_{XY4RF==m1b-L4L4#`JWo~QOPRuYI__ZZh zkTqUyP;=g%pTl)|+Z+Rv;XxB$lEd zj%KN2=In$9zh?MlD2HCkzJWA72v7J`D=@?hzRw+w?e1d?~yWwgq05S$kN zfm&BEwrAU^13Ugu-qGN!HnO^fM-GWN2gMQmaI!yeY$AAEmT(^M9{%)$pW;-wr4-b zZAHes&vu9B4T$u_Yh}Z!Cbz?D_eRIFvJ{{!tio@#wmxadlD(ooIf%F;v_%FdJIO$2 z0ak4a`jj60MwAfo1U)){nr#XOGC*8sU}cNiLU=bO0}DR_7=*FISyso|86DsR4|MQn zcYxRpBZK9DS(%e4kb#(%(CP~+ZF_x>ng})-Ki3*yAOb(c91XNax*iSq!Dcjo>(|jh z-)e(T>ugCaBplje;$&}G(v3bBm5Vy9s9ekGOwvUmjiZG=cOs=l3w~xu1(TQ zEd-J@W&*GAF>gRRKIShsr5W$^mw?;ZE#ZpdL5Y{J6Hh3zGgRRXl5KU5e&uiy_&g>K z#8TKKU0|=;)z8ja;lt36KoU$E0ZSCPsCfsOZia72)GC)!Z4RVpuDSEHXE7(XBGz_Z%;? z&9%X4+>8tk1V$;o!4g4EA=QdbV?@C4p4Dw>jOYq(C15=xE}M;}gUUIBz)~g!JB$ld z1zQA^OS1;hO6i@WE+GTrC*?RCe>qEJJW+2rNXK7JI%jWKZL|!3{5G;Ak;VidYYO7r z;4g!Pz22tpoWtXU#48x8*#m#UVv*L$(%xyI6`1Lxa6v7bmU)=l6cvs#o5L60oG3J` zrPO5lic@8%PJ?JAwwo2YL z)XFK&(xSU5&O46OcLv9a>4J|a54?u1!LOkN>!%fCozfm{f#xj9)Qyz@{B+jd9Lc?z zu{WptLm4g5!~K^QWnHDm_*J+<(`NEbt8`bBZ>f?u`J9(!v0~89@{MVPbO*+|Rluau z(xUcO{D)4v&!+2#&}sKQRLR?Y=B!u_qxGwB0#+65zU7MZiKs)1qFTTxZjYjx&%JR` zRL5FxY%NKhK7sGW?J>#W!){P(i@dcZZD9hvu!Sz0@4fOW@dH;tT78^s;gk+^jDgt3 zj)`$xExY@2IU=0whN)z-``hcNup&08iR-AavRc6OZb#4*bHkJ+gYUZyHtw=Xz{Ulf z$9oHAb!V9jjm6`-tC40rhzk;1%p^G2Vz$Pt!VWhKfbsbt9CHPVpz3DSNmi`s%nlas zRV2;zIakP(mK_`?3UqCW_^)>nm$`kFL~IN0?J5zo#2lMTL6(zkPr1Bq72!7MWv z+pAK4PWceJ6+Lcb8I6*4rYx_O1t@n;rJOtH9&*XpC15@akaEdX zr8O5s>&hj=oe3FYIp3O87KYI+6%bWch`E_#CN4XG912cFWOjB`P}jC`g_sb`vO;LD zAa5xTIxaPVB$fIs;qY1XlXTMiJ@gWG*~M=;%aKp|OX{P!>}w*cJ%yPB)@5LIcrUM3 zmS_mo(I>L0IpCP;*lz~LV7uzr1`2}`iqJZQ@|Dj(C_k`@P@X{5(f7Cpp=iI!sgB^^ z&N{J*<3hDH2!-7^X^#P(raA&oJf1Bou`gYzL?N!|gxGqmaOS+~$cD9!uz1z6rsM0~ zDaJIdmg<<9jYb0bg~TF60rZ)#R-gN{Wi`2rvq-9{5L}tBHi7Oa#!7BO1?iMYGSLqM zb*Y03EdZG*WYRK^&^3q9$65%jRp2bz9}BJLH$>|bi5ci&87zj`q4m=GXzeYcfgD;p zi-`RClD(Nl^k~ug#zoNjnNKEK`ySUoYg`GB0ZR1bzDzt9#r~E=X{uCCn*v_Um!JA(9PxvIBvHl|JRt}%6NS;vVw|&fJt?#j8 z5g{s5d*o#oZ{qxm@uoG+T3ts_Tz3Uog1X~UEyk3~uw^S~Nj(V*cHRbLeP+{IUQlHt zGR8zcF0Ei3M7d?xLMY?l>ab~HjPO$q&v6J-2jg+ckw`+(2Pb$cICX`m;sSq@t1xx2 z9`mzd3E@crq%4NVI6;3FPo1PcTffJ6(`4wj|10tx5p3t$nCjH9J`Uj2=TSx(;DKwb zz0P{y>g7F!?Yg;lXA~EEdizS{{t8Z?!J%Y$WOQuHw(Vz~y<_J&Y#&)(!kd|a%zn=I zMFO&tCF(>j`|fT#p>|H|hx}VoM5R%KBT1=U-+rh$xPzn3?%PCss5!I)Iow4?4?Fh` zrjZWuZ*$Cym%G@(&`jAC%9z>f?YLo1U2$}9Bfyq>N2lxS z^`RY#*3VA8&5VtcLh>3)Q*K^MHBY{sZ{5IIScQDXY4XZum7`F<;z}&21j#PbZ>xkD zW2@o89nC?UGj^OVG-+uS$f%Is{JN~kR%=Qrq;r?)jDECaz{K{BHiOoH3&~&CWeGAl zj7|k5$IK}6*cjVDl){!DvlA1jns)RMhf@m%f&hMp{G_w9apz@lT0MJDz2{kwH*iXR z)dhCss&s-QR0)7Uj8fBQ!^zd`giEL?i@tkjozMzZ;3^Yi&X~e7)Gn0{qjDM$jmMIz zaNkeda+*y8v;Cm1?)~8$o~7xP@;xhbhuP~;n#ayd;#>8FACG3qrSfV>i(hZa30}vq zx3+Ng?cH&eHR;4vv>M@{bnXD!o4*M6wxe-M@xe)#!?Iu1X~lmtKUGOWT65-7Ff2gXIQK4J&^h#`W*<6h&SvV?&-X*tKt zETtXvv^=O=OasW&T(9&ZZDuSXQ_;yEnl*i*zSZhG$pVIW&A=R~7G&GfkYhGl2(pWB ztM}hV@X`^qxh@I>vOvCZZ{Q3%gyiL}hC@h@UCdKn>5p_rNG)0i^TZo0M3h%JAlX~q zGU0NZOR0nxHY*8H3|1yA!K}(W9YieNR`0PvH_ssl#0tJ^p`mfPklqIYXt#p7oT^HA zM#JKAS%x3ua+ET>JC`3bE_ZI8%V~LRusk~l>v5q`_hU}}!CxNI5Y9+UV+&m~{{q$@yftxex2easgka-DWFCTY4OR zW4H*@;UgH0A*HtN6j$UIJC)8H?4&90iQ91LV>2!(4`B-_^O^crS>2oGl5}YNg=gTB z@BJV=O^NrNYU#LSD|2TXPq|xV&$F_3vKOH{xUyhwm22abUsu^Kyiz#p@{Y`k`L=Mj zO)_UV>$id?L`rRvSvYHR;n_KtfPc9uh0`B~w;jCF&nwiEC`DLws}l&-&o9(*ys{Is z%Q?(mB}+jSc*~>2Y@epzYu?5y8E(caJ2BfF3|P!MLD5Wm;U?FEmi zi=CLMeP=MUeJjy6oSosE^9OC7UHVlNi3ASxfxqTxjLX%c1m}*GWcapV_{K|VfuC2& zirHxyj|`e1#=<7>jZz!P=5u)E;`axMj~800J)nz*Ct&NOuZRf?dWQK%;?Tg)v}1aox)bMx~HbdP^DOUS&+<+_Wi0O@F(_yI5;fu|el6Sg zUsP7MFS&2mW_j<-Whu(rzFdN^36@8x$H4OZEIb+siNa(8`{L~?mgi>_>aiScEH76l zuslD%Q0L589*6NW1l>R;Kang?>18C3PYWL*lv4tP!iJz%)8Fx*5|_g!iy1WN0_ilr z#x8_|3|4Oc${H@$9q z2~Tfsd+Bxh*0Gyv+CL(ZB#P3^6}uy+szQoBpzK|if`5z4Sp&3ZH8y6gIH#b6+^R49 zc+{S&HV{?~9K~D%_xVt>eX+4H(lN%^K2VgaNtr1GV%UJO@-$$~M8P#1v?8s-p!e4X zbZEJYPr@tN-Y1dYk#^=EnqTJ7{fkbBIft&)=ysn(&QSlYuOoo=c2}6?0Ct-i>ltX2 zTA!d-_vT3p)9#FTKLE=}YXjcTo;}+V*(OEHR9fun1h6nZZz=)Pb({d(s^rlm(r23} zMZ3dt1?a&EQXb8&`{zRrp~iCl&Y@1{#gwJnzL@f&$?lcMGgwS_e2ryQ zcDkGwS^k%6T)DvO=2cEgE^Cn4?5Ir zXV7wQ%4o_vue-UDFl)>?Io2DnXafd4*5;ff4N7;T32RA46RGlWZpvudww_~B`Bw2u zadxlKPefvYe;`wI2(#|V=LUDZ74!M>?%Y7^a${~lsZDbO-hVs1dj zhbMo@CU0JQ$xPTI9aedT+dOQP+Vqn7-u#kbzMj#NaRB=%UNX`SJY~f8ncrvSF6&Ng zkN?W~-u_2gxhJ34etVrILlNBsf27o=iOu)smkgWzjEId(3!Y+PLtlIR{4Sf{>tJig z_6Ph%oW&k2{~__sgWm5VCtzy>F6dC-Rhd1M>D+*0p=m4VQ15;_<%m4!wlAk3)UHCa zZC{R3h7{}W%h?>zP^9bS=it#}tGQ$3&dc`YWRH8*sdG-Djx6al>U7R8)HyRW#QC;K zG+b-v&g})q+N{uZ!(Ddn*5BViQ3xx_UTzB|&$;4oV@Gk{6;XZ17167kJ6_v7w|>s` z&8J;a`0@JA`nlKhyt0OR#&O`d{Y=D1Wbq0D4F+0Z^>Nq5` z=>E+Hq_7@YJjz-~W(q!=m96dJwKmZ@wudp{34e1NA>J}%_41Y>Xs9T+Y!eM6TiXJB z;*sMsTKaX7rR8uk2TaeGvpXrg9ANz z$bsHl%$a!Y`~C0=?W%I(M{Xw{gklV&XkG%`2bsg?%oxa*J_e3#69dVjVw$3Ju@VbL z$+MDED(m83vwhWKGNbss;=<7lxb8Ma8`WU(itDQQL6>8dgFWAF^}%8xOud^W&L z#&yFMKh{vE9b3BXsdnFwcYCU9VGGcK-n&Ga`2BdWNpZ1ZPc_IZ+f$9}%AyLtz&&8W zMC-5;u*F!(Q-mgO)za%i#7&^d`&HH*;aG(xNc~Nq38jpwJUTS-WAsZthO~BgoS})_ zW1URJk2TaeGc>`${^-=2#~n>{&!NP>Wu(W&Y3b;pCA;&}nMx!SmthI9CeL$sg7W)m z1#IhpR2FdL8ITuJ>xN}+K7^Qo&3GrJ6j>>q>CJ!2b`!xGTJn{|n9qy_W*YlpJ!S~) z2m~$w%ygmCx2tRPu@a3V;Ab_*(F$)XO|XU7c{TB($UyqJNe?s!Zg&Aa1- z(9RMLR~>SD@F=FmYGheEqF9?tpfoixsEzhHHA^VkdRS9|Qungdk=djHLr zJo1tXFpI38hZ=e_pM6;5@2R8sg1R}wPxXw zX+(JqbCbz}*yT#@v`qc1Ld~JNpPVyL{dPdEWMjw7!M5Ivz%Esh)z6;*8$W(cJo1ETs_c%(rpwk8ue ztYjs~r11vg^D_$d*tL)>>sBWqsGnb`;}Eoy!*0A^T{M+&7L1Csh# zc*IepLzqlJIJuoWk<`y9)MFF14M}r#0+Raqg*s=3q?Ju?sy>lXFEN{`;3)?U(F8te zd3$y_O`vX?08#x;6L7!nbeh2Sr&tp>`Zr+O5ct?GJiBNDcc`RNss~}&T@(0gmFt4L zV9q8q0ZKgv-1W2Y_%zrtnM@Oq@1Ro?@Usdv!{i(idrcr$GvKhFXQ=6L__1mNoPN(3 zEoRbsp@mPBCIIqo=8Op`nX)q`c35A7HRgP)Yy|WV%b&#@l!QV|n`8g&&V(oJjLEXj zg2*q4U1F{eskrTDM}nw5t+F}*WhtiCKV$NaKVKWeyZWZublr_H9H5!5D~Tub6(?Eh z=hDKq)|A3|5yR3B6~fOe)RTK$DnxcpAXg_~wx3_9<1qWNo-x@xX0PQQ@6d7m9?a&? zn20SaGVcMe&MxW+rY@o5v^gVu_}deI#^kFyIbwH%r;DaB$Pe1}jLCHmQgV$mCdioX zPOdh5qtpf*)#I6nHPC|}p~nGOQ*NLc?(kOHK-(D;Ki*b7+eXf~BI@&_I%865aYY8# z!4;pBGbT!(m|i52{vkf?jxTm1{UQ_TyEBpQe!IYl^xaRfNWb}R{G#$*Z79EbAsjI;A#1KwJ~6jC(%|k4OU@lgUK7{Aisb-Ono243ldU z>A9ML@%g!inr9}`Nd)s0i*%)LQ~>sg5ztEn|8^w!2FJ~J7$NY zHro(-Q+F5Clth-!R~D1ELGODb+mSI2aJxVCPwoQ@QVULA(-56-r_HiW)(n`$jkY)e zNfSYxj#J$xMY^0en`%GRZJrWK7UKgaODPlbo|0~-%>>Lng|Ck6*X09y3V&lTEU&Zi z`uM?d%)$islz(5~fv z9rQo+3dyK;#(W1yflBIe<9NeedbZ;PVJiY;SQC( z*mTWPT=)&1ge?Z=uJWw+WN5Q3URswQY{Cm*dt&Ql84>NQV!M7Go&~a8t?2|WfEE!< zY;#rlIfZ(eo|$bR*p8hbZ57D4$*DzG~*B%c9Zv^&4MzF*;E)tho0$usq5&O z9llh{V0I&xMhi(Ny%BUoPliQKx+fb+Swa~Q|EOCL`wi(_f?OeJYj3MkUYcgN^ebs}l5PC!yW zzfkAQkd(cmt~$Y!hoq>~mLy4OBy@sFH`h2a!hxmQgtAayP-7f-UkpDndL6N7KWPZJSSbsX!N((-VnL7N*MWPEsb;vRG|nNa=!{b`Z65I$r)gO{gE#Lh?*nPX^n}Agye<*p|Ex0N zdLe$;r(|MvX{!wh|DYWSL#8IOo_9yWwuo>_84^Cah;Tm#j~?Z0Dk01SCbbF+{hUIb z&WP|_oq&dZZlTVZp&?s|j}8s}4fhx=j}sbNF6o=W*K7k*{&Sk2_9~*%sY`>r=_ykc zUwgafc~E%po42cgL8iS|Wl1>BQcrKBDt7G$faTrEqmoR%~qv zqu5-^CB*;i`*4^(E%_z2ZZ{b`s^t4Uy2xSuJLp&UmB+YQe@(%R%dF{gim#Dblj~^6 ztch*xGHZ6hxcv0tf18;8-+h=2)NB(w@U8|xj}f{ev2*wF#H~s>0QlZE06@=L z>CgZ`Q8$Q?pcnNnpHbZ>40pnUT*WPyg1ebVI!pd!hlz*$O#>kW+mjg_UbNJH$AD!- z>!31jYc&b=WOnL_Nm&G9=WF{G1GUuG1kgVxI+^JH8tyadfe75fMQn+D2P?-e6R_*Z zbZ5Xi)j4J$oe^T;f`CzhFZr;pFTs~Oi&Hn04IdrVevKuwcJb|^bHzz^rQrL7!fcDc4)WJZwbAiL zXuOGg;d5y0d-Q0`*z6Jwiy?uIfwJY_&ZBYHivfD-m3m(r8r#JHndAVYOxv~~E?rb4 zlmzv&14`WNd z?C(N9SEYiFd!q-qH^@>1W2@Sw&}f>Wr{DLObd| zeRjI^{_B$D{bSXWeR2Qc;;%8(6NQ7#UdCF;$-Ap{nFf@*yxj~N@80Mo%@V?^cXxa> zm(}!&x_C{IeFrazU&?cdt3hVp3TY9e32Bu~LiC51x0)%S~}pS`vUs>T_zE?%%E)j7W`#zRBx6fc$K9n7RTy?2Dlgbw__0p0H$IS zVyL^%+r_wc!i1uXS4DNZDh>Fg#;uk=T`1 z(61k>t4rHT5Mdr|dc`}StWx#8y>anyBx;+F9JR5gU=j43E^=x2QsH!^0Eud8`@p9@ zOV-ORUA$=IuTdBJyMM5sFBA?AR^wuCREFzBQIGMY;{`d$O6g~L!oy80g7?RwI_)#) zV?gs(u3^MI|It3KXb&Y`O0P^rT;L0ZD|a**Ob=@lv0@s9>M|YvLXydGpzS^NFQ?&N zslV_y3hgQUm$Y!;VDi&)on&Qx(aNk)hFRYnwR-w%^#n%uj2ow;BP!akUBv3Etl}vu zhQU3QRms&LoiT9oU_0C@`ygc@`zlz1s&-EwJIL9PCK#(U1Yk3%x#|AX-jo~E`78DQ z);^EN(@~yJ;|&GPrg*34O%eMX)?y3& zjPtn#$<%1v^g9`rb}<(e28U&twE(t~%;0U2qo+ocQB1rKU>+~Ln9+*R7*aKT_QAnD zJq7+N7WF9V|2@UHSS&BU*-3)ChEX?3|FB=2I)P$3L|AjBez zj0o4-NZIiB3KmWLw<#zGT!Zu}nQx0pgH&3$`OOJDVS$y{8x6R2Sxr;-dTlUm?M#>B z*bRRL{h^Px1dgVc&@GU!^$7@mDz_A+YPxTH@Pc89)q?)=pMMl|eF>}58<*@gf0DtW zT3=)3!g@v@VEM{Rnnyn{$=05tv%&K}^k9+Nv&41M^)74^)4nE;zClx(&UE zx6zA+z=@#Mzkf5EXBuB44z7aLj87uT!UAOQ62HipB^bd-dxZ`LjO`k!u9*d+z&~?~ zWc6AsO(5*7SyxTMVERPx9W_7ah6pq4R&%#%ma`F~UaT7N=hqqWMXHT>W3wn5=n}=7 z5iIf2;$`-JKyZ=9pygjMA#<4%V?`}gYx*xxW5}}>lm*S+Y;4kMR}Jp()*0N@YA*;a z1nTPQ%j;Bssj3&V-X)b+_5Qc(RDYSO$60kr?p4*lu}<}utGdjMj1pvjXn~RMu&mbv z4pV|Fkkt~d@`fTH#^ma;WZ)Qel6SJWwC=`#WWC}?fE4Q-ajTjbcn=ugM)?kyOL0qY2v%T zc^yq~U$%Xl;5Hz>4Y+Ubeap4_21WHz@b>@jMbx*C|Gs@g zp6T0nzW7?|u|9$fLcuhW>iKS2_Ki0qF>3+7kY480PC%F3fyRrj&H{en2jXWQj-{-w zApOPKp&@g?VPwE@q#m(YjUNzXO<_qdhFp@bM$M8-pCa)!Fy1^HoPg2vB!57nIS}cMBxR7eEf@-7BBLXYwo$USm!g3-8@R^ zjW)?k;uqOBH{~XJ#tT5{o$8bJw+jww@fvB(7pL#}?0Y`@tNQrd9R{Csr48+}8^RKM zF`^f{8%cdz8Xs!E(TfhpRHk{}AgV{q>h((|$u?U=U1t243F>}9-*_%diCzX;xBktW z-C3Nc@nQkR_0_JxlnS8KrXN-TZJ;327Nh2cne`^t$ZV%oP6}aPI?dk;rPuWlf5~Fj zuxQymi5eI3Bl2TOeP6ith`@%nF?r8ap`H!xRBwhKenxn+I)<6q-@R1{#?1g=Uh`9o z63f>W0Qar|0Nh?10bsxbU{4MJz-)sh@gwrnuZ4kS)0d;b7Bn|~Kgd=cX}Qd3H&9pR z&2wNuThfSo<#@FiAs06VoKI`+y#S}N25>&N25|Z}1`Z=I?09s*@gwpR9S8%`oEdLu-I?6L?0E#{fz{I1iR8eq4W)-Hp*7LjxA80P2StYG#m>>1~Rz zLGC;cvjMqXu;k2pXL=mvk;KVwLcDvUm%=If(_#xfU(z^7puSqIJxxmm{fDJ;OT>MN zh?0xN!ck%i%@RggDeXDf)1B4L+D3x4KbP1RsB%DO%q}K z6Sp*RE8%}(!WWUY7@LFt54w4e($y&Qrdk7j*Pjj?Z0zDuJ_x0c@~tVosPS|G$7IMe zs9TXlWVHvc#P?aLkB(nZD5QlK&{U=Vborzj&#XVAUdaSwjlyLG@oR8RE^R#6+*+?C ze-$_P+;Rx)-E+kcP2SSDpt#Q_NL$Ub_SdWXUr~#wctQQF^pV1$13U^p_6izdD-&4w zw(E8oZl4^{4`>Y_33wCEIQ7zyQpRFzrIUeztThcl-LqL0y7%2S&$3DUm|$>-#PPk*?7k5&t&UWzYnPA0oE2Au~gR=U0FlZtOyS))?lC9e5{B0 zXK&}XSg3SS9cM|Qv4@ZpqeYb5`WD(|4`@qWCVtaxC=}$1aBGhwn8UchK?lM)5n3Nl z9%O&1hUynJcJZ6>>{PabSazYlld7tMHQ`tXRbf)+F+5LgJ=mmRAIrRoL*czN`Oh=R z|F35pzJvP3p(q#R>$le6PAJ@gbkO$pze&f*8_ z>Vmpv$axl0MHa&90iu_M)y5cKL^Xv20J3o4P?c*}hwJB#LpMpC%U7R)#?^BOs@MjS zG|sJ$CEw{WcRiNN%S?-vs#?eNlS7u32ns9MXd~j}{TMr}eR6>&-;WhSa8tCu24v(6 z*n+9ON6g=2Xnmj%Eeo;??cBS3~A-gV4#Jkyd>N7Fx4$6*VXWK^}QltR>(s_89x-{IfAdEROW zLyuZE@%Gg)mWd=UwO~xhxPbgfu{)HX6B(4B6Oq3%4`uX+#{y*{zUi0ign=@F!v3t|w8x9Bj_5`_r9t5a93nItWv0Yw=6ZD;yhH!WsH3QrLl~kTuy}`aYc>dO zIm)mDE>MQ_q2c{IIG>dv;ixNQ)dIIreB-+)$)gi@G56 zrg-HGMIOF}8iub`5!SVgN~C&_;mgrQhFEGqkW*8}GhB~Mdt4yf>Od&fX{)0Eu|xmS zqED3l3+r0WI@)}?TnRgqdtk|NK$zAd@^<5yo6t2de z_^?wut4JPz!{RnZ>w9idU$B2^p)5EGnqDGBOT0xB9kCx_>rPW->V&u)2C)1NrbuJl zvL6*wC+=eL+AU6HL`MIZox&TTVVk$`K{{hZiv#M8tsSL8>#vJS4xnD5V^cl4lFP$` zWD@M^qnSRalF+UZ?8OZB61J5Qc)Di?&FqEE@{am&rYyo!FOU)~amY+1;?$|ty~tMN zBI?2*cEFxQ*|tAiLZz7SupE4?>ycot)%RkkswvS@_!2IIH@1fi>BPvN>= zNnkcZc4A?a?4Zn^!g~l9)AqW;QIc^(C-PsP1 zS}jK1TGXW+9W8=CRC<86B#)$5LHFmRg6mMaRMhN~PoW3=Ao@DD3}0QN!s;Q^!2Q0I zh#jv){vwqxmQ{s^H~BhKt<=xDyzrA!sxL46G~du_FW~V^l&{MRKgB12_Y*v}r8}=l zcm6WQ$>oKY3d?{?8Es}PeNV)&q@tU(gju?GZ7OLjKPLg|vj<&x{U z@>nsay<)CKpW||wK~>&P5SYI9dPbTx#CH#GnmM$ zfU8Xx|DjEHCk@945)>x+6XHYT*aP?{o6MlmN|Og(}hqSc2E<1Gw4vuRQVbHhz}pX}DjKJo!oj==5Q}UcgtJ z!i_gXe5j9OV#IQYG|st#9o>nEhu(E<-26L563lJYzIyXnw;gGG%f4^1?>}@~tKgBw ze~;>9NU+(xO@;2NH*BFwaQ_G@%zO{PHrM$LRGMo+l{q zpY@*am~y<}!yoCxNq)IjACB|pjruU#Ki;@iA8zKub^36uYEZgIpQlkWfY`_Md9r4o zKd#SHgZ6nLf{YNG#eMNUA+(R;LVY+#NZunN`~Uy_4-A1|{%>xMb=X}I8G~LTWEqxc z4}E9wk?24E?9cqvPyWRJ`qMA{Uw-^Qy!gkie&PRo)t^OoMCUad_3Pv7;%noH_>t%< z(S6a8`1{enMyI2HiB3h|i@qC;j(jKj=jflJhoiH$@BDW3D=X1|kG>WCeRMMVX7qQ_ za56ObpI`Q$e)zf1x%`LzHd>Cp5xwMV(buDgqOV4O6J2uYWq*Zp^qJ52eDt~Kf#@%y z&qjY4-5)JRpNT#l-5Y%>`egKpXdyZteKh)b^s(rkXl(12U;0S&f#~`Fe*YE6q8A+a zVD$dzPovwTfA>HA;6;BD-5t$G?~2|T9gWg=M1LOL6@4iBaCB$%*U=ZEFGdeWC!+U7 zbJ2UFKaOsTZjJsZdQbGr*Ic;gf@l4}`Mcj9O-H{I{b4i{y)F8K=&jN3M>j{m7yWMZ z?r1i;CHn2?%4dH$dP{Uu^ycVI(Y_yf`mX=?|M|av;o$iH_41$pKmU*a^1uD>Z;Ym* zH$<h9vz8Zap)JXkFJZZjV7YQzxJ9}|F?^O^;PGd z^P(U9$EeWTr~To*rT_ZMr~N}z8`yF7^L`E$jb*`aeHM>iC$z8&%)CI9_7Dce!>*M~ zNiTA23qp`+jX9p_48hM4LLXtV1-&XcR)!@IcXO0rYZOf4BMCdV!0Wjoq~ryxJTlg# zLbE5Ui5t6+e1HHJiAn-DNWHq%LTKaLd0JmQ6@h%Oo)Z)FzMvA1@ZZp-#d(!NEDx}u zl~CXmJ0>O;j5+ZUL6&@wh^oEO>4b5?$~3N1Nc8zp20;O$ng6`(l>q%NQN;k`bQhoJ zN5_)~7)O<8q~o)W{Yv^toT2wozk$!4^gvYJi;| zZbObv3}xNtI1E1bZyigo1Ip`Rsj&Fbt%4{|yg)ODWHO2-hQ7rM9wbju#tW84Eo;7G z7Y@u&t0RA6vgfv}L0{KyF!I;(JJ_c?bJw1M42w4qs0kYwVMs@WurouVb0{8uFoJO_vg!Ss9hA08p-TN?&F)TH$*YZEaw#l~^|s79q#qmu4A zKyUZrktrW|MeW+SUa!|O?yqQM&r4OkCz&_aup~Y@2>|yL9!U0Mp!%ACaZwYFvBdiD zXn<{s+F9auVr^E<>wv|~9XG&vZ`7+Rh*{<^6zvks*7$}PFI@g4KPjaBAr%3T@q>Iw zm2VU959u#?S(53Z6E(Nz&}$C#noytG(&p*=I;w*k^fklNl5?TTnv9qs|HSVbM%+%q zEg@+-&2l= zyr9qj!e_ASVm1xere%B++Tj8BCD|3+?Myh*KRDMCqh#3!H9^W2Jl#An*z5zx*5Dz1 zI({TdrTdqGZaiLo(7aJX3v;vr*}?H9`wQp{2z(oYHsBZg++sdBC=pnwzaf&=k=_O7 z7S`&{&IQw5dbe~Fjne3+PF%Tp0I#flFEVIA#dN9wKJ#Z?ybfFh4jYu|JcOKwk=@%G znSiwM$R@Ip$@POvNc(AFWZ#VjzQ;OAAJX30+6yI`%PU}|%L@x43z#mtOK;k|yfBN@ z*7uoVTXzsi3)|<{5xg{_3G3(peS8RCtMFYo?iev@j*x492!?2yU2@#;{Yc`APC**R zDJOVioKoedwlwjV&u&q>vb&S}h%7k6H2K8n$){@o*V-F*RP9 zc81HqPukV^xYdBEmGEwwa<~YKnh>{|KsEfR9A-MO1NxeXvEc!(9wgTSbLczyK7Lyt*#qF?Kd6G&wwL*w!Z`UWmdwV1*R79^xtVBvW=M)NBk+lN3U0{R zIh*(5AOEu8$ZSQ;{tK z>TFFO?8T3Jp8Sy4b5h>;ulugej!gMr9|OiVoP5f#0+qtq3jr&tRvAX6ZM6Mxs5Lb* zxn2hz;rB5np$D|$C^03*(N4TSZOrAiBq-oohzJYy)5~J zoduaR;RT!OHF%tSNXRtqkmaEx}}R&_E>4Fu{q@ zsloa}r4lkL&Wgw8q(FooqC1LZyglsh~q+PgY{wUY@&%;qr5sg z=$Gv3GmYceAQ=B$TlMJxXRSJ09mWCo zMmKLfdV|UCcv_8}qOr#&{=B%801<{SiKfALO#d8)=f$66yIzfP;xBMrCp&=7Bx+=k zX%ZA@tx6ngEWcf*O_*T9b(@!IiwQUEX(&__tJYv(wYM9$q(U%uXc4~YWg32xAk$`s zb23c~)>V0*@#1Bg8DGS1%TCJ6G{>V&rrFE{ z6I1_SjQ7zmdhJ*{A3M@bx;e?+F5OIK7jjIVn51=>JTS|cJ4-UZ)p76>aPYj>NgVuk zd7q@QXxR9kJO@ASr74w18%NgW;77#4r8Va{xKw|^JkPd_`rr7+$@Q7#cCSQflZx_tPHd>-iex8f|g2;2jdkJ*$CjKWuC$xI9aQIyq)oSL1T=!oH5?o zhK$!(7mT;IzxLgX@zw(4wMGHo(OSlMX;BK}8Ut!s?*PN@O&nbx0ekMp?761c?ic15IV&TRcPstmT)9T?n0QJBcKHoZuBO*dLxhzp} ziVy`3QY4?Y^v@T|QY6j&K!e|Q$EU04r#z1gNI^{}18yu+i}$ChxE|j0ZN&1w^I~~w zpvkdCu%rBVV238P2GA`Vh*`~IX_H{bG$aMRJHLyAVQE~}Q~hHeX_`F*Q~+8m5F@!}K{ zv7@|>6M!*TGCF9Ag|9E*i5z1#7#ffIJb0@nFZ1kK#w^7sYe z*>p@zV<*F!;m|Y|q?QNay!F!JgqyBR#UAH-lnNpzr1No`_{zD}~k zPmqH?F4Hosq-Ch9%!>TGbTN;?e!@OO*~A`WY8}}|ac%aKV9X?DPqLV!3Rch59IT~m z0$>R%hi;MmHV^068%?l11fa5)Z57fZ_q-*Mg$rXz90r_9%$l#_uOz%vy_lw??}SI; zwq%=0@;1a_V9kDxfQ;UQd)Rg4IA|?8TL#;Olp)y4y%Zg3_p6FZm-&dXQ*Eiu)@6-| zNogCSLo!>HsYD_A&M`3tLgGX&qcWb&=+LE_!+iU^(AN1D6;|=<5hPqq?l-LtvvadO zu~@fbRtq50TeP7e01#wQhCS5FdkTW2X{;KJ_PszioU=?V`3vg{KgA~cV&e(~{=$e3 z9ON3(3TKw9Krbb=3uMp@9Qk2Cn~y-sBykLk0`kZyfHv5T8nMYr6+AAKhEvM#Wuwx* z++SkV%Z;IEW_g*@FQF`+&r1Z*{rblS2+OInzM*yf-@fYi>l-1 z+FM7OPEk%1nN<1dZqjt7+Tb@1<9lg(R3VJGb0{k&0$X#^bb6IEovUhng$$2}G?n~X zPnw$FSqx&fdTH^Pa0Ss|Uf4EidQUfLs&rj85lK_>72*$Jan|U~grN17&U+x>h4o@| zvAUu9W>xW?RrlBa*{g5!>~TB0dC6J?+{YzL#FHMR#f{WA(lAxZev_}P(yH1Csn`|8EQQ>#zh$Z#q6iXn3b(xDz)R7K@ z9piI4R}rSUuIb4GdcIP-Bgq2@C0smE1ZV$XT5oF|+K3%m z!tAu|vJ?;h35^S-Yl&yNY)fIBj89~yO9>22K4;wgWMxA`&(IXZuF|Me*@l{Y#$3q9 z*<*16c2H1U;24m(7IfZiM913LdPJD^Ns@w6>0yOu;8(HeYLu6QFrP!#-Qg*+b9V}1c8LD}QTP7wm0fkc_c{4J$vMfMNhZ^ospTY0 z?NmEV^_Ehm2;E?Za^Wgy^}(z6TAr)d`%L+RVo`ivdP!x_fP+REF<{joBLr+O5eJM~ zuc4hnE-esnfPe)96iA_9fGUA!l;{2VthM*q=j7zaw9|I5GUsHUwbougzQ2Dhec2&H zoFgq8Vm;toBmIge*Lwg8nRjb?TgboTD2>Lw849m>lQQ&u2sqsm`r0O}O$Lq6=ySC< zP;XFor8lB(e_*R!4(*QelFfzlN@xapfQnsehRs?{C=#MRaQuj^ ziEr4ODoM}rF1#x<>&nE%X7S`20^6^t{SYfcnoUohdR>xyJd@7Y@SD@=54H|Uq^>c8AjyDt9n0v@Id z^^JK!Iv@5WOqbao=Uwtxzr~+$bk78ZFUZGw`3+Fn`0Es(5)>x&w*=w9%VoF=vYL#R zh-=$xPfZrVZ|=QGfVD%^$79k;HM<#vc1DfkzW8Q~4x zwX0aNeZo4KX2=rDDQw48Y?G#URpYiu=~!U)=@R>@6?#>fsbvLT4>i0BM+%GrSs?=5 zRa)+XN)@d)af<*<+{7Pd@u1{b>%mJsK@VQ_3qjrcdm&3oZAWYuXOPt%fOhjiD&NqCY(e`rIf0If zLWm8(WyYj^1H`sk2XZoJetJ!CFPRDr}8ZC9?W{<%vamTG^l-#{^- z=vnb2f1r?PVU&?qTJIT=Ew=h7S)C+~fwIH3UcvM-Eg2rXgo4nBJQTZC_qW}*lN=)c z9vdd>md|6uBohIPCx+p!eE!+6N{C)6bHxMYnkmb&iQ5geiA-c-5);FI$EEF)!y{kj zWd}=d9VV-X0p2!Do?B<_0XmtQBBVe~*AmN3NE0i9N}3W52HKfXDH34xlSyXHUqwsh z6c%-=eHr8xd8#q(cF`@Rril!zg{hnNNzbuWnz*BPiDK(_sIA4R)5AePuiQ5&&<%DFA5(|Zbh`qFu=DWYdpmA(D5SGH1Vy|XvcKO=pXF-!C^QHd0St! z%qcx^b&_=Ihoa&$jej~QK64qtye%V`r%W(6wp&YrH|@F?Dz7b^fx9aTBAxHa>DL_e zOT=kCYVOI&2beE0r%O{B7P>SklZxctNlLAL!ezE>WvqU!+@jY+>@}YC8h0-%&hmXi z^@8bw4eO{S&*p>8#u^c#bS;Nt$VAc|1vtzhYJWob(bvjk4^d^XV_ykE>n@{R6gXDc zPFM2VS+bj8(>{eRQf-oN!P->#OVI?5B(^OKB7Fv(8(10%8o%LL285l_;c{9|TP(2unz zN}$6|%I{dL0#)jfen^yJ4=Uqx_lg7s8w4HDu@K=*JFe%OZJ`kxF1b=-k>?_bGs+t6QO<=Z9V$Idx>S2EX}WD)21U)ve{vO@;!i%%Ri!<< zj%wiOK`kP-1wBTmvdXD^ZNpQcUqfIS*;KWI_1SjT4#rJmaXNgKPwniN@qvYb|Hng) ziCe0*23o7`7616#xmE(5j3|BYy|-%yA6^e4pb46q|oLJciVAa zD9X*oU9aU|uOb#$2q-I?sWy&4wrbP91Rx+LcO%VVa8l|isI!k@`Cuk0&k|6>4ui(b ziM*`25+<~l>>$br#xW?EFv%*`Fai=Hqd9VV?DO2!{e9u8WKl{vCdebqs>weW2IAk;7uUn9)`4LgbK4N&eLk zZ7K@bwRg1bU}>9fA?Qr+;Xa3g@K>KU9bzV_ImMvhz$?YdwnEmCQ0n_Y&3ZgQDcE9 zi){_j%01RC^&%*yK4dLTh=^6ZH+yW~*LFsUf6plXd&i;Dlq7#i7<{JVj`|SoXuC#m zd$4>g3-JCA7x`&mH{?|E`#qZZ1T)`hAma~ED#l?RkJHzH6F7-hv}yu#BRyQP)5eaB=mfnj zcHk((I*ECuab`_BNO8vE^EQH=&m(& zn~o6a1Oa2DIe+$};Zg~0fb`qZ2Qr$A-Bw{vT7vPPREv}aGP+}A$vrA_oa-9SEc6j>Z3rRNcb3^&I=JG z8zc7ZGZrzA$CSbJEy!(-Sl~=15a3VAeu9A_a6q&{PRpSM!P|H$!HKk~uwi*&g(Hd- z^2>ZZD+)OlDI|dnEhr=hfzBw>2(8pdq>vM_mq9`lvQB4BAsZ;DC`OR30)2ca%awsX zj@urxGUR~+TOS98ojWxF+B~(GJ2mbHh1@ADIJ79_PCeB^r$8>9aHM@BeVo{_Mf&(U zNhKhDoj#(jXE~s8`o=Bd)E9()U{ZvX1>UP&QjSpw5;>aF$FV>k1Ix$=Th1=702VTK zA^I2C#azZNRshw8RI+71C~Sv-c}*%=6q%@EU>a0p7xRQDM0O!|8`(wAT6UqR{zi5o zOb98l&Fq594U6nzf%keb`F1q03;nbSyU6Ig*#*?P6}vE<_X>qXqE1~IozH-chb}GP z&|>Ag;j{@o6Q&4Mm;Y@Tqt83 z=0YCg#;F3XI0A9alVZyWn@)k z+L$5oc7k&Ps}fOE)9t7T%i2!Fo%B7CRf*NiZC}Hv6iX9y1Yx9@t{GyTQJM3y%gP{< zifu+^k}O8G(JN!|#;?S_bzJhOjwya zJ8FMaCficOoz_V+hC8JPuK5Crr;s^j)1XL7S~ zkWNrW<#>wzYa%2hb@M0UwJJAZxX$a`J{_Hty`^NBIHxFsXV^`5CFP2Zx=ug!xO(*m zaiNjPQqZ<$&vQ3k@U(QDUhVm*9eet3-W4qSIKg`kt7aAAd`SGo)S$A3l$GpdR?1lm zHXY`v+d6bTl|UXs>4-neI&4Nr;KW3TA*(-?-G*YYHnbt2cDG-01M_2mBFFG9h^A<3Ekq|O{V;V);4yZ@ZdZs82G`@W<;JDb+HXx8&I?~4;SkZ-SMun`>S z^tQf#*a6Jm*gvy0Y4~C<{5{n&=M~FYz{}1Q+13m~eFejH|Bd(yCf{XNw~tWtKuj}L z2$x?VaPh3tu@9oGb|+sTtRl2L70#(6y`vnw&pOL+sxUn_6~#P-H3?0|y^5Eir5`TY zcDW@s47Y1!!!~3{xB;b+c!I|0ymZb(p`jTYhUkh7+m&f+2=Ylfee9Mby_{P5kdnp0 zHEh^s1{>U@-`6R8t}iNLS2;yle1h4qgHzONqgQ5Tx^hLR9Cr(0k7ckJ4h==QC;5~1 zsI}TF;1w+mj;yOw0uH*WFc{-D)+t2=1KF!HYr*QnW7Z-fX9vX*YJtR}t|nNOCny-T z>MC2*)fO!^I>F8GJQhc>mNbQJQOOuw3c$giXw$)CQo&*@kTckcZ<(>j4HpV@Q>n+` zDYJ*fO*+l-J=nyASq?1@9vg||>clCL#rp=`mki%bzUUE1F!Kn4F>&YvrTYfi+;Fx5 zMAerr34swEL2C#12sR0AvR@zYaF%A^i!y&%!e~IiJ`m8;ULW}cuX!^epWMNL``*$X z6>=AZ&oPgLC&VA|kb7)-0|rZ=rz~$_hQj9nq5RYUq0PT{8Fn)mv%`8LGAICw4Cyl) z!;%~U7I>w6z`B`7?n5IfQ1|TyQ9lTPLkNJ9-*l`b>vNnFN!vBqe>9yy8xDE;U1roi zal~|QmD-==(%ZF`Ec-G6`3{|QNH$QQ094qbKL2vEnO49RyIkNXz_Pq;$AJv5-b(pH zm5U)g$3_U$yL9o+@g%)igeg|(P@>}TxQJ#4R)Z(18Q{#T-f8OZSC`8Zx z*&WR%2~3cKU<~yQ(-%lo_np$g7^?VLd66u!<9U|Ck3%#wh9Wxvl^kx+*WyW&1M=8o z=ZOz+cHbMY6NN8;`?}b9uUbD&Cmm;6IB8jLHpkC6=fX)#`B@h~iLyVJCoP;V*j9c$ z&`zg4#c0v4=z%~0>*2}9H2dB%^L*zk@xLcVPmDM%(K8;@DYbmsx(8+XUwm*w?g>}k?4Vlm z_&CjYWQu;YN3Ib$^;o#oz&+!%3q8*rnT?0nfGMaW`(jW#UnTVbc?xwzA9cw|X*($P zh-2DV)IWns@?aszgrDS6*9B7NkW@%@>cB-7gIQF5J&KW^+lXFm@Y}lTx`Sb)B1zPh zspl(OG`6TuoYX(%-Ah~Uu7$+zpU%6Nldo>^?Vqi8|5V<+wB_!S#^c-X}Tau`m>a&AfH3lw;zU@^c?0ID<47zYA8C%KWE#qsj9J5U(r8q zzM>c?E(P?5LOP}FiOkGut8W-!V!^Q}tE>o)0K^kF2g+AUMGl#ayKb)$3#9tuFL~wB z5tSF$%7e=3aw)8QYA9+bcJajT*I4RC?aB9}`^Nq#0n6LM{pO<>N4jr+LDiWrE&T5Y zSJD427L@xka(fW-&$Sj?xO+9XVBxmbl7~C#oMd|u#dq)s5@dSv^<&}QM%iej31EF* zfl*{qo3!S1PK|a!b20LAv!xW4;kv>SJ@s7l5*#2_?WOrb7SU&Oy~XByG6kgW_#a8qck&P7T3sSfH|) z4O9@WBoq7&Vd-(OTNmgnHO0XiirFBp1FX)}6i(VP8}PY~boj71Qk@_#an!rt+&iT>jp4YknByPVhG;HwOx&n~>RuVzZN(g9(pHb2D z$TV!YpR*0G7;$)NXtYKYtp^PwI%8t=X zlpz9O%e9@(!Ze8Pw+#>*1Vu~IQx3)sQJI-tNfu9sXbT~}ip4YFM(vmR+crkbh!6F| zJHH$;;V6_0ePlRA2&nCh-r;+-3SKWVa#}`f)-$gF8@?;e;X!?ljX_qH`Igm_TvAJz zvZ}Xxmx3J}$FZ6d(80e8+A&SacDxw4a$kI%UbDz+mSlxo^4{_ZM-TNT?+?vd@0|KB z(YNH?X775^J8{fNsYBpV;DY0 z!iNK$!oEw~%maq}Vnvsdt)?B54LQ(zt&0sJPtZlv!*y}hc3I&uvI`K~p97e=Ahrvd zH9+!6e~NeE#*r#@vH2i9OdmQGt{NjpMs{ zq=?zkk$RQukyLfD+bKGMpQ4AW)D-)JyPkKDW1t9mb=%=?4aKo9e|EK#c2%{*ONcN< zO1s*2sBQY$(vAI{<(^WhTr{K$M<%X@})7rqQ^2j*uMvw>4;Z!R-vHwZ92p$(y*uXg*0sBTeiHR zvi516KM-=S&R%v$#V|U43*fewgE--c&4m5-2G0?wL@{ewyY%ugL6-W1$72rEdAI6$ zA6GnyUOyqhQK7#K?AWFWoJJuugb?60L%KMzC2%^ddJgIgHYBm$HgQgCdO;`$Oz9-K z-{qV>qwq`6i|Z7Nl1HFT^+pv|Fg0aLP)5w;$@>t;4wflxti8{XcT9O%?7N7C{gFz^ z0Q0uYGn zzvBeYh`z|ckWX>d^aXUvX2rb~5z8QtHR|M8a^DBf86ao3#*p&bEpT>LeMsv}w7VFi zDOiDvjSs=4w2fG%n8<>+$j$-jIKig?rdTOBkdhVD)QprY+xTS?J}24(lq{24W>2sV zGE^LP?PQxsbQq%L(sBb$xo?Nh_{lt!tK+xY*pM&~#x_Jvg_%m^oDjg_Vc=gTobKaO z;ilZq!D$jQEkJ1)g!Av(>vMrVNAk)8RtyO3q!J6CM7inWQH5Q=Uv?s1>)I7e?$)SEv<~~`0{7sa!xvSkA2i@Fx9i%*uwJH|eAC36x?`HEaz$Bh z$Yzb{s~vD>&yMU@r)jDLG5tsSbj=vo28{Od?ywZ-rBhb5Tm1C2(SAaR09{?<*bhbL zYm6HrzNr?|K^#jV`4OAt4n)dl^57zaWs@{|Y?@Noj+$xA}} z6wEgla0&^;0mP)LlmmAm>Pq*j^AWDpZ&61V{ktz`6Q6+quiP3{m-CO7m*(OW&bS zkrr^U*}!#yr9X_uA&~k2$O+^*yOcxNH_|Pca0Fnkd-d)F>3)`ijUZA;BK_HeCDQ&a z;z@q61w44xF;vE|A1Z!#1TBTja5y8R$A-+^JlN+gpT-M$2wPWcTR1{Mu!YOBYNWB8 z(qszs| zCl@&;f>Wkt;D~9N=v3GpQLe6Z{_fW$>3haFy#2|)8(3$d8HjQl(FIMxGTqTKnfsDj%$$0^anMwV_FX4v%3C+uT_k~-NMgsmf*S&iw07}}1PJUqlCf=( zJ#!w>m2cNZ(fba;jVLPc6^drjd|RqLU=RBy%yJWu3Y;h~C=S~I1@$x=%3YQ$3A1Gk z`aDdaP_RXX$8X0RBD<1gR9O&UIw+yG9E2YI3Wv?WHvI5W#mpOMx$X&e)Lt%?F=4a@ zTMLE;TS$gkQR}J`qMObj%D}b-3&~;Vul^XYy=Wb<4WY)eaycYDvXEx5^=+V=vykRj zMzCGXz}7U)V4G8S_HnHfEr9L1LF(}BMzEDsy$_Kz!+C_6W`=6am!$E(zDC5|4=Ns3 zXUCd`+2UA!qnHZbUC*%3CP-ZXJuRn z2k~9#P(PWzlGn0z2g`~gM_r^1$wtW)7!*R>49ErmP9|YcnZ;i(q)*0aJIGB|EM^IoAf6kAT%~12gchZL zcs%!XvF;1DB>q1+Q2I!~RM8ghV*g8Q`5`6qBpg(#>qab;5#zLKhh?`oT=~%E?^r&& zcZh(6rRyC>c*h5MB8Is={Zc8pWn0{$O}M?bE$-k4^8OEOz5j>n{qN2CC%?YMmoL;i z-^16=tX5d8XWBjy?$qq!V4rz8b!&UUmj(e_`17#;J9i^J{5d?rp4u3$IJUwky8a~H z7~R>`-LtK?uTt$#2Da}Q9NIa&>w?{T_J03m2QK`cYc6_1ZDjO``!4?8OZH#-eXsx< z!EJQ9f{RLBvqe?`Dgdiehi{sb39~dZkd}hgah~$NPm-ZDdNGyHLO*AesIsogDyl@W z>Y|e*sY>BN9Viz&1%sIH0QyZ+p}9fH_7t0v4N}5=8N53QPC#Tr0*q?HSAPR3E!cBu zgZ2JZf*S<|seSC(kxmPjLPY??IQR0P5-r4Z(Y;sD2@IkCCpCEjTN2)mOvo`S;KUG#*QN{5@kUS6K((x>*zH`p*7VDuEg z=o1eR)4&!eQQ>iJ&>t?r3h5tKdc`X%Q% z{udsjkp2{nc=hx6;7wGZCOhI#>4oxn^+-w6x6bqVU~|wCcw2fQ zih6pP5`jJTf90d?>e5g1@kFj>VQa;jwj=F~w_^*HDTMh)F)>+ct3S(ZxY~vtiK@Fw zpB5w5t>K|7;HZ?^9m%V<>F7Dy_LYd79I+`8 zC$BPY%IQQIufkqScQ}1})2k1a_J>Y2S>{^~u9Axyu8$VR*>dyi2eTGzF^+C|Ral*C zJ+5gh3w<_P((--CRk1~HM5rIG^-5m4ikV6fyqwS8^m0(?8hyL8{hFt=U&oUL3eWYb z>{fER+DQ6qy$8$Jk5)w;dMV*Wx!2xwF>n2uHvRrHqg6x~etzL-RrOLk@CiOpN|#G4 zX^cBwu0Y4t5#gt}f$q!he$9=1rQlrxrZL8gM+b0XGbha1S8`QsZwi{dgb%RdS9uPk zzns4){cf7Hm+vc#)0cMsQu^L|P{xHIs|*K*F&t`kAI|P!t3Zr7RvsM@mJJ0g>(|E( z+!cMXX4_vI(FFS?ANBAsi8$8}3XSg3Q+`Bh3*U@iIJVhFtw`=t&}=^sE<>uZq=TrY z9#`Z@HN@mDr}R!6aA@SwY{&Dpj0jPf^)byFPgQnpvo5h7+TS*0fpt=U=@2R8t5XCZ zpX?@%whkL(On>FS8XV{mw!Nck!R>+SvMr9GM+H3RuxhJ z50l7^CAqpi--G;Im6wOyg~kV1r}75_Y5|+cAN1(~lIw771Qc(24l1{N4(C8~dI{vI ztmAlz{(3Q(SgzsleX;&}IlPaLo8g5ncZ~Zcpwr03TKG(P71V|)}Lrw7s}T5W_4ODZcdO+sK7(~En2*y=er0i(B~J+Pj5R;1A*xM`lP|F z`iw>CiEmN2d)p#B_NJ%nU+=4beSo>zZrPhsmQGYa)0?S(ovnYJplzYDd9NV-RDAbj z_$+;%PmMCAzq3N{?c9Oho1TFzjX+WcCBtiSD{R8WwTtYq98~4wUD14As*M1Nlq_aB zQhsEO+UPuXwLFi|ncA~qSWfj^j7sS4jU)R-{_F~86>Wjo^n&}aJ_IHZ=b^UIUFYJ3 zLKuPV3gdC|x+($!Mm^qOZ|FG8Ru&)hh6m&A0`L7t_J_L)7~<0Q8h7s~u!nIb^a+vx zGi0VgNMbc*D5pD4v~$6S3BU;~f2@PJpNPJ?3y%3r^;i?szQ;`Q_OsgEMoMC`FzHt- z;FJk*>eNzUBX8yS%vMryI?>a*P5NxF80ZHoXy~Y-Pf)V z>h6lb*L#?aYJ1L01%kC*9&<*}G}~^YEf0c1FJg-{aHh8;Se;?n9m%bfX}$edp81Sd z{g`M0P0fPgi!T2uJ5Iq7(^aF&r(B73KTMbXFx@rR1YHIs)2{==d(&;ay6%g?B4l3- zc?N+g3OUm`S~5!tUw^^)MEQxH(Sazt%#nQ`DVRDLH$Xh~<4&%2_>pR+if#pTLMs}0+t)G>e`6Li3e$b=r1(SBFk%zITHkegr zC5CPaLt%t`PWK><5gRBkOm6WJKa&9{WYG%GR(j-x>5v!3dwC#uvodRt1UBX5!VZ=4 zp4o;(4Q%8UdB`XMLOlnn1q3+(?Cyuvj*c)gxQ0>*lMPfOCoOBc4Aw3Z810wnW(4io zJL=jAWz>)$Vqd`<33jolKhXAyc34Yopf;$x>r}x12qHk2W+Gqch=LwOObPuu&Iw0= zo#?3T$)?5UM8}cj<6Na3#4nf*#J-PVdd1Qv*~QzH2M^(3z&^d}IU^S%i4RH|Ps<}i z&s6<^c6fvN1BbU<{xQ}FfM0>gf_n3WS3aM=rCc#_=Em3|v`tgn%MV4>9%LbIn72t- z@Rp*PB|oL(n(c6%rj~LU>JmUsPc|HZhnD(0*)e)i@-@D4zZWE3Go~4=|Fm{v5badb z<|5sE&yi4df!*Lnbhmm)tr%t=sdYsymmSzCWVy6`sUraDYO(i9>|MKv9amr#FgGEw zb-YtPKJ^>x)OI$bKRX3?x>Pl{gh@I>nZyxe$#n@dfJghd&5yxmK(G$^U3=5NFvdMV z@hoG#pZ%qNE)oQZ#zrRexD(oeI-VNWc{0&SA$`++-HNpyh?0fGc7USV7%c(%B<7XT zFbGsOYxWw5D&2(kZVJXvc&M`3qgU2v|LRVnEJU;N*#i)nOSD%8+c10flG$ti;@us| zof*(FU7ZfZjS|Hz!GnosXuDQy0(SI5jzBkHFj#Lo*(v!(Ae`H%6jLSM+_^pwYJ1Wt zcWn!0f!M7{g>k%rKv?|!f5$14>=cIRQhgxrbPGL$_~72O?NI490TF;YEg+g<=p0a| zIWYt30#AYc&LfzW_DkvBpxk8 z=RC#CiJjLd2;8^o%=sIN03!IEOa51K3qibee{hq%5gmF+3kr;LMI)~=hNw{(afL;F z5->baI;zXXI2VM1F2&4yH;xHQ*o|>M(}}LaZj5(nHw1M20)pSBmaJh6pqbXQsV+fO zK;6l%fVwlq5vDytSR?vigm0Jym#GpmX=I$&NOK;^o7^Q-4$j1g0y2;k@tE+=3?ni; z=1~C?8u0i{U0cKBfC;Vec%D`K*2-%eVo=_-<@iD^vX)fo*F@M=|a9HaQV@G6YB3RncZI;Oi0 z>v(cp@CruZ`he=uC#NqM3UfwyQmw$IanNB#EvLKd*fiB0uxYl~dnWeQ%1*1dxdq)9 z^+&*_1&uWCk%Uci-RBsa-iE1jD_n7XY+7Iyn`4uXpph${3vBv7GSoi0*u=!w=ZdDe zx{VqNYXDbgW14oXINotoK0aeR2RIMpDb2}p&O z-j>i4`jStvwSuE1Fh;stxkx7f%BF7+Y5#oU7M^-=L1J=<9#b9pXc)E

*B8ajiOxtUNW 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

6jv%o5C<|Fw}3tB3>7~_royC|&QOGWh^ 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

>-7HMqID9k7pD=% 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�MtD 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�#B7h&U+*z z7P=}!nCN5-+=kZ))JG1uu@R^KvOHN!*NG8%IG_~!Rgkte@QU|Z)~k4vvw*PR0HM3N z#z;<=PB(+u-1~ZmSy8q9WD`Mgi}$|2&^&;$V3w6e#?aG94Lyy#p=b3pvanUX+|0gB zkXFvnWBs86Bb2!VbOkN8S{>#1ymYZi#-y3LRIFPNvCeVFmEbokKEt$S!a%iM7|0cG zat;Jvyh$uKnl<60In1g!yDB{Ks1r@NWu``F8LfJWK`Q*rHesf5?3{!k`IUH&Dx!6p zgs@XMuqTla65MuT+3=IWlSVvE+9J`4PPG<|6>@GqYVuQ(2iU~2BE{t_6 zvBA*tv{D$1@wIbsdfJMEGX}k|or8<3+snH$a2xz=BVJzDF2#APEo59wZFq@dkxVnB zTN8ba9g$Fw#1|qor7?*BTP7ya{X&kbqQ0^*i991`8Kgwc*L?J0P0lif?kMKQe^Jbh z#o+WsKZ-TbEImxs06$5IV$EFSR1$qy+ZcUlB|=F7F*9OCF@L;7BBhoNMsK3QK)X=T zNhFXZQcFbiGe`cCp^32upC-VN;<`n&d$}e${aex-d13IOA^fIRZ4LS$A_`2`hl~iv zLJ;gt9TU9Xj|ux{AB|2u8um{HKW9v`n@DByVCNow=F#Y#J@jDChPVe&I>R(Kj^JIJ zzFfrB)`Hw|A(E5rjVTa=ALy8+{YB#`lIGnzdX*K?IARu!?6Zt*tp`pN?r4@_chRU(> z3XM=etb&Tlx8Ul>dK&!|JfIwnB=*keZ|%mmxKK5#HqE8qjkrbzhU0rYtumjuQYJT>2|vkRNcH@BMFs_HP9sU zt9grxnbX1X2Fza&X=mn?EV(3~O5f@8WS zChVNI3Gb6}F3B9yp^>%PV=jCz;w>&olKq;({2q_OXnH>8;wcT``KeJ50bta*oJaZ4 z#pTRTS(h_kdT=?*Y-JOJx8^2>wNw*xDdY2O`*JgNdIX!9mFR4okLM%?lR3FmB| zQKHO(w?Ui{mMqw93h(WNWmB-bmhgT>h;~)*E~9Cwc?;C~dZ@H0_J}C9LOC|VtYMLs z&=Xh)Yjo+Y=!cn-CZ>iYh}%9953*NG!R$Plu{e2n0sqoG{tsiu(z%YuU*<=gFaq8oYaBAkS66?A+{?JlW%v(Asa1vGaI%MK21tqMs_?aBdRFK zk_Fnl?a}B5Iq95{;g02qo)H>4gXB}bA%4q|<_oZCzzTg9R?5TdV9g>`jlvfs51xzP zz#vzUSJm$_xPP9{vadeFz)3_u+`579#~H;a3EhWV&y!Hl4B5&DTErgg4sSi&dU1H; z;np3&pTDAm};UQ8W1s@aYTjOGAeS~<$cE*%GHPlVKVMTINMd_*nY`Y8g+lWs z+&MN*q=c@cE~et*HZu8BaVFds3o{aOCCu!Lg_#M28Q_@OC&(&Rb#`Cj#Bg(<^k@Vn znBqk47JK!wMqzhU(5_K@W;Y~X`kxW}i-r5^&Fj_j)UX$ahE-@e91x-unp6CLFaN(S z9CpQR`Y2A#5P0DDaBDAelLa>-Gqw5;w|2oIFi!B}?MQW8?m&dgRa)|0(w*#}oai(f z?hSr%1fScemiA!`v%I_!PMGi(-i%*M=JNgF?cw#49A+f(=I!tL?Nk3FDlwt!aSuF1 zeSs+W_D2A46F!3GRA{RVpnwKw#%F*p3tZ)eCY8w%cS7CL{c-j9_@mJ=scCl?<~#I( zV>#`kVfrEmk}%+1KBVKUGq#N~DdxKCbUr@hgbAPE36|#nNRW~-=rlY0d#_Kc&FL3T3TDyl~J<|TIgHy1TEuQ ziHdD7+N_v9l*`6m?MZ zJwBg#k3CD=4~mLnAqo=aEC!VLPTCEH&kx>LYwmQ`im*J{nhb9ixG5S8{wa;;Vx3&s z=z5*P!gv(0+kCK5ihk<W9H~^}wbnkNB|i zMhdM780lv}+y7u#MTRl6h)$dsBRuRgcK^PI&>wX$tDdMuwP_`#n7tS2q8d>!s0w|& zj#5j=KCILG3szAt>ZAIg*8HCoaT!ixF%dB^J2C5iD$rffbeb_pRwZ~a;JxLjX+eMb z%1&2#ux1aE{br$K95y3}E72dEl)cvS_A}bzwC?W^aD1Cv0F8M%+&!)GP2GVDcqyol zoi@d=eAtbtWk<6{w~7C9wop8VLU^<8Xqvp6qxIZ&+JfUUv6m@zo4saYG!Z4Z(FG& z+mO1ZXgix?G~SAyAfUW@QIRBxN1FP1ms347(_sdtegL4UR*M@*3!9pu9iUc3p8=U#R!5ft{q_O9F@A_L-`^qdtf1HUg*7vxeG$c(AqFb&IqAg zPiCw59&q7qlk8cv2>p>y`ZU){@MZ~LE&&4@MT^+#l~F}9*T@2hb1^vkGR?&xM4y^< zu(?604X+X>iT|;2!hyQR+Zu@ew+UYZ(VrAlGio6EOD{eO!-^t-elW1`vz#~-y$*J6 zJupIgpr+ORlYPX0((LKFya~Ziz(DpFEz1Y3C>yqdRXC2H>Rem7-{|HRZ?d!q_by-s z@z!1|wiTUoA7xxMVK#WuY%IvH3bQdks*F75>A9>@MB-A|1-2cQO2bEmts~X;MW1oz zgS!hSpw>$DnAMeqn;&mohc2LRut3prozEqWAsM z8v~LLiuZHq7ZpBe8d6XaifM|k+3BPUqcjWRjG@Ca#k_-GmJvQVkZ6YZPnh|Hn%Q0} zAm+jZalmYxf(fJZ&pzQN-R`Q(-Qb!t7-M&>p+NS6ET3rTpH6IGTDF+7llW+!Gs<% zVl+`l#&&)mQzThe43gnEY-fDBH4^-a0o74zXLbUr=oC3p1jLwc-g!NI-V%jGwmCq!X={;yBSFf-u+%ht zTAuL4$8JjWTL7pmDTqTUf+d4EQhlED3(mV2h^YUnEMC0xc%y~uo(zUx@i$I1kQQ{~ zm;H@nOwMjB`Wp;58JkSuPtT$m8zi`_&g-xA}R%Q`oJ6=BWs4~~n^5?Zs!iD`;qoMkq*l+TZ#TBhZeUGjAv z;h0LyMBLQmf?XOFxp3L-jxXAa805NiPRHXuA*?!>VinWG$EJGB0Ux@A8t_v#)POG= zLJct0X6iBLW{lKf13?$aaLj9lq7z?OyL6$KUHb8#W0$`C+V2u()qkd4GQX%iEi$89 zcJprUnZfYRUBha@DDJ@R9<9%9h1Q#q*^X%4kT%)CN`zgwBt2AkVYpPvt*lM7OBdnM*Hw+RI+0iGx zJS88)KDLV!Eg?lH1*(03vBGHco)GS`lP}^dj97NIdbpd0!}=w)*jh7Zv1QR|vvbon zcra*#xb?uM%~a)3*`WjB_@?b}5)>kGkfauV76r(p=z8o^IaD;-Fo1|(elY5Pn7A|< zp!If4dk3~N zgra(~kA>GLoxH!w6X(7-ubjE9`ZUs-#ZjN|5?-sudB=y%!tS<%Ia*KpyFman>2-v4 zceZ^F0!N%jX>SC-LTMb^F>TU-6|9fpP0LGXOQ?8>l|;F>QeR}jd5TbRQ(v}zb;pqb z(%oL+bTnIs;1^h;L^C(zZBLqc7s$UK?M~SQrnuYu7Ny-}6MKo4v}ljPe6+`}iG5xu zq(mYxvmdlt7Uft+KiH+UH)Ud2 z34vHif?t&k#QaVSer`BbKFx&VCH;N? z-0eAa5b|r+y=uk}eLu_BHCX0at)8%WU*WQn7=gL!iFRuI@t? z=G?kj0I0w&7XW(vFNjLJQ*h_d4L_pk!yu;gjgCi6SzO{E?ciJO0ibCwJ}_=D4gk&U z9#UE6l#Jig>SQWCA(ag}sceuBU8FL8%1UK?*&vmz=J|4>p*W|oP7oEsR9QG58gBDgV{dHAkT@|p2~KpBJ9d2^+lEat;xLM6ox zI8PUaPq13_igEv>>HJ1J!IHqAn@?MffR2dsB8SnmHcz0vECZ7kq zi^1W!;vK$4(l-fWlQ+|(S;82mU9AoYhB^af;|_E}$Il2Lwmf66Z3C{DP7v)`yAL=O zvd7~BfL%W>B;P19>yku@uLv?GGZa}d7u_HOQBs0H50F7Gf{aB|<=2Wtonj5s}-5WBjHdrf@W;(kyByvu)6vQO+HLu;oanafN zG1%_T7|gjdus?lKxHII96^oZU46n(q zP>z0rO&+0Q7$57eRZZ~gqZ?AbG}L3Hmi} zl9gP+dajZy3e8;86~wbbJz&J@2r_r8f`c-=Nh23X&_7mu{?3eP^@PI2YB(GIXe!xb!)KU4NqWz$_|)i1 ztoV?E*osdV+7fy7n4Y&Mr*_k;9lMHd(6bg`CWuYW8Ph5^MV+)SW=>@w-sGIxP(LSQ z$e39(WAMXup$P&Giq8dDq6Lr6U@;Kg@F0b;6tDy(Wol9J5$GG+WM*v{t>Z`pvmMX6 z3C?0m*B;urY%$wmn>^cjT5uOD0_W`vMj2u^G2vplk}fbK^Ed#jx_naGEw)%jA`uE~ zS6&yG?`*=onw6DUEABNv;<%T@9H&p%SY+i5B3z!%!Cb{9f#GdZr z08C7cY9*&ud_F{KYTP)c?#BqxiI_t|%7BX>rLHBv{*d28g=jNVeCk7o^*05w=vbVoU#z;G#pr5qk+vfLq)<&Jif<&I7! zOG+qusc1(BlcjuvJ3@X*O_tWoQ2;g(bf4I?ja*)+Nt?D&$gi_k>Qv|M?~`3KXRj2> z%U&s($$a8sJ{emp^{pR^r0Rs3wbD$JSS!PU)Lx015-u+@r5w~k1eqy`nIh7I zutPguB?~?95M> zs{76`epNQts~nx}GWOgu*y>6qtK3x^-Mgi{9#Fw3oYgOzOIz6^=$}w&hCKN(1O~3c zSR1f&1tpVq)dYAo@P75006|9XJmk>DADvI5k}|PMnFyv#fYNcE^rs1 z6r{j33$Jg)aY}kxaZFsT0I9xP!O`}BDwH1ST=}r2a3}sAW&T*G6W)VF=ueEp7U*yB zWW^noA?=JikkL*NpSr&65Ib2+3RD!*|U|vNXkYGNnQ1wI(@A);U z^o?|F(l=L=zPXz8jZ|*ZH&>Is;nya8Bh&!xBGb)XrF&%hhAp*r8KP&zZfUV5c0-Mb zBJ}|>9cAy{1`QcdB)lTryx`r*f@DW4I){M*Ph^pgo>X{edp?rP1oN~I3>@dG2vmC* zc|}ipxdhQXmP-_7OEzY*3>adF+uWN%>F4yo2DOC4pEZCErU&ez_ToKqQRgJ72hs@ zB1{R&WG=I-WJ->^Xb-WM#PAM~=U7R`%ej$}bXoBZ#4b-sdwULCB;Y^GG`c+3#SNEZ z33>WU*UncYia)X$#iz(vmX?Pi{~ZWA9c~OiF@I@WnAfKix!5VvITwh55MvKZZ%IQJ zuRaiiXkin4yV^i-w_*b!>U%I8BLq1Y_ncJZN>A7f?{d-4yS1KcgNlBx1W#8Cq3i@G zD8;2gDw>OAoUB7U%MX}+5inaD#3faWgFyxOX5ll_S}pHz{LE1nEpyUIZ!Rh8PX#h+ zy%oq{X~+*dh@YR!9WZS!x4U3v)JBC>V`p&D(!XfIOe*NwD1h&_rW_G1G(P6IPYnV9 zQzIDg&eHAf6Ydf_h-yfAi4=^GvSUmRCCD775Pq|dO5JgC-hhNJbL=_2e#qv4;6X_^rTJNrdRQEFcC?#EiZu&K||4q%L^$7xbt!9Z5T)qcwq4)edDKsk1*H{>3)SPxQD*le;W)6Bkp z8baquZRGSm%aTysi0=3=@KS<7YSX$UMaQ@hYD26GC}Ylg01kIDU&SR@D2GLb^wQeJ zhbS4Xm(~!Sg48a|i#VWQQF2A_s~eB{S{+nRJGG+mg8&Lb)iTBa(Jt&f=Q#6$d(M4(KJz{- zEQ2H)bn5qf+^;f#lZP*Cc(~Z<;S2G@NY5LdD0O;b#h%!qX=vUsya5&YA`A(^j1Oc$ zwN?B2UOLWI`}#h+k*W4oBXCWNK>W&O5dc^1>y5fKVAZ~6^^v<&`+C!$VpmCN4JiBpYmTX4b(-|G#YDQ1cU2aA{Yd7*UI;oj3qZ8?j zep(;hj28S|X7n=y$&BooxPfMLdLW+B$2Frh-s3pU@nlBt-8iGQ0fE{?I-?7AMqOYm z-u7r$+a7(AGeB}P`g6OHnb9sRf93!_P!fH0@EJNVvw)*;c{*eI2=#dF6w z0Bo z?Dlei>I&$EQ>A!}W&>>>qZuxgrDZ)uoGSQ9IGk0zS>f0ex^s1JP7>JTEl+WOz}v<- zBRAJ+cMYeDQ1zUqn;o8t(z#?bH_bmOs2WGtX<{!DrS;D2K(rt+ zC*A-FV)+d~-b{NUy_#yE5CcKChfORSCo{P1D1)t@Lnhl; z$VjIU`$9(L_LS+%$~23kEitpC7PIH4 z-W&$Qqy&tr22-I)f{ z>Upr;38=QoUK#xs_I~iz5lxpqZh+VGOR{8(K2^l2A@U`v%J&)DD1*$9T2!v|k#;Pz zUo%DL)jh(#x&11o*?F^O`v zf%F)wp24vz)#O~k3E4@6Xu+8wqTfs@(L^q&)(8Gy!eIomj43R)*Lb-40oaS%ia=b0 zUa`=yfXL8kk-M^IJ_t2R-6LP3@W6u#S1mv@cL%?gp6Q?f6El`Z=g3?S-e=sK5R-fn zi3c3`6a1Ajt0UWtSzYY}7$RDZ6INZ2ycFb)RYtDGD6){qiyg624uU^-iI>M&=EypZ zmo6l0^wvkC@AqUV7BdNj@x;MZ5V;nE>`Jzgl}62#r{Dxm7mOL~=XVUtqsHmi$+X_i z7>ol`8WAly<-p(JNZfZ3wnSA6YBG!e)~H&$6JrBDoU{s?1Fg@);)wwpVN}$Km~1;? z#Q3u*g9bKKW+7qFB{Ap;%8h3V+AvS($+eqJmb@qMYPta{UdO06mL#^4XLijYu`9Zu zQj9eF4S9vHMoytF2Du3}bzxPe|5*?f1u%&5F>=FS1*kB3)^90RQGH;_wOhV!;}?}@ z0il^4EBRatB<}WVn|_e60k5K7yD4XNwgh4*f`-|E?b;RfO%Im~#e!L!T#OJKNJFd( zL&UR&AKm6u#o+xm zWVt7t-|DbrRhF>UEs5iCvdan5SEXqk=N4E{v^sP|)KH}^VE9`qh|KAI=0g73kc z^a4e_Ux}DM7(*ZfM0Rlo^c{(RWHMU+D6$ImV|_S%!TD4s35!N~k8c9)lNQ^|d9-x= zRLu-xHE#M4=j$@@%e-iZ6?vly9y68$M+8D~|7Zm@DpFHOlRyU*mBE;2HaO*T5#^ti zyij8rvEpwAT~0GKMsrDlVQ7NH=-YKs3`oFE(E>in&fo9tV1RLd7L4yF$%sL;319Bm zCuh$AF{1sbinO{ApG~W9o?d%V%@jwLNIdQfC(Tm@ic!f@?WzTL|BJsh3<{~tFrc5;)+?PaILlYQ*wAUH{;p#r8J@Qkv)kn=o%;*cmLi?RWSr!Q+ebosv;c_^LFmQp^TCa__=TEm z@f^evJAJGst2_89no0Y1Wj*mwbm(Iy?t^D5P7gyYJ1QI1T-pQQj>49ToqCvyd%#*x zy=WQa{kbFuy!A7xby>nbK@~Z6;9~;5_5Q<@7b>AMmhlY_G^^0+ z?Kc*p)1-S3?k)H;Rwn)RI)82WD=L|4a}GIIK+#1RfGtIT@XB?3a)CXN5TH>ZBIZ0$t`j73xM^|YTt$x~L9LZQJDw0(Z>u|(+bW&wbipmTb++V!4RrJ|@%^(_X z?hw5gU^s5k7sqP)XwesQd=xlDm)}hE z#S0Xo9=M9(8ZCx2Z8TX4w*6MI&K^cb)swEj@&e@nEc#;5;NCh^R5_lB-9*e_Rd;<( zYPJ@ORdr*6fK;if&Lr$pXwKdSGwf~5?|XtV-_o|~L746>(WMnA z9V|6?n^B~vbMHVqjypfE&XbtY0H)gvu&WbjR5tN}Exxr`W}!WzI`QbNU~v^T38$btFwb^jQW&|XHB34)w>Wk@TBq7IyQw3_!UmX1(U!w- z>wq{P;Yx3KvhaOu*Y>vUN_Y!$D5AwR;Vs61ktrY>b-&Ux&WFD{tovP|oB(D=3{k{m zF&SiH$L&YuuxF)IkSJL`;>-frzN>LPN<~=&V$WdFTLwduKE_O#U#J1(eAlWW{kgz1 z6%8+|w(uA`p>$>aq`0%p4{(0RH{mE`gT6K_sQ|g8?4*$jkhALcHq{`)@@FtOLPMK~ zB<`}+A5zFl-9&!>U1+ZmG3cra4;>a!py*kFmqK(W!U0Eg+03+i3u-Q~G_HGPZlHGA zB5@C+wd9`;Fp%K3~obYN8Uj47@Q= zQ5}e)*+gbbTtEvkp~ynEb)$%?qP(F}G^nsN>FXmFsI7AooZ?)DOF5~BurqomgUIT{ zLhR)9Ah?T#a3Y~A%RU&*vO)x(0%}Pn%5H+;%d;jcm+J-ofvpojt%(2W+TpzfCxk$}pA^5pPKdc#MP~TDJq$fn zl#=Q$Ck6fdQAL?K;K$?UMv4CQv0 zm(z;E(K_~yC2kmL1J zAc!vSRMjtavW*O$jNyv+$+Dzc^Jy>`MhWMAaw~H`q9HvxuRZa}-qzz%!hCcWz?i!0 zo*LKr2mmSZ2G|?)UMvf6X0yKWK4M-kV+Rr-%Ley&ydUfjZMW`NU10s1CTjYJuJl=F z-=zoab*6v2d2twUuk+Fv&k}TGAR!|gfnhRg(Wk2E2{UvLGn*~>x3<_wA-&4#!Ae{} zwF5w>r>2&pIEuRJlye{h02u;&b79pc@npiP5gZCQU&{}(aqs+{cmB?Ih69rjRnglj zyxoeuxpmznjd|EilCnGWdyLT8Gj1L-7Rgj0bG;7C6gX7_YWbln_}6iUR~u)jdqV{y3hTzRj5E~R zIm5ff8McXQm7I7bqjopWfO;ZAYH%s!6tud!t`_30x~^$2o-;6P#~IuxjKkzP!_SE` zv{J^&dMmRG&VcCDjWd{3m2w746*DtYMCX#vY?KI&$Rk$GAjj(3IfIQ&T)5r~7dG*p z{>=s8VN1DZUXgU6AP|F+AV+yzk{q;Hf)L#GkkZ$POvw^tr_QI=R#5^GZxlN>gWxG6 z;lNo*c6I&eScYr04sd6Iv1IthZ!Adc9J{5Q1;dU3_)ee6LSm^y48EO><&qbGC>_rL zF(z8R)+#4pS#ASMX{(yA*?O|MOT=XxL@IG9SF-Mnf=ILJ#0F}n-42nYM{JN)WJK)% zk!dd;A{p@%0(4(CeJT%;fBGgM@`fBls>TU|C}-Y#h@|>aURL3!Y{@#le2=JJTLQ`g!p^E(3Tl5gvWHtz%nWjJs%`= z;*x}bSX?sE#E}5pP#Z-iq%SWr$*^jtPKaR%&#CqAm{y#w1t;1>xbS*`<4)-zJVr|l zD{#2gqxZ)(esyYz4_@dbDLD!wf>l>ovICIrf|Z)rjrCKqM)5wKnRlMm4P<$?F}fko z=qU2D38PC_zZ#Pkg%Xc=ey604k(A$!h`J#EuZYza0o_;w0|Kx7mK zL``@eq<9kwLoY^QsER8JgZnW%5*q~1Lz|;N(*Sl0@ICHfJ`sJP{2d=$Nz9nOxE9#V zbQq6*7mH`9 zlX~-DZkaNfa0d-XD3}>bv0X<&$=;Mg8Q5pFQhc`jT1Fp5vf%|_Qt)QeCOV(8R5dcDTF&62boO|_4$fNarSxVl z?%?Wp-dzT)1z_{MJXb^%sC(tn4_NpgOLSnEX?0FY`wcf>u*(K)r$%j|Hgrg#Z_^c$ zJ2UnXO1@arRPRAQG6r5||w z10ucR<`mF&k=U!BiH7D9niTP(syjF(fLTSl*m$(7nNg{0&P=QYA9V@hFjt2vm&PRd z?;~ed6iMrEg_c&JwXFKy5cBn43zCJCuAUA(y;|M9CirH(k;Ae3k?3Xd6i%r+yMzvd z=?Y8h&xN9IZS(=BO$>X9dUX^AX{!_cU>n0R3Mr?-X646C!BMP7MyT#o`^`d;Ny`rI zupl4tzy*ODGPMdy#6zQ0ycfJxPmpfcMq-mTDw;bRC^O_IH!^A7q4^Mk^2f1IB8-d{ z5mY*MXN;TCM;}vXr98uBV;PXDjW|I*Va5KwGdKH#2r{argn)$&wWkI2wwRcxa<$xJ zf!;Pqymq()uXVwMsy@?A5)F6N-qZwa)CoS;?d8NZ>`c^&tuLk}UjR31(rIHCH4%WIh_X(xvl_AB%PU)reT8DH1X@uuF{96=5hqm@FePp8KZ6_qP5ZfiO8;N>rjQ)2Ay!rzQJY!|>v0k@7YJ{ax z6&BSIw?sq$nc`u2>`Gz7f?IAT=1tAv`06_9w|siz23UCQC)t3{{Z_^({1jh=v*>v2 zZ}j-jzdnd|1h*B`4~_W?ScCVrfx?f|<7!(+I5LXjgq&5gZ}q*{ruIT+a&Pe1k>JUc z2*R|lj0jdUW-2jIW&eua)l>j3SRQFsH|}|c10{P-X78hJ*CE(Cz|m+GqxOuaKW0Gg zs#nD)f{1CDT@GDBu*~t9y51T~5sFhX_-HAT3xenasT_o0W#o5GGq9~WVnck5N9**~oF!GG?^(yNzR2??@EjF>ZzkQ2$ZQSDiSh~<2?IbuPM&vlIkG zosynNscsA7g*3d!nQ7KKcEiYolkG?%X6sn!o<+OFBHYmw*Cyp(c7 zmhXwM2UGVqEGn1)n>U)!%O(kktGrx?0kgv|r)3d~lcvqKeD<@&2gBk6h=Z)*D^yPc zDNl^B41+S+81_l?NIaCagH-ar(Rx7%gs6DHR~ci1sh-mRTL+(@VTq>ZkzkyoeGpHP zL39Mhak-B65|tkz=8-qPl40136>FdZZxY>Q4>)WBsG1U=kg{h=>?FA=3yTfg3T%IPxp1n7PR|nEu>olqDCD4WO!9Ze;q(`vI$0+8{OV zhYyETAd^1@XNsncVw1H*G!jGiy&ou;j!m!G2Ak+vfO2mw1v_gKL><)sa;#W;l%U*| z@^q`bmwbj0mlPFSgk*fGG-JM4P5C1CWhl_kt^RtmF9p{46Lg?zKwFLOo*u50O2uL! z1KaGzGX;RTR?nG@zNAs? zZ0QamgsAEkmIAJfJOX?v*2ebULRc6w6r}*vL8WLI7WiW#5B?cYn(smS9fxNDRWbfO zEF_;~2+*!#EaRQ_g{u&%FIdhElK|+7ordTJyuT=5v{^*umvQuso0w~(DS?m9*IApS zzX~%(Hw6`%eQuigEA>hjk;CgbfZ|c3JnsE81HcZm7IW)U9UbPO&ETze#XQzYw(qYL);fE`9eg?XrbC z=2l;kiMiz`gvi#vRZ7;~?ZA>ov}7Z)*ijvo?Zxw!Zs3A<>qA{B?LRQVK)Gp<5s$W% z8Lf~38o{#Jpoa=|z_1)G*a$KZqL9_x7#HmZc2egymzU3tab9Db=T}xuaAErv!;7|% z7x_VofNoqpjfc^Y@DFelG#(~Np<%%^cc7Um4$!b1t(Mw0c+GBPHhA4`FxX1lg0ATK z6@G=bGFaZjdbPAW%+?SmvsP8pOlV`i#frUq!N0rJANL%c_HS=Fqo(j{F@Aqv+$vry z6e71s?#&gqQ%DD_p$$uT%SJlLt9a-i%#4cKL(v7ACS6D8`If$WnQzJ9{A-sq?WMT? zkXl*-lYwln&U}!Y>nsoC0C&!AWY+n(-RQ8+GkW2Sy)d`V#Mp_T@?v%tl*v;&WaVVF zp$E`2Px3r1X!ZH!B0Ew4+*5B*BG!yMi6J}M8*4tmY*8bAf&M#fjOILC)?RN`Pu1A0U363b=EtM3CSb-VC ztV*n?BXLu08*{t9XQp}3twSq;5kJq6H-?&}0bwtcT?%}^dA)^{{f3kfTsNAU8;w+i z9Gpns%Z*2d1#QfR0f}DUGyU8LG>{)q=mw;4p4@Qqu)l@`W8xHI0UEkECUSU5ayS9Q z$l;K{u!>RmI&Q%(byss(O7Y0k)9xc9( z@!!LuYI8#5VNX_ZDb-kTE`?SFsS9E^jShJ4`NHd3oNsXNvxV1xH-Em18#7O^2lf9> zvwM(#DAZ#%vwry>2zm>hK(mvdLbwvsytf#IVP*Qs$DV+|6D1kd*yz3px9N8wRw0}a zpk0w7S~(o-4g2>Or%;E~_f(1VdjuVb12W51_*b=%WPPgf2^Ez7fDxRH>bVdq4o4ak z*2pI{c*Z>QL~H0yf+^)ZvkkIRsD+k}is0C@X{|TGYxFbSB+@LZO%pfY;9E;1(*ii1 ze7%j$CCQg{8wf}4m%@fU^40=S@|AQ&T<4GsA-a zRch^c;z30A9rxZvT-tVIM@^32TEq7tM&gL!!R=V)K3jP30WO8Fd5BJwGl%K`eCop> zLH#T-rUKSYpdC7oqDgzQA%_#Z!U!vq+O!{%!9lf>Tvce%MFZg`g%LmW zc);V@bSXqNZR;Rqdu-w1Wzqn7z7jnubfto)-~ezdPE$4`-55M($f-5knBsl^m%Vp^ zuj{Jr{O?PatSi|kw&Qn_t4jh7jd6G;O?dd2cX*{U3}t4RDQ%$*Hti5dDQ#&HV1ft+ z1OyOZK%t=#!GOx62%7(lfItNVP$5va7%Cv8g1Vs6v}nMP`To}0=bU}+y^A#im`F~Dt5WSdPKtzQsC2W zTVwX!m3)5HeK)nWKt>4Larl6y)h7m!YV(o`VqY_Yz%{AjJj7bQv^oSU?L9!yV59=o zs;q{J%QpE5BebiztBR4EZ(CdIb6GlBb7f!xy~>M-H0{&X{5_L=S8|Q`1toQ%)f2(o z+RI}ag3S}@>}T^Fg{g=}x+}X6Orj5dY2|-QB|T6Jf-Umgm}E4jiLE0Ng4b5}E5V4A zOb-`dug|}>8t2!yw%6)PjfO^bF&{HDetsROhk9@RTIYpUSUPB-8u! zPYIWi$Pp}tl^*IVCRO$oVCsDRr(+_rzB#YIAgOWjUyQAnMNvX`+%3W(T zQSQ@NCl#!N%D&MSJD^+iyOOSDF-`c_i5B0dT1c2mI@Q{rzF~e;dsUw9_67K{fhJoc zReesh#Hp3^WxTgOJ$wTy!uH*&HQ z0{A18ChVz>)lP}b2Nh{;q;fht$un9@4z6Wz@byGZjNeTcIk+5x%pO*YqEPauND40P zNEJfO_97J2(IHM#POF@3{4@>8;5!j`e>(9ENO3_R8iG-*s()CAU%fVQ$|k>QB;_gp zOO5O^piO6h{|mua3-~)v^GIi;ufE-Sqhw|yC8mG~JKR@myr3>)Z=r(Hhac2MtpgdD zm&5tW>QOO!zAB0kf=tcsin7IhPk`h+I~N(xfLK{|>E}U~47)q)%sTsnY*V4+0UCBs zrNX-48^T3W979)5d-5$UQ-a5vIBI|w+0UYy3Q36zdAU!?2jnoXNF0+~N^vUFZ+(cN zoRK_73}p*8P_z%p+^!~9`P<53ug_dpTQ&lMH@Q}B0&VRjCY@GCScgghq%WE= zdOyb;5|XxeJAf>ee2vdsIZBb&fTxyEAW(LhaD5ahiUFUxKZ3`YoeN-OI^kIrsg`<2g|#b z{&gjJ@uuc-y;gJGx&-UuMY4uvB8t0$j?B0VL9(gcCmL(+YA}Jlr@wdUZ`r}7J(OpjgvLT4?8Cqj#}Ow2v`0ktdmiGV|To8C#1 z=cH9n5=a(3s=cP*tgPb~0$|#RsLdKN7aia09Y4Q*G3HxCDjB`kT60mo=oJK2ulRUs zZ7=Uc{mL06>t4YjEA+BAhnV211s;(AD_DfDkAg+`xSWM6V$ubxDiB3QZ2orZM1Pxs zAvs)gwm_hWEvPjVThubPV5;FRaR>GpYfqxXj0)J|>RPof|9U=~cdcqxmo4sWW&wAg{#;K7$kVf3*hIF%*HFr=3*$*m(q;l=z|Pq89v2>Yh`a!Iyg==7fI#g|s3 zw`y*RLL`}@5J@9K1VD$g!-8Nj-DVOlJ*JOO@lSGaQ}g}RYBhu*aO2(op=Vl%5|3!u z8WLRRw#Y>X?WI*6Pp@?C5I^{&QFRJ7xOSP24Wu_$ z9*w|J=V_Ib1o)##iR>eX@$LpavMHp}g353t9Bl@whv9qCm@~W_!9htVp9;p+O8#Py zhwP!=#S)U;q8;w`JVNy&>(%|tatfI2O+<@hlD7%A3yJfOu5*0s`!Pp}GdL<8uMx+{ zUwf2ZgGc-(Gdybs^^M9SINz$#MybmhW*oaKPlSkUfR9ko-sNgmBVL=lFf{w*fDg`w zGZhySjyJ7iGS$d}@%dRfpTqj+q<{BniQM$7d?YW~)SNn_)*pNc#-Z zJzK%W^g07+9x>HljT#dbT5a|e?BWF@WWiYX>%~|Xwkh6OwM^XH2yo@WpKY1kwEx@&elSn989TfqRK`oeyE=#F)s2cAy^M520gRl1Y~`yg)qb~Bc}12gxRoQsmsB&~<}25Ati9C!`Um}m zBo1cFV2k^-7g(cGM8~vNN9!7{QpAjw>eTmuZcp`K-3lI&)RI7ATh4i@i|R61uVu`# z7smAo)65Bx(sCM8d##NM&H>w>4anMtnKTq64IzTQl^^r@zxz7J=rWE-B2g z595F{)uI`<3bWFusyrA#LK(X$Sjx#0IWkTu;k#sg@-CC2Gu5_~AyG?V#TEhQ2jtWX z{jS<{l~~|sD)NQkuu6L zU(ASEs2baqmJ(Ermy&p?yp((yHGCQI_*?~3eHl?XDe|4-GNP`i*D?YDk(lIjb_P>< zF+pxRujNF>M^ZI;)tbT%!DN)|e7)2q7KzP{(LH&+{i&s>lM|Oj0G8fyeZm2Yd|GbS zL>D8W_0QYMLnpj;IawGe=cu9yQo*KE)8iNh$%6LWDgk3GW4$m& zlw@Pd#CCktlBq(}DV1(|Bs2Rh#rMYK3rp2_ERPl@NGDq0r4IB6=9@g`%eG@_RNsFIA?%Dbsnn3E<~ zD^!97lCvz-6%1KvQRXK3(6GPyB|hwTKGb5FRNAxo!C>2t6Oqp>a;&Ccj3`H@S#!%4b9z&U z0b=Eu+?ykl)>0!aGn$i+tnoUve$%bSjmcrzSKv5=d{UYY??~3fSd~5n%U5FGVmLCA zRm6?V*ab!@XdxlHFEisUr+`TnqShBivnKf@9Tg+#`^SgnPCO7^wccMWtEoR2N&yNJ z%9a#aoy@xI7jqb0X3ep9awjF+!1Q`mCH0<)K$R3`q%0d^tIhNwVyb>Szk{LE!Guf3 zpvn35E5t-_NWUHHtLjh8O#a=9o0zo82euxoDmPx!O<#B={d{@+w8D)!;Hv>fBUEK@a~g- zcMczKd1Ld%wQ8SyybC+>=xY>~ZM6FygZx;dEG0LZVj71JKgEt4d9`ft0wu)VufvqIt`Pd15;jq3azn*&Cg>0c29%8-u!~2r4u2~SX&&oF$ohs1U zo0Wf{5?djm3N6ZD=8J9Mz@7?q@Zn??b4wAjG=b4Vqg+tcZyqXvPa-$11ZMaK4&rl0 zhH86%w*N7i{rj;qQxfnuSI=7czir#jI%^yM?cCYSUfQu^Xn1hv&YfHMZ-@Td-tk}d zqCU?&GdW}3dfwK5TeoI!o^_T%owd^t6#s0}*G*^b*rrcfKFhvr-n^q;+puBd#+?Jg zxfU!t8hzFNH9ODVzH|GIofZ196LZgOJL0Qw9#$$mWwWJtp{iHJ2v)bL2o0egQ`M~@ z*b?7-VLf@zvvVAp12D)-X#vg(-x+o?a$HZldobd#A6@90!fank=a(4fnArRvj~Wdw*Dx7QJ`^6D$Qj@ zDH)yCc!z1RE`RO!_}~QcI5TJg*{9NXqC`*85aiq$5ue6ix~k@q%JTrr^Lfu?La@y% zwY~Md^b@sIQ6K}=T^W&)g!zt%?{0kZ_4Rpi39Hq9O}?>y$ohlt*RCYrWD;8y{m3=S zfg1uYgq2eKPl zA?n3%96AtqOLZ<*2!*z5HK|jUzA~UTF)D$v4*J>8&8k6vWK7a=Z^PUvr652X5{1#z%e-&?~yl(VfvGe;`X!eAqk=CF$6$ih%v z?vhNUu7$y`S_7NqfewoxEGmskZ&ylh`;Y#zYK(L)r>Y@F6o=K^0a995oVzX>WFn=Q zRFMjq(tymgn0&o2tkvNS20+D6y6`bMD3Y@rRksQjRWX>_1`989qIhwhXjGvEe20Mm4pBL7@-!zvx5LJELju^&9m1Q~=dV9S->HTEZTYS2#w>8a;8tv*YJ?rT2DR!4-C&Q_c z{9T9IJ;kx^ZCT(;f{sDoYBTf!$n>oYopHgbAmixO4#ExgAlzUqKJbtWzeBi5E(=P*^tmD%q3Fz=3#_#DpY-{tl15U@bg$0YXTM(2KgUfLq`v_3{U+ zs;NIJY<#4*6h0^KqCh$eOq?p$yNI0CBoKhR3F8Thpbwaeo0tlT$WvrVPCV?8)Fm;h zrFsT~fA_v2YJpWoFs#!>T+&hX%5zRb-h4xQBgKgAO=&Hyv^MLtwzfxVcOzLePETbT zSbGg^a@?d6-A(DxZ@1SVmm4E}aFCt0CAC6eilyrE4zuC_Zy;Q$=i~5Yt!@)4{jD=p z3nlXRr$f)&-zJ(N|5OGM|2Ng8o@w&igEm{z?ix#3Vm8PptQo1$0kk!uuaA=R>*7HVVmLd zM0X<<1J(2;Y=i|XiN&(PDj|B4+`+0gyUMJ`HLYRs9I;8`IBI9KDTa?qd(cTq@iD9tl^jvg$TC!M}M-Z2m)9I(vgp=q19Kr5< z<(*Xo-x|!dD4Z{WGN_a9ay1IckT=fYS}+AuP~I5$J0G*m@jDP`#hNICOm>4fnTF(% ziGYOlWL`TRt)i$y(cLxO*`#%oE6Q~x?ReMp;7rwq4BDg(QU(vBklz#Eh+Wo|R^Gap zT_o(vhRUcyE~Gh5gq64KoU$A^g&DFsu1w$33KK9Gs{SQ7IGG=Q+#q*VaW91-&JZJ% zl;T}O6+F9&PA*ght_ZP_zUE4GW1&=yi8vMn_9u;Os}Da?tB*1?&I^&7**1AR5b1VV z1$WIj2m_qaf}&iG09i}gd}B$Q-(}q~kL-|Gg*#iu+`DpXV2oUvSp#=XUkGPZq@x~- z4ASI2)-5KF^P)J|G-BZdQ>SJWNp1{gazpYN0SgNcI}1m`nA-wk*^DD*Z)d(=M||>D z>>s$TGeCJ1%PY5(ZtV-sB)d^CVcE&j5m5mJCff|kdtT`3oD0-IGbbOB-XjKEp8Bi9uG-WETbxX~h^OG7O|}^FHJut#M%>Omip(Ih28LT2w}* zn385f$;@MJ%wzXZmz-k@a9S!Fev`?zp!nBw+h<54r{KC{Jp8J#4P-RT zr67$BAiO}RtDDZZs-w_(K3;zF+4w1-$U!X5r^&rVAQ}11ZLrC`ImU2vhJox!jv=4i zn?j>AG002?LJBzt$%Bj20pv&wawG#G0}~cV6j~y!7VywNHfu4HxX{A0<)YeTjAt^# zgCUeRo%ePkG<|Iha%}(+(HHuZ`{`@W)T>P;z*GZVKevK9N2UzmjMbhnTtTg3rI7Zr zq!+)DP6s$-xiC9e_54HLRV1axfX#i+B+H}?hV?zw7U!{5w63>e=zx}d8VWgwzg$z2 z9Fr%dbS3ZE%Z=otRVc&!l0~v2R@r)Wl2yc0EeL8{ybEZ=#RWXMSaHGc!LqoFw8Y25 z6bJHiF!|Wa(&FQRBSK?MDKYB+1o$~`M*mzMYEb$5RPCSQ^C>C)U=t-)x*w=f>fD^#6DMkQ2%t|+*i&rda z086UrYxOtpj`+876jSW_HqfqU8lav{gS0}U`BwveGRr9035vXHd-W!#;A$pd5|fgQ zlHA$_DAxOltss>OxG%7-LJwUu%U{|7sIreo^QSZi6KiKIwbm#xuVpAD3d^**ucFj zm3^c9mmGvu_EnnV8OibcR=a-(!_S9etfLaU$RLAVvI=*}0b>_T2yrgdQppTjJZ2ab zxyn{(uVs53#F9nUsyd+t5mxZZS}{kf&v`{2>nZU{PADisWLG=WJ18VNP%lJT#ng?B z+CyH@P}#uf4lf%(#t#v~=A)9=Q{G?FXg@o?%_ACl0G|hmP~DwRMDfU3d{PxQat}Tq zxPN3TA4mA}B0eYiJcrM5K6mkXEnpY(d5pga&!o2jKFDW_Yl!)Piqc5$+_rz@d_F(0 zVLykIaVi6!XYu)wfpPQf)luF@Icrd-WGDx%7cg|MjQ++OPcTQzxodJ?Gh1{*UqMtEw0L z)^9)az;9gfoBN;fhU#N3d(6S=WiPG1qW=uSm+3^{v=74FNe@@7}1tV)$yF!w0laAa|J+h(Q z82&JM7p+MCW&N7y!UmERG`Yd9b>pveVvC-0oGiOc{&zF<#zD1M@0h02t5Nh*PX-;# z+k01k7tA$(%-FV+VQeHTbVNh4>Suc??&nPPqWV;I=mR|nGhZUi+?^tfDj$AI!Wd{z z!ti7T!sIY-7hyI>gs~@#q&H#aBEs-eOqe+*%=_Is+f{oOf;)L@U3(R33bvM+?Zaw! zW6>^#;LwLMAM>AV)PYXQbWjtdwo0)eTo{50x znD^&9U$pIE-XDsq8^fyR35#j6jE9Zqn&BgcXB;<#{v_9761u(7J>AT|s%khaCXz^U z7iTdri0`w8(6`m(AM@$;L6q|UQ+6Sia{{JR@?9ex7t4gMPMZ8dO2zCw!*SLUY-(&V zYizNjF&pXpc8#MidAmv$;K$|7{yD`SUl)sfGT2xy8sOBn6;|EkHV`5)ArKf4fw5dP z(B;kh(=Yrr6WA>HS9I6%cQAUDydxKkInb`;Uov^G_lsr_!f7QEzd1zbG6~ZQ6ZDkn zQ$#+p*`F@Y{*=%DyKMGn0vC<_Imao~Y5IFUD`KGc6bv+5Mls_kZZs5gH6@$bqa^k|g;j>)~lD#o}q!=T`2QlX@`531R#c16Z?bTOnwdN=e z)j{#D0>xOpgkrRA>+A+YK{bgD_a8qDrHSu^UK|#R8w(Wdk&1gU?kN7mP)r6C-!G#$ zA{6f|P)wCkOgf5p7z)ZAtQRjWqqs>ZR6-a8#!MN-w4=D*P|OAtN8SNBi-B+@dSm#8 z0tIQ}cp$Tm;*Sl*d_eI(Zz!QSCKP{Cpdd>dqnLLTZ#NVR0mU^xVfSUxi{nD^jsgXV z$r#0gqqxpcECm!}FD&)qgiu^xpde!vqgZkjlZIkcwQ2D1%jYzy$@h&l4{=27@E;cl z#w>xKYlG2-amCvV!FWJ0tHWIC0l{G*czc0hqKshN5xmt95Vy1*eDw%)$PgS6g6j$d zQ)L8`j^HhZU^*ap<)@<_+$02(1p)%IF%702!C^x%8xR~j3K_E=+#&>TD-g_;5zIP* zHyZ*%&CZh_duc($V?yxO0>RNTf_X>qCPT0g5Pawd(GZRc!CMLhM8M-AEI5KU8iJ*O z;JS}TJvbo*hYJMDWduu(V8RfLl7bN*eCl=(^ksa|2ZA>j2*&J?wSo`&j1S&m2*v|~ zW40nPJ`jR86$nU|#6uW&1g|#)lL5iY-p?##Jvbr+Z!8c@l@Uxjg4Y=WWsx+5H~lq4 z%vkv*A($u-%#;z3RFWZats$5V2>$-1$jGb*w+O)-3It@G;vvjBg4Y^?`GDZ#AB_+k z6N1+l2#%H!%sYbDfM7*qH9M0H^Tw(a6u@Nrzh4LRWp%*Cpk#-^|A-c-GavzIebFh7`-;#}O&TWh>CE`qQSR4kH z*&d)62vA41Wl#i4c#8cJlXP<1MRhEto_3bekuVESd)Qg?+ZiQx)^r&4kuYj3C3$mar{Xl`mT?%33_rU?QGO}7h*u_ha6!Avn(Rk5jMpo>I)z9v)ajL6jD z$zTqq1`AUw2RbCbbxj$lXiIi$Y;WaYulfmKwUxjYe>yO%!QQQPS$EzK7DP{SEs#>n zR5e@|Pyd21h*ul$Erk^&XC?V(Q%)zeo~|v{({dSn$-&1Be3X-uBogGK1n@&^0Do-( zKDMUR`X~p%AP`<<;Nt;Yu1NqtEO0h#W}TlXgO5A-D-C=yfG;DE0{9Vuzq$aQDuYit z_$v&2I)FbgT|l=cx7+A%5`ysp!Au#!v?DlV2xbF<2dAHS-)M&579n_5fnctTVAc`5 z90Vq9R+LFZmgND^}vttT!?dI+%~Nr?Xf-6=_Y=yd5v5()#+>b56H zb^1XD-6SNziR7Ky_GHmy`cMS8ay;ipejGnau6WB@>9GvUA^!P9hg>Ovt=Qq~1lC{f zaM79sb2aiB^VUAC;7TmT{0W@hTLb9YkKh8pPcd)IJ7-^GT(yub&9_{wSjcC-$@=&g zcgwUsUQw)%#WI!!$MQ16vJ|lV^(0to>1)1sFvD^}SlC0A^<}w?Wy!IO8J1CQxRH>0 z(RJ3BH+?bGtW4YR} zOa?3;6nk;yn2=3j7AOB|#5p2VFDp<@l~GMPs+Sn5>456JLRC+HB2)*zM6VpxO+qzR zpyHmNc($e;)j?1pho03YM}01-d_HuV!U#;R9jQ;_ra_`4A@U3F`Qdj&jSp{W4_R#i z$5d<~@oF+fA#2`dT~I@zbt|^}{CluB&$GkC*oNvM<@UbfEHM_4rM?NK_-c0PvQNi} z(a`Ls_K>2K=htU8jqKwU)n}-kecVF1N_$TavGUrGgf(M)8YxLXGOnT|F~lH&e+K8x zv~+;KvC6L69fPHIOYQM;-OVU{R+V|WSrV0Oc=}uVeqEE!2qtN|MG70 zv^~~)Op@Rwn)YdUl36O_nRh%dG&~Cd&!KYk=eSTDEKn?#Q7kx$QA4p5P`ps$wwB5` zW5C{(6TXjS1VZC1`pP}J5fTD|&b`1ztjwoS*h+W5fGABrR0 z=4}*CcHi(H@Uzch5B9SB0!?Abx-3OJx-1P%30jtIAI}?>mN2n~0+QlP-lIGPoWHo; z#jWQis4230B39}pqAN0$yUkF<=w$L?o#MoD)BGYn`8Vg4h;ovS1*_x_ z3ZR@R@@K|+X~7fG1LlEtdf4#!lx(oU?$U|m)b1rZc8cBqCk88O5mG?cmm_ns6uG*0 z!+SDAId7@xp2lR}e*Vn6S2+9r;Nio6F!X%Pij|1*@ZsMZ`h%Y%SN^UlQ)uk1;!HcE zR!3DHW?#<8{f3?gcWSN_UD2mpr+nh`BwF7vhpC)I^TVwubmvyZQ%t-CQV3f9PsFVv za9?txY(BAsi|fF&9Gq$T5>DnZgtzy^&r>`yt5Wvlw*xT7 zK8Taq6f86$$ZU#e08;E3C)?ud=GNb}S#=a0EdKD}=MMd@`o@At-=VCOl{;iCan;as zPcr2pBVG=NnJb;?26Lr#^v$%5p@iH{yCg&Jc$B2ZpZFsNI_M$@JP0vnWTU&sWoAS|w17fAiHJ?gTVYFb6krI?mBa=Ed5$ky?+$pApHz`s4`2Nqm$S{+Q%IJVxcMS=C6Rw${qy6w1(sN!{jA9s( zs?E5%a9)h7MfKH~I@7}i6?!tahI5O2n79CdffisZQlTplB>TF6>ufG8`}8}LcoLkwohr$XZ0v{D0{(kB_*kf0h9MMk8RY^2qV>Nc z@bLg{fu;=nu)v>}gHM#f#~s|1$7I}kHMD+2;J=%LPnE$Z9UPGjapKl9@S6lKyTnO1 zQwE=Q@Mqh^6*|vs>iO+D8sEHf))5$_3S`Jg7%y+;%n#K{B8-#cwP0{_0mO4h9wIws z=r@E?;st5bQ@j*XCC85Ty>2i$VMIs3*me+NY=DR8SIVVEt-A}cROO!P3^xFHXD%=|Ct7~*9P>of13f(tOjKK;filH?aMh(nw`llT=x#$I0asRPHllq zq-(X6Mt>8SWUDcoXzfRXK#T6+E-1>or;%(UI}2}c_^AxsOlEDrMNQ7@Hi!kT_>OJa zg)>m{+X8THFK>*ZK;3dxXwtkkeF7Lv)!X5(;a}yaC2(2&c`T6@x08WYOI#*ScM2Zb zUHM!iJ^QNk?BC(;HEqG+oq5B+o31N^F)Q3h`K>UVq6b`hF>0Yv@+9&R$zyEo~b{dXxp{h zSYCatEeCig0x5b0DH9U?1(Hi!R%R{V_i!-Td){8y)6V8Mo9onYj%I}0ktE1D*C7VL^^-l zYY9K!LL{0$P!^n##rJg9DjeoeI_o^aF^2#fe!BbjyJ|OYVV%*~>=xUi)K}YE*F?@R zBMn%qy@{!BaMfaZo>-7=kh+1c??8*Sz;^EKEf{)t<)-bhesUg<&)m-{Y4E{im+PJY ze{O;12+nodmS>!Kt2zj0&Tsaq#V3DJ0yS74^bv9-_Y;>kTMYUMYC7t&_JK+537drAw=W2Tk)TvXO}2Y8&;F}Z5?ub zxV0TAoQrf0U|FY_x=sN!@p|!!(zUsRc_^eSe`eD4Vopt}vy-%i3B@L0bT2FipE8jW zuKMwQtTR3?M6|BU1=R&n|G0t8$=Qm2d4c>?k_&=aW<7 zFHW-Yf)8G;N|c+LSFW+v+5w9qD%*WKIA}@+-#`4-ixN0ef6wUec@uFnn1Kg#RP-X3 zuWXQA6v~a4Ru@7T-L&;WmX`|TmY73%ZPe-On{=87sLdkHg#Izv3(shYiCnnySfPnb z`04m(CrCVtSJ*6~e~}UBX3d-_Msj6=v>0*3o$8_CxAT-808BxK-qX-1F+QlmY~R+{Mg+Zx|^s-~Enl7r`0^?tSjN*WE zyY++9)~>L_Rgmg+&Opcpyg4>3H_NcZo|7@TIT(|ijOJoT+g0(QH;RKdu?XPqGo|Cs z%(#1KWFu0-mp5YAPftj>(Q1JyZtY~t_@z~gt`jU8X}V^^!^5D3#DOgjN}n^*j9r@1 zIuF0ta#+_GX__1+g9G@`;bv{857I#fOyW~eHJIO;u}89P zf1QS17~hhaGQP)To*`=vx$!*~jBo9%)_zKY`Z%IG>y*vMI5-<^GPO%69k=Yv-V_Nqc&5s>bv^i5%qa8N)uV(_Q zi$Q-4?bllZ2BW*8-LJU4%&d}j*vvW>oUGIoH>be4hMHiHjBGj(HX{C(d8((ghUqQe z$Eds8U01^t+IxBk{L~clfhen&FkK1VPhSPovre8Gsr5*Xpn?gdz$@rbY}uk9zQ%8J zaCI@0vuC(KMRf|s>ftq_QEq1lNlk^u3Q23ZGTBldr|*#&uoOIjz7@-v1g%mcA+>#h zw6|!nK}(caK}D|!pIw=&#IjeU=x7mCY%@jW*cBGkP=`l4cqM+6a?vP_dVbMjh{^RH z;Nw?Gk4E@>@v(^>GJmrOM=BxNpUxuT5B#WR~j|3mLkGcjEqLQ$+1U>+grp{bd)`0_LD z)-j~+Ru5f*ogq-E!AC5d1CrfbdEd^P)n2v9=T{ zV(Qb|1rjB^*yaA)VRVshz>z zIe)f+gJlPeg+<+${LthK0hvuQ3y3VS2|Mk&u*ky>^d3ga%wIcB0zzXk8I!y8htW&Y z|Cv5|lg|(?%eJIn78T+u_Gc23;9`RVe*d^t5G3D{bT!K@pkcy{yy-$W5!Dsthss1G z{Kv2G72Qj}_90bE!v4Os`KB|-Djjer{+%f^*0eJghB8eC1fy@11C+l11K_EJQpY30 zBEI$9)KnSEq+_u}(s;mf#J4%W^OXpUtYGr6uskEjGEv4d?pUzC(SZTW;UBWWu$sa8I61Ue5E*%UQX)f!(@123 z3a6Qq|7L>l!M*M}B8T=0BD>mIJ$#_p%IV`|LO-XO$cNu}*Ah9jR}k6N&gw*l45yLE zzq*QlV?Kd7FC#=U<$9D#Lh*HF3;Q7iUJ{vE^i~e}RGGW0xb>Ck7UR{pEeN5k1a4wBqwb?+yQIxWQy>GMntyu`9#6Ky6D27v($f{Fkwe!V zsPT^E-rO5i#2FJ_Z2}n)J_Js35AIJp_s0nYdI+$afJ=68zI#}_6bAs75(@x4r8)E~ zr(N`Xd>V7`{&$^x5A7AA$5q(sq6adZM$z-%PdkxsJ%N1RbJr0$v{w+>RoLo8h76~X z$p5WblrE|m`n%V)IVYBe!UoyB*R$)wcI zbgCrmsybCcWU5)S3H zK!FweUaSC9Ip!{L?jdsrk)plz6R%Zd>UNIBD?+(~oV){V8EBzhNqx0Vxo!D3Ylj|tyzc6spy17 zqQ#>)JgcP3N?L7BJtF;unys#~ojRgzrxMfAYUydO#=xCPG0{#yT}&H@s_u8&MNZ$G zha5$Z6(i>IPItB|!u4!d517oA+AZu|UW(ak-r4Jyn?wKQr(-XKtveT5C|#N45_`=$ zdxgwykx9;XQZq6id6@T~GObKL)VtJ+?O-OcU9ar1(-ubaEohmuk{j>73@nFuXHu*2 zmNd8AJ7-l)1GjhYNOKl+Af*ChKPv<3+K)!oP7Kt$De;M#`X|Y!_^b@wG7)Ol^}K64 zTHF=&zhgIA)|;-)Xfd3I5PN7DP}f#8S8+Z9m?GMVmVtC_L}S!cF07>7W+MU1OYsVr z^%d}>=Foq(RRRk6XD_wd`;l^#_nQZ>?2cJ>+lEQyV{pK5w_u>qkl2s6PE z(zX4aLSl5KKuwl!%{HKqZ>{YumLr;=dpWX4jb3>*L+7&6&ISQ>u0<-GRq0#?>=Y>i z>^3=LD3)bO5Q#j3`bs6LY;a4_`zLu4H&mttA5wBDi@ztkLJ&7(tBN%oWKSEApKD`ia;2L&>> z`Pxw$|CG+((^^?9t(AqaRz}O)tF>ku$%}&1k#Atfv}NM&+~UajI6thym*MJs%u2dd zC5f!8QsA*;MM8^vSQDLE_ME|BR9BO#E|8|{8OGTwEBIV9+f1r9EtB1v_^R;KeA%7Xct zo}>FHq%ZRI;H4{C-{v3RIbCwJv_9tlo$3;;=l|<<$zS~~X^|yUX>-Txq?`uBK12J@`MHKFKAbOh&uTnA5AC zo1U<3$s!C@U$v{!omZySXFu1y5m}D?$;&WpJ+_7Yf|>8KuKUQ5Yz*$HW%i>*^(5*4 z{VJ~R2vkkVN{suRfwXS%j6(fka20{XE~~H89Lx2}_q6EZ>{@KZb-JIKO8tTy$vDWU z2VsJ`BOtTUTHvL4EzJ5_czkmRAH|0D?^+qnlor?Y|5HY8@WHluoIw^&SDfMhYRBg1 zqKM!;)=v*bG#xEIUWymrv@gELHHR+O;+q78gmE?fHkNI2jYTGoaP-jd6L=a*XUiBS z9m8V;KAwYrlK?@3=wi9hdq-9A=@>K38HAk&Em0r(fpW z6WhEf(fv98IKRpf@C)mFTd{UI1D|iWndfYE+cJAJ3$<9}MeZYeKfNV3c6t!@PPJs} za)pQ}Ivd=XDm}i9eRJxq@0(jJtKbE$uwdVud9>{A^Dd21MIRqnC}@uDumcO_Ebuz6 zpblZMK&w7+8OArXxxa(+IpnmyJm2MAsqJkIP(ttfdvq_fZRh=?E4c;LcifIafucxb zbh`(X^y?A?&UoI!mv+L>==Nsetk^sbbYlNT<-oc|rOM5fVlN#Ma*)gPbWfjMP1@h$ zyhppEI{k+4KOlxi@XV4Jyv=tAoQ#SSzC_n-!!F52j!fWA=L7HN%h^`Poa zBEaOIUBd|-$9442#k8nTdZTQSZ~xcEL+wk~r|l14rpBI5SafZXvwkK3*i$`m2CN#k zP{Bp8Y<>)o?f%rGX$vS$bnpJ;L=}PP=mwnXEZ`Lul_2K{Wshkylf}^U2ZK4#49Q$J zGv!Yl#1EJ+&W@miWf1Nv=m3c}p7ZuV`cV#B-m4zic*R+V`}fUOp2SVw-o}KwWt%ku zrh%vpR$kOC?pe2y*!H9BZ85oqcl%NB#0SL0eJ$h3C=%mQf;^+3cF$UTqhoAEgff3n zkb@IIK)|^gOn|O(g??3Sg+cR{4fkhwXg!JBJ!HIQOt?P(#@hp zGA0KhypxcS$p1El*SdF1wR>mUjwxc*+a4H+%SQ5J&bzQ13AlfAe0#c4UT`cN!w-b~kewS^{ES1;0PEfM_usOFvnV4GzDIynP z@i4449V{Ln;3Xh7*Q$F4T*RO=U|VMhAT5)EN9@QE>5nmnfmGX`OL9?Uo+HXewarug zIox@Ilgc}f>jf7 z#u`yU3+lcxYuquYkJjK;}pXqKHJEOD8iSLp#9)NaXK*Y5)`3gYyk}C=(got7~#mn^cXpYiX-5;_3UuJbj;tr;m!Kffr*vw%OXFSzB0lQMJly9Z+0Bnc+>M@Dr3zStG} zhzG@)*7k?zjF7yZGs4E=%^s51azJ#*)SQH-R9sv~BKohMeMOVma?zCQND%g>Hj+PI zW7pDrj&U57sd+EPj7Hs8Y3=*Na9bA3i;R=?KeL2#J;y|FO%v4w;c#`|*&bKXX|WVnT8TUY zxluK0x{B6Z$;%pR6Xy`KcO%4sFbGTCcfqqNAY{vFfmZBdu z4U0fJzm6*laWa8qHT;WaZzIQ(SLTvb1AyW9w+FT6*NO8y;J{0-{gKTf3mVLV z0`8>aud-;xEpqrDodeI6foC1~;f6gx)&k^Bf_zjCIa7w5cF2bbaxy?x1LP4wJ~D@# zDnm{>kw;n+^Kz$NwM)yCO3iADD2z%ymwX$O9wuulfaT7Wzv z$cN;RQ)S3WhrCpf;{mcSKpqz4gLBA&-R2gOt21K8ZOHE!Q8NEE@%CX11EDgyOwOvOK z0B$5sbm#V!K35Ry8Vcer6uzPyhd^3TxdDq%D4|MuWco!X*1oJ(bSu_y;x zW{H*Y@oD?(5L@Xjy4YYi+E-X%<)DGg_JA?n(FuYpAjx+aeo!0T;v6WkZ}krY>b1Ga z5`gjzbsy;lLNzEveBrY%seEi}>p^5vuKnt@T93k1oRktU5sbA(p8l_neRlX;%^?#u ztj@?L$04}?$(ChaftCr99$5-`0=mLk*6$LEAf~TW<`BW6%6sdTFk#rjHxGFs8VUog+&E1tJri%U>V-cn2&BYF*S=1wF9R-a7 z$GO|>K(hbi`(HDlF8vzjqIZvcTF^(2PQ-U|rvrA?Q6Ij?&HimVe8Np6(7`#Us)xj)RF>OgLjYh=!cxs$YSgmCwpI6Ti} z>3?@{6)J&1lVWZpO3orn4k|CleT!*bdt*w@I!h&Q>|5yCbTh^1)i@q02maD0=KedX z^^4Ce5(*3&{*|M6w4RrgIE@4>57Caq>nf@bb+aqZwH0y7&y>W{C!->XV4r!He)uE0 z6mO2ww7O4(4;@`?$?rmtcjxNPy2VZ=iruxJg^9EndXG^~AeqK%wagS1(`0 zBDqC6wj{UaNUY9F0xR%y#Nr0wmR%jFNtN%2Y%pJ4uw`rC4efP_g!!K8*w*%dEtp-k zgIhV#HN+!1yo=>zXCw~OZEC>F#q&0fat#k`Bg0gCL&m4W*}=~AF>Y|MqkDwLvLS&)BQozc`YmtVx}rB? ze4Z~T6!(;6{;YdY zYda=4?xf~bg2gOcMox2L^uztn*CpaGxg|jmE0zTDiy^pHCd(XjQpa<^`D8^Dg7>

<%B5$j+pKw=;8BpDi=AVC;puqoW$Df>|qhxA>K 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

etnpcAI|raYZ8^WJh2$Lf=V73wnvT!XmK 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 z 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Ó{ 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

&8pDib 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%0D8? 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

p@v<$+4I~mH9VW)1sAKMHb zr~-M>elw8OWq5L+3V4v$KYo|7E*NJFe06B=twC#PG$;Vqlw)lmn%{N!EmpfuBSXM~ zB^97E*DE+ytAI2hOU)G8N28-5F8=1*rr>qXnK%l#s)94U6+BX_Kxsy!GrY?S?{ZKj z!;d@Pc8=Uq>G+y{P{yYm8&Mq_V8`)m7LCtu{@FToa|YeF2)c==r$hD<*sSCx(i9z{ zO+IL_QQjq}-rkVa%>EdQR?}vH>{kfavL38_grYOq7+yF03;;AI=EVAqlLvgiVLk+L z^AYOeNSeYT_MePIL(dS%bG;xxS_9eA5VBUl&haI0K>8u1S2hz1pLT@Ng4LdgYyCJA ztJJHbW(Rr|;y)lS;>?xNa>rmDR{)$Su_t=j#~YPFW;0BNXp zA7AR#&iZOkS@H8*d!}CPtX0d>GRH%y+WCTePC|G>UWeJ7mEFjK^uuCu8!9GS<{wMn z*ibRiQZqKGyaVJ}puBz9pRy?{Zy&#mZCO|;Z@OOIl$G~%m3MUE@{Xvy87uFIFE6T; zccNb2jFoq}$~(Pqc_&rgtd)1tmls#cJ5w)j*2-g@9Q-X@-ki#tAj}i^^W`-vdsWMrDM^7ip7{531(P1nntvhprdc}G-Um5J`}tCE${K*zkR$T<@m zh13@%9JM;pS>0IS_U0_0Ld^8lnE9x|@if74q8E+_YH(PZ)1(2K6MP}ZDVIZIQ+h&@ zkY(7lY$S=srO)HA=kb&{tw(Y1=m`eaz6G=%sSxPs%tX8j zvFY(uhz)ArzTWojueHz891zzcINStfK^0=Ej=%#t=NNAYDwyuA;Bc)1OLN3kFwK`7 zG3iItX=nIAZ;nRy_s{RNxq6*vtj@0LJlk96xmul;W@5k^byj;Vd}p{ikMcooxB1B3 zbUl|-w4k|Hd&OM$EHD(#4AjY(L!JYmZ>QZl}e zy-*bZO{V}N0N9hZx+5cYp7n!GO$iyG12bm`a=Sxw~d3c3Yq^WIGWQ9`F z6mIe2RoW_VHgyS9ya+P!2eWt?4CVmGzD}%EP8A2C!p51wPFN!L5dik9bRO{~S{W;} zqSi;p<F@yx!;Y z^<+|~-^A0eHrKEXByjtl_mRC$%M2#v;KdRmB&GNz2=@e>`OW|l4%O2AnK}~0%|C+z z&}9P=yL>EyOn)I5-B7k^m!I?YQBlhcRUOQPF3O8p(LBCwVm~%cPv!I8=Po{I(XVEz zz?lx>>}}WaTDvUGN!P9!zL4Vqm&4S7k7;C?8gi=kq*)N=BY4{07pnHukPvJ;eU6Z` zhSdAn{#GK@(#((s%pK9jxHvoJa+H!?oVsH>}F>fCFrD)+)buxLUcT zIYJtB8(+wA*ySiIpCE9lKFnDq^IJYSQmcGoM3tklAR5V8t9<`RwQ@@{MH-P4U&wLL zTTVZs>29<1E2J^_1;=rl?D#sT>*boSMwNC&|N7-)*Rn) zi%wjQ)Zv&mI9T*&>eCCyu^Jqf<^*Yg<|tptaopv|sdiDzp|YG#&Accan=r*0Lh$-Q z=*GpRDdV(BQ@jco0hab~*1@G!y0A1;q@ltCe95tqJ|H=Iln;Q7PP}wJL(MF$iISsB z)jvyB=ZW4rAE?!7X->L2Pt2?HOkU^d1?rru*LlY3#A5>9>8 zSbJu~?1kfa4Gv3lf;2!g!)t@)G7)qLDWAT4s%ntyP4 zwfUB2iZmiEzSOIo_0=A?;^$X;re5u=Rm)00;<~rmM{CtunzOFjxp~zdRcK%e*>9qJ zezi09z7ViSSE#inoKKLm*4hVFR9kClPLhV!p5RNpwfin`)y^$a?STtwNZxmWs>K}w zSx3%VwfA07t=7^^lZI-i_)@R-jIZ{j6+geVbM2%Dh(E0-jy816rog7{TS?&)xQaL z6S4XFZ6IE&}4js#=GfEkT@IrN)KnCsoX}J*chsS_ZdV5RF@k z4`Rq9ErCZ-rWacxn7=-7q+a#(Dq#l~0K_r1)v$AHRTVpZn5%@JqpKLza{~vX`eOL` zDi%zamICpMl{o7CJ?c6HdtJKU1ma>?9E!eG-MQB~-P8;Ki)dCz} z19VGr)d1hWx(c|ZnIa9q@8b(O4!9gPP<~nv9OVTcm<+F;Pf#=UnvYt|=3jfFx8?_G zH8(xVPVm;Dteoao?0a5)K+mJ)^Xz+<$i4@{48m|ebZ6?&&6d!ev@C@+Z~<01UC(>c z^0GEhm-M#m(OSzIzGZX&3N4#l<4FE}y(@Y9*3`IUa*cZ2pgUV{*#eW?iF)3%)-pVA z=zFTGQOm(KRceV#M@3SZ&JBSu#*m8Mar&*XU3Xxe&A2~;H)9-_Uyoem^{wrbkwRgF z8Zy~P(Xs$p3nfxGRn$hZZc=DfGYPo3oAM!Z!G>Ifh6QRke`d3EV(lo3sWgxXX4&cj zdYyU1Y@5KD;?aKRLOx}^)0|It({&6_S?`b?%YQG1@2_Dv@&E{{N7m#9FoYN=T1=Sy zl{`j6{RMJ!gkh-zr6&C&lPU&^i_s0I_)n*--yUAmF@ZC+)@7JSWz%bGR5rC%RAyNY z*ve(ottK8fBZN^3Rk$_H`AFeFRC=-)duDAZlfoADI}j3PA~`MP>)Iv=+t6sCjBh|e zXXfSIhOBV!K0zW=#trLh z;O}8g_q#Y!#uYhDl=0)57Cg>C+_2kuui-r;H}+Uh>#1-nf>s{6?=tjXsq(jW8{_0L zu2X10@B9mWX($oBj}Hh1+3({Q|OAo`)ae_i`yO|QU2X>e7~`*T`O4B`|O-GKo>o@8Fk za7&O8?QG#L7g0QGFKjCw<2R1SA|HaC>v{fRkHkO0b%x^-mo8E&6nn=j zcFSB)O)iVe!cb5)&KgROkrjiECbF#N2?mA+;Mru}EM;MyR&tUFm0{7M&-c;bWP0k0 zme${k39}I`QhFy4rCsa%_{YVb-stqFY^!Nx!_Uux4441gv)_1Mum`b{#TcN5m*^ll znie=?^7-2*)qLTmv4SOAH(g_XleO;ii=TfM>{58ZNT3NgGRO#ir~`aZ1dEDL(t9ge zv%{S78ltZK4EuP)YwhS^HN!QH zmn9RMzRyyIwzC*7+lDl=g6g0OIFE&q-N}6`-R?-8WZBOk(9`yAw60?a$wQ~|Jg7uD zC2>2dMC>mpB{9!6A$&L3)kz^($b36otoyi_<4in|F)kr$Mw z?&PiUnRu>dvUn1XfASn{l!L&lRQ=lJ$l4_prhh{0>(S^&H`E%2N|p$RczOc?O6Up&7=7ASj4yeLn7QKg;2Bx`>4q-7N> z+50Lk?8(Gho%+0%(*U)N-r?|isAL|*G}9NizNa`_eKR_!mYR3En*fG_)RW*ssoYF2 z)Ka5wkH{gQHAXNjbCpD)cC++UZ}%|A$JMfsqMoHxkc=7W%vCwhQM?X2Lj$i63EPSo z8uMB-0Z301C!bQehh~K_UiwQX%Gd`Ijfr;lhdMr+xJsnWSIB)b*ghg;X{P;#eJI{6 zh%u#9CIY%X`Ai3&Tqe~sMHch`O#>EyuN^&40|VL%9s&{ifb5wfSkT#@;Z$8ikvR?5 zQS{j-hN8JA2e?DgqfaH%*(aAtC_4AlPy~T3MA|t6pg}M6Ij4Nq#43~@5+J2czO0!n zkR1YK%s|5~^YUCO%}^@OJVpZ1&f2RU>*bgN!DXl`l6l+a>S;^fNO^LqU6O=nE~3$DshZ(F;^VV z^+GwSs{gKN=g5yzQls@b$yHGVHIUZHOQIHV%26ViV)hq9A!eAeWc4EWc>W?V5Sdu#TFJ?< zXeAo*@@7i~0x@h4a8zsN(D{g~4&@+Da%VyZj@!awwLnMPRJ;IRI7*>matS&*7%tIX zw3D&ljYV8@=B|kG4V}TN+NxKpIn~1)0`wr$gr6P7L<0+>Ml3Bb3lx4i@fO`S1~8CJ ztoea_Zw&idx@=uWDN_ zU8(J`uGBWIE9)X0Ik?Z?VvswgTbp9}^@g@Hi(D0*6?CMZ!$i5)XE?+CIlW(cRdf&U zFufsiSYQDd7PX??>E|@t3$q!EwJk>25sZlg4B1{w5VerjRB>bc5E0}CX>La`%b6MNA=Y#HBmP4E zG#ZG$G_tPVEeh0Kx;uZ@@9s1jYCXUO$aV*9V{HGtmJN|ZI++bSB4?NNH8p!RJvEU zHrC{$E#Mi|5JSbruw%L+l?ZwwffCPfrAFf>cIooKrqT3I-57JF#X+~Oy;5Xq;>4m; zZ(=pG#D(`aCK{JNsgN0&Lka!_y)B)z7ZqIeV#|;5YBjC1CiS)+aciwdGSYf2timoV z-?>SM`RKEo9ma5z77cYrtlIiO#%MGhI(${S6MUg&;>t%3PDmMdi>xMk4b zXF;6WNh5ABFr02Ja0oidG+I0hr)`%~I2CEb&WyMp9*LIR5$nkIsiqxwL2H?2p!a!n>Qe4CfOU&N5;za6WNqWD`7< zwQ4VMZ+&MWadq&$c(sU+rgTM!9MlzQcR*Jb^Y`mYpYPMv0jNWmvRQOcPG;hFD8)q8 z$h0fi$Ex7z3{{SZ${AA{*&I)O`IBnB2XUraCv~OPy}DBCgs#+j&ewWYS4LFMQQ4+Qg=g%#PQT!Wr4yB@&-L;~qRTYbw4RfC*gNG^&&gOJ zW2F;C4pkM&=de|o065fESTrY@S%C?%&WlWtT|=hpLXc?~%w=N*gZmr1ov!6*iv2Qv zNV5@4Dk%p+c&viWb6{HO?-4L?`h>1v+vrQ)4aVksg+(My1&xr-!f0d$398Yn8Q;Y) z`2-vljh9OtOXU-OdYqR_8F%3`#Wpg6^E^f1271_DGDce8D4n#ZG07hk3H9q#ygLthv2x#9(D?B-Kc0$=S$2GR~{8(Xfo+*sqOjL9F;j zTx1jff{O-nF3R@9Z%h3+GM|^I+IWeoYuyippA3zI0BB>ZfEbXE(LzPK2n(>AaZ_jm zpIS=ujCXQg;)u8zH475-+ymbg+!H;LbB~)NJudr5qt8xa5%IL&UG9X(343L_Xm^Es zg_VYFj_UJTk9RLXjRb|h&zYckek}Vu564*Fj>5h$=ssZ~`Iy7&46vO%0^`A_7o3l~8!C&g2O1>E|pTV37247AHkC56fq9 ze(r|d(Ub*sj;}6uu4K?s&Yk54r?gpLVtRM;yHu7Z9Uv6=;AtX4$z;?w*)TVEP4BY)0$`S8nB7olQ4tkes=^W zH#?{Wzoa$v3iG^jC@ES}m@P%Rv_S;GzX=Mzd1TMAeXh z4aB-?Al6k>t?$UKv${H)(LIWn4G!m#F;kmpH@&WDqi(B?Fa9I+`0ttbG-^N>LJ0qI67a75fE5q)B^WzIdTyksF2HtD@@>1)9lX4@kc# z#-6p~?LHcYE!ogY=<8D4pm*kb^zYubY4&VuWThm9C|mA zz>LdIA10U*aS*f`;>-!yVQ7f#KisJ;@RHghg|nwE?_t%;$4Wn6UkGSv+kQS_YbAdC z$xRp)bo;hLq|$_GXWlJpaV|KyHD_0uUDY$~zHRZ%4pxE8Pu*_u5E}ooj*7S$zYQ z$pFbj>b ze>arl&xRhGRF$Uyv}k4*=Z;3l{JUh4dLr$ewD!&$e>@qg5%m@$F6Ot`4LlQS$l^`b zv`Z;k9MItOwr!Z^0dmxhFS0>a5D;cn1W0gBnE~m8i8J5NJ)V{qIrCAKf(k89dsdnj zC)68{OwGe~Bo?k=H|JHa=E+oG+MZZY>(M&m(FRwkOj_!U@7mSA)oG<7rl+6iMVh!UvKP~r&hgc@cj$$6oQ5~0GH z?ok5)7AwcGa3uSm=&%PdJsRK>SV>=qM*fu$gT`a6bQ;f-!qK9L$!R4=NY|@V!ls0z zk+m>asDS6kP_83a2K?SxQjKQjQN%o&nTNdp-Rx5=v7a9kPh1(UA!J^2=OJVs%D$OQ zWb$MICUOD>z4!6CNMd}>^xxSL7NxU4{DsN1!-$=SB+p0x{}Zq9l+LYU75OJ#{$K4c z@R6$fU8rgwsoJ7cpFc+Rx9zz4nrBhOv!64T?fmxVUc2kM>u>mu=iT`H@4V^e7yO6s zdf|6}&-dQ)ec%5BFZ#hBdhxA4{3HMIB|rL~e(a_HdH49s{>zX5*ChM7*Zj0l9^&)L z)5I@LrUoOl1(IlIlC?I=DlD(%aNmu(>#Va zlJ|`z9N(8@?{X!m=3A2Ncgym=H_6^sru?2H`xDn1mHyr2vu`@o_gsnN@8ZZo!<>%y z{iPDp7bMwR%d&1xvQuSQHznCSU0L6mWdBf>^?Z8Bm31R${FP8XFUbyKiL1l8V@B7OdINx`wOv$mm?<=2nB-yXp6EV-TZy4-^ zAkW_I%4$#+$Lby}OTG$xm$^B__bp|+u1vB6uB>N5=Mx3pak%cg_ZnsBxH%5f{i%=N zB|6c`pfx}{x4*}}sXUHP{n|H*Z%+dw4;6J?3g>;GC}l&E-Sy_; z+a*c%&}R%<)qp?feQ&pK!c!;7{@{~Vrk+sMKkrhiK2A^l`29sb&IA4IN34bx-#Dps z@1*6^6UUGKoWqXje;xRJm-6Y9&=0)9>e72o1%319>`8ez_w&r#taM?Av#%cgYymMR zYyQd46}Ts))i-{n$j32FAGOj=QgKS<+g)o^CTDJbHLS&UxNLU# zVM`Uc5cny5B+jVhU0k$&>GKUSIA&4aQwo=y4>@x6E<7f)nu=l$eX5=`nWm ziYb_k{_a&f9M1;RDdr5sBA@`Bg>h}7?RaLkap|1W=xp+S0SHt4GtQI92i3AQgD0B9 ztdTuA{yqwa2}j>!PU#Ff_v<(w1LTlBlG@`(Gw;A7yd82#G{zR({n;d&MK?9{ji3*^ z2%;Wh9tk^%rrHf{WwcjVo;VK0Ua=e5UNJN347*ofC!nK-QkHKz#9ETfiYdgZ<+TiF z7&mkRaDzk7KBPt6^{3N9G^X}?ll z$Wv=au%63^cK2h{+7WEvGNhxuf~=1P9$CbKY)Nsqs<^wjxVx;lqtHvq9~qWM$+#6) zn!IaN&~`mLBMGiWzwM2GC(matds3!LQ1-Z1OO7wBSS<^4r7UF32A``r%T>`B&Cnco zY&?BT!LhL^U~7G2=+0^pzzyg(?pf7>hDJ;49@a;!C|#zWvbg1t*_y1Z0~LEhZc=UN zY(;FAa!FDiGu+uKNB50<$>0@fRv;h-5&p%H~TkSC|%+1nGG?u5X%pA8pa&hWFYM}henC4&B*L_ zRNqUGSsH{fmPH*OgVX{Rwp-)W=wqyEk3qXnu^6<=UQVZ7O(3mD5lm(k0;2>rBgcuWoa;e{jA%_Mj~vz@w=EecDo}9eF9i!F~ga%*2?Z%gV6*Vh2z?NHrN= zY)V2f2di!y+tFQ+*DKjsBEVe08j2jK7KxduEYjdFibXQ2he)8+=dxH zsZ8OYgvz*VX-K|kcj6(4cd;)HTE$;i;jLjYcyJ9bU~{-#PaU4*I>m)Km$)5!&{i&( zhcW+C+;7frYZXdhx#%+<<$0BkHv zKDOWpf{=hO?MR&T2MqSSyDqm5on2BdbruW=ugz1y&d+gcS%P z;AMe?96yW>G+3iU4Ilbk8By$r#vm()20m+SL5GmPb}>-U$Y__2$`TC<%@Vci+*q?g z>|l1<q43=I=A(0L)#h|{W;tQN^i0qYZCw3C|ao6Bvs&3lwPF#= zo4%F(F?-V#ZuuBDRMnP~Ug>O$ zwV&rw3Q5;c_xUjoqUMNNooY*S%}}&AR6urGht|drppXg@&pm3N@GK4y^#*j*L%}Y7 zzsj~kJHuO~FL4qZa3MB3ws{tX zs9cyg5opLJa8!<+80Orj4-=c&o!dp0e*JKHMTFhuYYHO_~J0ad6 zeJ{zjgd7nT4uk8B@od<+m~!O3L!mcwdnynL^mHcdu1vo|hHR3t5x-iu`^Xd}vU18- zJfVI&%HG}!6mo5SXO%9iJFBIA=l|ME+5|8fBcaw7R=1aAqb~zE8VL(`FOvEX_i|pl zE-TIy;|MvNTIwyBi=>2YuKt}+dMVf9dn#%wAXKor+`Ts1nX$# zNQn~*9;Q^i{*cGhmXL$HLe4y=k&i@-NNQ}P1yJob4eZnA*iI+IS?TwwSB|*k zgERs~#S%}G7-CkwNp4f<8roo57%(=6{4ej>34|Nz|f9$H6 zQ8l*Mdn{IdqN}2oCDg*qa1$43ceFjYli^`2_3^ZU%l6%RA;uaTcN+OHeL6&UDRd)? zt1ZMR;U34o6}QEc!K=IL+v|5e9NhW;^7E6tm^g$kl>C_Oo^Q0F^ErV&MOY-L50>xW z2}NL-x$o{n5H5ZH{B<}0Fz){3p019|kZVwXx*86vF3aH{cVaYXE6rFXc!+xfAzru+0rDqzDjB4!;NP4b?2KRJA zF!ODbhdS#hOaN0xclovLfopFY4#~Q%y0r&t(PSRhj6+i^WfCIx<-(Bt+A;Dq!29!^#)N%)CHWA(?yGsd$ zL-(-i8rHZVN2VdosG$dpeV~HTGO@a|!@qN9nypH&Kt+TNbE=H94H7d*HudO9kt7_I zor#&S-bM_;72--ZVTj|1J{@=9fzjxJxI5e#q90lkFzPr4Mr5HT-yCIN-Q;&TOZQf! zMahy2fzjrOCQuMLV6z_@SXH#$pzN1JF+ z9K57H=9A&s-Jl(fY(}p7&>$I(HoA$EJ|}tUimynY(=MxR{RNdLb><(9LPE|;rh|}y zR3*y!A2hfkOePLFK{4kGP|;`5W7KM-4+E|4kX(jAd9+#OKE)=6LYD$XgnDPJ-X=p; zjxU0EYU3(p%~V8htJ4Y*JJEEML+qDEhcBbi zS#9)3O0#XjjiHP!45Thfxye}$6f|lZjULr>l{|AHQiAI}O)BL&*@TIu6}q!`wVPSY zpZVU@79=ZM)iI1_=j{AThqWn{ZlxV;x{f{2OyK#3q~;kwlWp{2T?g@G(UtuT59+$& zs_3+?5YtJnlDrS-c_o`yb-kEf2fCvE9Me^9G`fQB`*lTpAJLV0%wb)TiPO5$VW-gb zC~>;EJN-??mBCp5z(?MgcKUNJl8}R!2a#Ca^@nJC3reQV1KAy#gGsQ1d6Qy<7~KPk zoeUd6h)8La3`W|WEkKd;Honfks_rm(;T|3DxECr z-yE=^oFFYuEGz6!kW1bXARcaOKq7lf(t!hg&}$)fQmGR(@=U1~jXau6+6d!hYdWJ* z&}23UkRnBKec2uK;`&3v0;FzOz;=NqEFr3nwP8Yg(up^ldbBKU_jLwx`8p!xvYg*`_ziSe-3`x=s*9bnvRYPjb1t!a$p?@dV)!vaT%{H`0HV0!Ekr`5j=}@C; zf)YoTCGBQ@b`t_5n9rRrg%yk`U*dT4R?XuP1J(tu6LiM$gu0*Wq&kMfHnZ3M+(eqC z=_{CK2HAsO+>d^oO|+x{-0o6xz-A-kXwB?RN*R-~iRl|<;1pD?zD8#Vv(x!Q%N0WQ zEEE-N1c2`PosaRi!bNE0D&)Qj;E+ty$O)l~+bM2e zZV~{Wcas2;ryM1UAv9!>upFa*SyoaAmwrO%abXiiJHBCEVNh>Km8U5-GaR&|+T1LS zDrCAdMJzyYQnTB>CyJF;)^BluAe&f>EOktVcRo7X_28~#^Vd1&j?ramy#}k* z?!t~)p^p-r#Yy$(>~{rV8WWfDq76)3RsblMl%a}CKcfeiA&A`6QA8~!tVt}bHj>*- zU-~+%4ege@G`Wbwl-wtF59vLE*&YQShz0F|N%?XC8K!@W+9JAzfAV+P!C!qtnjQG`8`AXk zD}1`_(Zjqu{iu8Qr+%SuD`N{p)RN6bUFmI7j4O7ht%ImZ8h+BhVcaek*|;4=ezT_Y z7y>Cn)d0fViJOe-8~DK4W6>C06Sn*Jbj_`^JGdoekd@F75Aq}rMxOTEq{I3GQ?JxD z^q3zI+gO>Q5eW&k5q%cawNS+@C>H~(I|N)j>CtOr?B~Df%?lN6fUZ^ZEKC{?2pOGq z@~_>vkClycYm@c9W8Cn4XDY6=XZ0N`r}+XYxAYxLN9sG&gR<{pN3PEBVST3~e)n{- zHqkzXRbUC_4s{;)bZt-5;IW1KP0JzDK77A9MzEf`5EC-|0r~duhqxp8)!5llk#&$M z>12D%hSI+jpacBR{!b&gLB0)SL%Ss8l*XC&0jK}=+mIT}o^GQNOZH@~A4j!tvtS;X zmM_`kGjYxvjUCJ$yLb=j2N|pR_R8!zd$I>V&Y5WRt)@*{^)Yd7n#=Ca0Q9OjaZC1C z&3Pe&Z5Zd>?LFB=yA*S=yKLn$aVPAnKtfo@N4YT8A33vu0{v~`sthmKH zU+ECzt}fktO*9FO6@Qa|IRpSx#5VZYTt%Hl+)&%&4B)pGrf%J zw5Zc?k_~#zjcUDDCn=21piIyQxeV=2mzjLP#JZf#pAE)#Yjq=g4y!i(0}z#BGcn}$ zD-#F`#1;$lJM~o^gCAa}+Q<0HXMB$u_z!9ha zDA|mDX-00%Z5f?@A#|P{&_z*AP*lTG2ZTay`k`yB%U3tTb=hx*?NB?1z*+t_wzsiN zUy2(aduRhoOS}0X+Jx4SN`6$eF*D@2sf+ihExr+7XrLe35GuN4ppyzgnG!>Qgn|QS z2{u7S(?$FA%>X`0H|T@@K}T)KF=qXXYGbV;M<7`mVSMdy6IVJg&i@UH^c%s8qOD+G zEIx@=Y-EK-Dl~3{it`w$OgcHcOmrP(4?@WRV@CyRJ^mM+tyzU3A|gqq&>o-(#0T?y z?H1`x=**rjAuI*?Aa&ZxXHirngRoY$BMqvyM7(0RxJKhx_)68u)mvx7S9BWG0$q`N zg@YsOE&vC7Fb@vMm)a#UX(D+tEy(x4FaCKd@cNjjTF$c)jZ17P3qaFywucyR!eur> zEBvvf$Do#f!*(RhAeN=>+Uc2s7o|}eeEwM_O7zpqT19irf&rkBY*~Oy#E)W>1L)qp zjIvbXT9rmwgQ4xME0WDxqPMr^2%SagHsM{Xmw=Z=TE~=1A7xv1CCMt6ayH(R#jn)N zu^qmWT5&Ty zuSL_N7*?Wegw7rYB@|>dyj|GQWoJW1^hp?p$Vqdiz@(2_upAkY#R2x!saWs~ogOvDux-r5|D z=AJ9jSTshr;t(fM)5xC22Dm6BDf7km{SuC)8sA0`2TAr%`2S{q$-*0S`|Lg0Rl8io zYzZDhXGaV=**pIR_f=WH@wpYr{d7}HBYdyS623RznTl|>$%bZ)B0{9S&AK2dB&nOQ zy9pt73tsWj%}w2>h_@k*J0?z@%(ppAfmBo(tqf8(R!LX7Oa)rlSWTnN7RryWNfycU z$GVZTDg^qhosu>g&W#846fhG^?OLWjgAGNM*50c_EmEl$l0DFAsMSjVE85G<61Z7= z0Xp;~F;2D7EW^hOHd=3CA~)$K@Zuv6aguw40S8QI>T5N=gZ|TOu8Il3alK%e0CZbg zUkD8thaU$G^%Pc;mR(D5ezZiRAqmvjAWbtDLDC5A&!TMlt9Pd9YgQyHcvL&-0RQsN z70F#{RyL=79HGco|H$>6Jzbo;IBP75;+RoUI$HU!9gM_bzl&bH!JKXIpMG%awJCO+ z&wlA{UFJSzm(P7j7YbZ2=iNtfuIJlpKYyn#$ByBo4JC)k-mq|=mS%yl1c)$OdwaI_ zzhyss<8ZL^ZzewUnsfJ@edsy7zKDLjZ*pgN*UilJY0K@{y7ypbd*n;b&Zco9d-RL$ zK`KXNdQJNM=0L$$sVK;IVb45RydH5UsCf0xSa=ZKq+sAJ&Ru=O#R9Z= z9H+qXktFVK^z+whMIa0$xkH{B$A%JbmTu_Jpib%0Kucb|%Ti+P=Nx zZT1b(q?EsD`NXP*Rwtp7Pc*`Y7)K7l*1HfarciNaH%Q+k7a7KJ)GONMbqGjQ+wmi9 zz()-Z(ic;uI#TZ$!|BiLPPSITq%ZDzEjx&fa%If!{nwWN8)A3>F&y`UVLGRgb)|nb zq>gDwlRD;9A0XjbF6%ngw0i>&qwfC78*bx4!DQPyUc8ZA;@&rI+Cv!z+!(-(jWaS& z_Ibdr9q!i&NTz(5T`v+(@BbVtkR|lj4)@t%MurI~a1lZ$+xzzzlBG)kgT zN`iH3iJF@8kHLzsJrKr9@J#L(hUt*7@Nry){{e6v+k&SYVd=F#Veax^pX}_oM;f^w-07v?c8C#f{tfWC~?zo{~X8#seCzyl5dJgJ|4p zgq)v|Fq-ts!7aL7{&lnxfZzxs9{brpE|G6&@`M=;RUqc9G(;U(>5G|$D=CvKRp03L zGn{q@P;W6T>|rL!G?7`3W&$SfFz>M3lxVtXe5ql3V7Fut=F~wOj2RYx7vqeycgJDk zwV=%m)L_6Y0Sw8H&|qr=QyqMO5V+whRZWydKqz+R>(VBhTPP=V3$7ZCHA2#I=?Z{l ztu&MYwoAlExLV`DPiQPc{f;~`Y`M(qCp3piFfo}iP?#gMzHi8P2>CI`c~C%qwATUO{W{=9R#iS4`o^%`1U3 zk(fONQR5y9^NM>c%q#wDZeH?CO z@m)LHckjhWll(Wh930ZWEWW5Ku4U$HO^z4@5beyen8wp-mD!8$4(ezl;kmreOaHYu ztkWm}m+(P*U3xyqWGC`j9qjzO#~%BaFMRHkfBZ=R%-XNGZ;~N;PqKz5F%3U%m@^TO zzP>+sCu4VEXEQ6B8kP;=lO@H3-6Pxu=|NfdBojpQfUcJ5`uyRLR1NptZ0+(YK{7BI zjm#@b=D@BhM|AKue-iJp4lid1CNqvT*-~L>VK!&w+moYNP3CE#Lw<&W1WqG?qw2t> z7+hRVJ;v2-^|bL%hq55Z4uFf;wL+65UzXf6xy53T315ha*Q>6TbfKE8j zlm{EG?$lyTh}_9Y+=#|Vtn~`R5%{1c-*zW=O0cvShk`sja;jssys=xWHd?yIIdnXI zvztr1z#oF0mdW7hTZZ*fLU@piNC(d}F6c4+&>5vrfusB4j$vn$t=f^FPA zhg_2X8AW~czM-+3n6(h6h(kmdRUfj{ui>K0_(6l*cfRhT{HD34(2aAr*l!!&-l6(;aByW3w z&7E*mD-0xd!1946kH|$g;hkp}oG!!zOv{Esx;98?mcW>8`kPn6TfKdJ&6Ys!aqkEd^GGCY`xrZ%KP84;31rMHYI@K=G? z8L?fJ?j@vmNU!LAR_38yp-!X`awleDsr9XR+ekKmvGH`us8?2HsKfZ5WT@W6S8t+~ z+-G_SRK(E8KO3!3Qr^~-^_dbGFys{iH9PW2{*9>_D)#iO);QU9erks2fD>#BUc2kZ zx`EdY4EZw6iIT5{M(^2bm-G1KYJ(U|_hukjwXHb$Y$ zgwiQO0GH+?y_q|#c#2vpFB-5AWfNcj)35!+Z7N<|$>%_xDV9zG02U!FdWl4jQ(HQL z+9$E*R%QZm4TUL%)8geLf&@S=+S-^Ao@!*EN*__Bh#%t`ej0f7@y4XthX!)*pE*<# zrw7XZ@T-$d>tpkLv1&v0$$DHy^DoayX9OFVX=LyC2=nW{g%bNO)x>xG5%YNGQ&X0_ z+Ls1&`$B3_vFUTVEuW%QsqFC2GWl+#uK_)#m`bo`XWsmVJOF->&GG=>A!P(0`wa0X zQV%zY5uDj<&_1EVFAU;|D`aBR$2qvLzg|ZGG@1vvLQOY)jY)138Mj^enYQs4R|L z(`}@G5Jh9kcuO~w`pw%LaZkdM^g`i8(;}J9ZSgrUPf6E8JU4{8E47Z+%w}c3qNCII zv+lGde2LACn>sy<4Hoayp6Wb3lobjzvJFdIpUVHRgWdk~|-(m=Q;+Tj9~wtS@ktO^D>Jq9<8#) zBPClPsOEP)ZNdLdWW@8rplFKZ z*+G&_;4@}YPzlcFwG$T-?=D*<)@m%GNR{a1oG`neR(NyGFekl*C80x{lBEWofo`3v zX0T6-1)0f|qeddF$joBrMK_Gb=t;nq+>+v-o@HZ_nFwW~)mskx5@%^Npz6X?jd`*f zZ=24Q{EHWbEV|Gz%&w(&Z3aN+L|ici zG-IMbi(U;7G6{71vjN$T`m?1su|D6B_*ej%t$Z03Fk8joTENGbgEHIwx2Nx5P~RME z8pc&q#?Plx#52mSgki1>$T6+ z+CwcFgtaJ4nQb>%plRvvxK;rWsJCDh9u$^D*-+Ktj9Kh+aeMipjv9@wOr%6+Ub1M? zEtS>QRI!y2TfEJ^Kk)yK(L1TVNn>+*7;*FfimfoxU*mdvOn$hwGv!L(+dL1d!0l!W zh^*rWWD`VyvpJ?KhZ%Vb=Rqp_*Rk-ATcav$LLN1uh;RcyOc|-FQ_b{iO<`tLRH!D{ z#v38Syg%(kvLci+?Y zEL)OaqOs~~dt7qI?J6?hnr;Hhg$#UGg^kA)rf7i% zT^-6rW&w1>LPzS+AqQBpFH-$HQUlGD>k$Po?dH{C^n?&qKn|j)G>02p2vBScpo;e% zSAbXGitkliotMg%uIp&$1*D2+Hd}JpWnrXRgK@y@CC~_rhDtRcDwB_?3~JrwhggTW zV*!+6ztaGQU$+v=0)QRN(HY{wIoe3Ky z)J|?G=9=c=<3%Usd2i+}NPh`^QY(edZlDQ+=31z~nyNE-qYaX%3=)d(!$7Xd2ji7I zb`_hLA{6g;G`e1P=h5i7hz%~+&~IF*%@xjg>C@dpukz)E9{b$hs$-tHz9>UcSqB5U z-i#Q4coPxoA$@;-6pvhd5F2?+ak&?^n>5PIh&BTkA({39^J!G!(lCnHkgL2>G~L>wIJSH2NJqql&P7Fs>p{}@rE&?HIk>WfdEu7&gM?&-2R`nf#83! zc^YB|r5XIY+(1C%(2?`Lh;95E$9k`af-JXh*~u=9dy@oZoQlk;{B zj0J%x0f2FBTtqCXMowgl5r)W0o;0>N1Bc_)`7r(3O5F2po;5+-4s1;bCFW9X_Hf9u znYkDq8`{xMn?hlJ((sExi;rg4au>iSamrxU*4@Uq-5uB#kMa)XJCb<&y(T5&>TspG zI>2q2B5v;{XNfZUxf;-BHQ)td2EtKESbKlRU>MV@L2qT-Xuu16(fASsCUk z(q^zARgivw=4}aI=o~gImImeAjCJF9gu$CJT_`Xs%k_qu=usdR5OZ92N-_^_<77nM zO)%qA=bZ>GfQb-DYyjIZtTy~pKZA0vxC zZwYTT;2^%Mg6~GeQ}?JF0d7&VvC3=kYGfCSI!Lu6V9U5J-{lTL!=oe9mXH^a6oNU$ znAUa)zMl@kFZCD}Q|U8?@f&FYA|E~y)10%&Dy)x~C5$n`AE3e1pp~`cb-W|^K|to@ z3Qt<}gNzGc*Ui|~G1D{kVD8cNsTp!i*X%Z=dT|7x`JI}CSeon9F^4BwZI;JN9^?;sE_^0@^o`@%( zgEbY2#KnS&H%Y}7XOHNL@F>P5X@iJDXDG(S&;XF4H$(l>Ffk^d(5;iS z#|704RtThr{25WS;R4tSbDI;JBuC0+C*=#Coq)X`HZ%yar(kq}GD=tk#E5mt8I|q1 z8}UI_t*f3@5oZ~WKKXj=?yK-B?nCB-qheb)s%5z?Ja!&y^d|M)9)WfB!I`+*Uv3T0 zp*yXj5j*^z=C@zF!-4Hgv)dGGL{e&^ojQIJY>WaG7(tA|$h8+nx5r!f6l~@~=Kyls z!fq1;A#2W}`#{GS>ajPwU{fGTvxlQ^a|~y) z4lb0-lgWJ<2$jXk#`A7-@Ft5W6|1w}WQ2rh##H%;#(zvlzYSitg!^zw6bXoSG)%k+ zdlqW)8!=WbN_plLiS?T$Bq4rta1Z-PD3S)MFvb*L0>&)K=1SR%mYIDSM;Yf$>1gnz z2=Am3UZ_niw(v!0s4*n@G0SEJEsVNTVl{S#&TCulztVX?z#bVP;S zA4}Kg1};h8-K2sX$_Z+yuqG1&@?m>l6m*#I-<&P(`&rmx^}lbn@G$=0%N7V@$m`#L zEs9}dp)mrL30+=80GumrHGL@Zg9~9@#Z{(M@qUYVdctBy#EG^&AjxL~T#jG2!awr; z&w}(fRwVa^#V$sy6G)9wu?v<4xMV|@deRr*LKGu-kpKZQkcw=fwV|n;HfT{4-r^P` z1$B_j<_4g7b|epKzu6_!Qb7J)%IFp4N5qn5-p+pnS6s9?ruD$WTt6`5&^Oq3aYrLx zPU!>CJ^^_B#^`!2k!t5B$%%`{EiMZ0VPIzst+OqTFX+(9B;k-AVm)q4 zxS`vRR1c(xc4<7o+my$QBIM8!<0y|UiCgVu9;N)vK^wCx4;y*d5_GP%2Uc>CzIy$1 z!ElLu67?*_T?^`jyaGnu4RVL7$Q`Rix)4K2%Zlrgi08r!@?!f8Y^fmO6 z@{+z~p})^ruG;;{&o@|&kA?Og>lJk2tXHOiJL?ti%1JPHdx-4I3$VISc^r?In-KTN+{#Du-zP_ln{w92KO9n8aUutmdE1q;Yw zw(b@aSTTU7{2-f%@&>o0s1Q3Klaq#m9AZ({PCH|m6+AJUKTC{DL4lxRHmt}Q;^Q=9 z`MTQ=W836Z8}9K5B&^qdEm~2?K3!!DU`8WWIDoQLCf7bDVHU~f7><$bECREXXaqnT< zSQN0iA+{A6wl-q8_q(ZVBP8aG?A6+znK65U_AIm%<=z{0Ml={rC^Q`=$9p1lT&|Om z=xB5B^#&2IxPGm{f*Mz1uPxK{?;D-vS%@?m5Djh)KHccBEvKa!03EsyS5kSec2{`P zYh}~+0lZ+pt9SvM!)tsLucUTj*qlPa+8E7-1Y)9{cPqdeSHiVjplbfH(OIcyHf^rb z^>xh-VVpMyKhx~2(UtISYnARZjSkBD=HPD>ossLD_LR1y%(V-U+RoYbFm-3g`Jlcp zIy{>~2e!b{)jIr$fT{{Wa3?Ht5;RTO)et0J9G z>&oo>Uar|`$_ldM+TYI;^m|IV)X6)7KjIehzB>4nZXWsS8&WMfhF1rlw34q5KCbs> z{^k%u%Jc@8=vd|c{>uH~$~{pgi}XZmYh@=`p9zSNZh(AVYdda)`fPdorSkTR0Bb&CwNSju6q`YNHuSV+a zYFr$b=K&2s7%T_qAN<+VSQplJ&1d|Zr9lDZ|Zin-M&q?tL%1Kw=3=TkZv!q+qdeL zDGw#Qg6{M86C(Bzx@cL%xa)LZMaOR9JYo8eT5k+)o z*ms@wp0Xp38&QfI1;_6IhZ_4{2TycNJwAgY7LpvH%%%e5^Oo@VfXU)$Od@e+0BvW# zoatqfLWhC-iFdsd6N+mUwIjZFcs)br@v#*uZ_^`MUAt&Kfzv9txgLqCkH`G zD?5qT2IJ#VJ#n4kn$2+j$d``c3AvmJqSPa^MYOV`gBV9#x)Vxwf^`3&bbaY75c1N7 zX~N0D?uDh*Bp;rplwo>sH@{Q-UMQ;xm^(7)u(2_o9z>KIMV%(8I{S%1=p*A{udD;= zW9o@;td)e$?18z+NvEA0WX8_*^dMT4rAPH|rdXwUc?uw9c|i4)Z3(^DcNH2UB16H& zrBsp6_a^%Nd%%bD1UO-xe=t8aMa#M{onG2-Ew?gy*$n_rQcLJSt3;%}KO&=ywS-Re;GvY; z%60ih=D9K+Aob=+@uW!K%v>tKbFM$VQsX(R1wo1l4-^b)VKYjmu8+EIE;TV=OD1NK zF*;@cHbRqFdorx7VM(Anyg7J51`|TR()fWTb~J72F{a~@$Ts32h@xhw=pojOQ942x z>tbT03)<$kI?N70-gPboYuFGg_H(yLbAL!m)El`J5HHb;tw)GLYk^TO-4;*l-G*(^ z@un+r%025GXKI5(^ghBkW-(dWU5^crI#;uf)QzR2sh>n6*&}?3vx&-^hwTkE**uL@ z2L@NjYGd^BZ3_MxwbuZbUZDXTRo5Ry?;BM3mO1mCRK*!SzHu(40+2}w%Vt!G&#=KlE{l!6iwWwR|W zc1cm*&XoX9<{}y^S$X>lcFV}eD7quqLP6)qQnkRBs{$ug56wT}uP7`=38(#aLh5W` zpMSI!Ni4FCqKKhf(Y~2E%;d{Oh~X%^hi~3vUL>Jcr@^=-=J$xOPh-7le-3|WmyK0| z8uFP4ko-&$86TwC8Gi>CwDo>TS9008T5g=dHVurLSqter1 z7y6um4uyiVy5@Zr?G;Uu^kJ^z@F}kCOP?Jb)D_V+p=*@QC=#Qss4#qGlYdlO<*UWJbXRIZq^K9! z3fA=u>RD?B#kswMsh!`Vp@uhP=T0z~Sh%iB&5g!UtIeB4C@KN6*rAx<$kb z{E)akErGB6%g}^*$ELIN!YKCr7$%rtmibdH?raIqDJORVY%=P~6i3uwdxVtbOJFchwA>CJ$Z|(8N##m^mVzgA zpRg3!Aciu;ig^48#m#TH9b8Al@%ECr5BFI#O#&Cnxec!#CZ;m0xafm;Gsq5LAQ^-1 zV`^qhqc$+{{;0veA3?8{i(2<7y)cR z-{*6-!)BpN+j86Fahfy_$dwp!p)ripTeMsgFs`H9Y!1%ZI?nR+RX9l*I>#7INZg9d+pniWOil5`Gu;FsalaWcCQ-8`_;a&zY!1F^ zwu+6>15xKvnKu7F?%oB;&a1lf{2upxZ&iIIOR`>;?!A(sL@Xp;w!u!LuNsUQ!^GX= zW_i}ita0}+z(}ka8{A%`mw^I1rf@_kz=2BQkV-J^3dnSkn4l0t3fmzCh#-OiH8@ED z28v)ZVqzN6m@vQpKIePfTUD}*fwj^l`+l$U*k_-8_St9eefC+5dQZ~zWYl}IKzqRJ zIBt*7aqx`JgN<_OB04bQUkZC}dN|Gt+2OMnil%zEVB!0MpkT3a)IYOsjkI=WEgE&7 zY-?0YcS_GsLdMngd}e-KaT#O{^h4d&FA09YRb6CIB8be}W&d<_vzfwPx{Ea2O z%_mJ2OJCrS%!6}#_GxYa91?nP?#L1l&fbB+ub@7rhEw-k6?fRTy`88po9rF4|L3jN zqghVJM9X>Rt1f%p<@oPGBD1qw%n5A^Yt_|B-||5$YA$PD%iZhOvfz{cRj^Jq$MQCR zjI;NWFBsVO_yRe@g=p}&xw2Csoi$SA{FyJ7;WX4^xY0gpltvkE?Q^n(UNw!y>X->U zxJDspZL|CmmB6#0SgZ>O_jPh_6p(XVbIdoODj7n{{s#FN*m%l-rq>#2Y z+!RenhoI6Xz)^HiRXUdoc;sztr#(S+;%d{}FWEf^rW+8_{nHfWu;}j}t%^AA(UbZH zp@mfkPtq?!JG2`n0d|ArztT4bXa;NrHZnmkEv**w=Bo)wPa`4ktIuY*+-lZwMPvE@FVOi-yC^BQ>i2S!APt}78$;yV5ADXUN=DB)>V zwm9LrnoK*8uP)&wnji3Q`-%WyA!gDstLk1&GN%@JXeVVtgmT0!-1MTGR`OsrD*={E z)DMz(i{AtyVR;9Ah0&rW&vDh#(E3vJk+MORMs~S_8MKnWJ^QkZi^08IS?FAFSC%~! zpp3n^&7SeK*7m9-J(zTr1%VsZ;ugfngzxwft;n{I0X|x4q^al-gs8Gy$;nPpE#^Wi z@9%^_k*tM_gG)Dhd$M9}9+Rgh~f21br1aYRPw3sES_dh~wIe;;ShUoay)* zw)`23M#oC;n|dutz6Dfvq+CUjkF~TGgWMM!^=Db1o<~x&(*fP~*o^(6(3D#NC(x`= zf`$X3L5!_!bTb|OiM`u7bK5Ewr=}P^D2YmQ0SDMfe5D=KURGZ%*^F8mE+_0oX}FxU z7v}#G|@AiLX+eIhCc-K1??B($e4P5d~WYBx*N}9lbq4f#X_M=;0*q zt!z8_?0gXuMgTrMSU=<^-E@i=A3iTiH?Q1IAEB5rtx8l3hcJot=oa-##;j<}1GHUV zII4zqDE5?j+&^-h&+(uIN_12xTIBQH<40`Pvlx`Ui(*sXeQ zeaGA`p;o+`_iDg04kCM_is2g7VwMbJT!waZkNsxmSgu^4W)4o9-a%tAVM`&Ld^Zw; z)IFx{oZ?F6?>ouErBt;9O;!F)wHPCp#aDW2X(9~(tS$dNkj!`1`N|r2YA|ujRfiEOgF`C zWnZw*Bw{60ai>%qOUU%?Dy}(D9A8*jLF1%7szSv@P?Toob3jJSG`@f}&3GrKg}<*F zCee0@k0i@Pamg{6)jFk-I>ofmP5voIhA@pxA17bstD0ciD>RZ4?p#it&NR(e>tj{S zWS)Na79bxfL*C{5?aTvr8o}yoISigYu*FAGf22QF-l&|{xIa2AtGuXnX1LZbzLQuB zqvf2`>XyG>U$?q%DpOd_r0@j{FlpE(Q0^xW<#}ncs~&O|x@JMw!~nW^TdZ|GaOusTX0|L5C9$rdxb%zk;sG34(qod3r|r{w)p*>XcgY4CJDF-vsH!++wZCc^-?6 zI*UrNPS#IA`pujkR4cjfsWY^-Ccnpe8U`Gu6*kSunGb%dC=Bins?u~TXM2XQu>scZ zWJVOzQ}V4+(Pi#MMc9?Xho~uTJjG$YT@t=4jQKwObNp@U$9l1*+H_Y zD*Kfj#ZF6@p_uX=g1=)3mOjoR0e0mPhKFiu-NfE6jN3`Lw)Zjmu_*sK2Xt)lKpFSBDWAu&2+D zM!kOedcseHy^S!XjoqF_zY>u(=vj)Knt_LU(#twlJihw_gTV~<>K%9bIDts{{B}oBt->B3ZO?7h)sw@VE;>3vIhsk$g zx?KKIJ3h3oKCKbK^^~qi4~X_|gxR%0 ze7B@&Ae5V0<&tpGv0Jk`LE&{;qu_8F9jH4}<{c|8`Nw=>P)ivj6e3$w`U%GwGf_)C zn(%?ZLNo2O5o}=4(vkWLso$;q@Dwv%cbc2S$*zp=hUWd(+e4}`H%d8k*ChF-Seaaq z`4|#Cz&{xa%~If3Ek>!1AccPt>vJ1f2os>Kh!fb~4RpBTBD`mBe5^*HQ6{b81;CCG z?b@lT;EpX8OjDMhqBq(d_t1GRUZ~X`&CA9+3>_hg$f9g{z**Uf|7Fd>O;Rg`B*9OD ztuMN-=-y2RL2^pw9)sHnWoTm5(WTF5WrFlLY$TB4hohQn$qypq9hy#50{v-{vDpR{ zHb6^blmg$=;9(vOlD|_e3~}=U@yRu7sjAQ^7hNTiEwxTxmYl0XwM>T{uU#l#Z0)TH z`mxf$cSq8iRA=iZ6(;2R(Ib)u+Zc=m*NN?206Cvfz!N#Cei74P?I;P*Wq0#;C2e6!%N`JU#B43l4g6c_S^}w z+&-~AGCd<2vr+6UaG(xx}w5yRQNN)ZEono85pH_K6NWsY?pT1HWE-IONM)^FtT?0jkp)R-Wl^d zGNRf%)@!<}`Wvt+D2oJL8{c`Dhm_{L?6(lu(5&!<&GAgbCMyZT8gQH52?CMuq<3vv z3Kq?y;BPHtQWY4-wDlJ@1^{uo7)Uv7oXt+dfq4ml7pC4VwzWc@W8dPY@kcQ3^bx61zzKk2e5KEOl?Tg(nX`Q+EYdT-3u7l<=cJ z6fyu-3k&@y`ivtuUIxh>d{+2`7TklIXKH&644K#)Ue4rM<|Q2*ZF2TRbV1DU1eMS) z3j?QqLT-X*i$)POb;-^xLkyy16;hN}qkswppfiRicWYAaNi-n8+r)!4-VsjLl#6|b zy4GB5tueq|KpBw`SZAA=qZe!%c}M63Njl=Ikvrs*z!^0$TUDj02pXj$L?|5e0bEt! zLZ;FSripHyGo9=7yYAyFw3uQgubic@H|k3}AR>0X8xdzqWI#D6cMlP(7$#2{)$M%_ zy%F+M$PE&CXz>k)`%N%}*!U~ksS;908P6DavGQE;Dg|tUN7@_+9!1t7I|vpBVO*+^ zqR}07!~`5=A&g^VO_m4@3XlwbY9>-JKo)fD=}+pVJcV*(6>Xs+MqiOfR4(e~!jROU z1;v4*^%`@Tq48Ae}ELLHEvqsKn-64NO? zNN0+p>q4A8UX35x&v)EfGzM6vTFOY$o{y5E<4{E+77s;nvo4MxRr)^C(LNF5+dIQO zk9Qt&yt%Yy0yraf7qC3gdV>B-KPfFkCn<>y-*Rm;6-II*0t+<7mu2aYB=4_NTvmon z2P%c_qB(|E&QQu26TAMA+KyWrjY4Cb4%5_;m7LyZ&{?@VBoc^o2a}6aQ&S0y!d18~ zICOJX4frN^`b`Iv6Ep^ErH-LmM|o3JH8Rlu-*yGj+4*5m4pl<{lFMVRQ!4*nYZYs) zp&C)yjym z=!w)hRI+42a%85z&pT8uvl^&)>Un8FJwV`C9Mm(cP0T@aL}c1Z?PiRi`{ZL(S7DQf zbIyFF!f|>D&v2B{pX*`E3QLpZm;4585$sNdh3(P8dZ73YGU~ojWRR7RSMCwR8hq%R ztz-b{qXcU+1yiYCHC;HmGZCCr@2_21F8)*25l%iwW&^ou-8|S$@neTkxCS1PAe7g8 zf0oIYEy3H>!WNmMUVR;tCZRlx%k?mEsag7gqL%gr=o; zn3x*ymC*KCBcvo>{nqEp@lZ=LZiF2K@eBw$6 z4=dfL6~RV)-K`iDV7FrIz5SIPQPT%`s+j1do+eW9^ z(shl$c4sUII^+5`GLnB!l1`XCjCG>XQBGB>)H>qw%zhFqB?HlkF|FYT-ce%qEbFb4 z=tu8h)7k1|xUPBtS3C&lndZI>k`)tLpPk%<)Os=a(gH3`hLYKuzm4m}6;6oW|@)UXzFdpUXKt?>tKcPH|{oq8}rQVlv~bs061 zZTC8kE?B-H8|}n{Xo%&)CyOO0c9^`42|>)=q^nAwJlFCSF90MKOYoa=Y0w?MX_9)? z)wWcRRl%}tZ9u0R%P!zn-yrDW*hfFK*ea4b=PV7w*OzWPK$2;2hYnb&N6=;6iM;5R z-<|UE+avls6jQDwzsN?;!IfALpied!5nb6a!wb~R$)7f4X|B61Cy+I4jDnKCaY!Hxi?7Q!Ci49xq2MHB`bdFR5JAkmsm*F-wz zaSH0UZ4LA-!k;TfY@`#;s+{#KT&Iu3hol!!e+md~EPL2)w+J46dX#2$;SCH{6o_=Y z%`+<=-E39ETLS5X#Z}InBR%>4eF_03mx){k7-ycmEpMB8!0jXq*s+zN^ve9=(Xc|{ImFiIf{8xF$c(WP)48ltZ2J(5)18v!ecFPyi zg@*n;AI@zLL3%e2ZegPOLh+3IL0`}dhru?Nh0eKxdVT=vqXSSY0hrBFAmNMMdJjXZ{_N6>v>7tQL6Ts`kYjO;l;Y~2BooI*K?Sw(ZZsxH8 z!jy}jRcG_I5(s+y`Dp8uR^?oA|Aw_Ohp6qulkhTZHRExSKXjxfh*iYC;I`=b?9id4 znMn9RqJphC8J3qDov1s=+uT^pAW&au=A9P|T;~J>8&&v~p>myhdO@k!ZpN%)DR3{! zChFrV$W7EszRYED?-iSbna0W!wF~uP6E)fmKT$7O?JAw|02Y3SmfA#ZVe6QviDZ*T zjIW`In#kad4)o(o$|q`3lOV_^>gKA6TGK8Q4eY5rQCCLlYRR6SVVHTEKyH4XW=bsP zX(3+ow5CtZ)78>EEvcb2Pm5OFykir!bgxtiNn?Z?oU^Zx#${l(7APVYW^2JK^;kYz zQ%*Kp^NmC+9_P%M=817aok@l{5bCDPlf)(|27n`{2OuXP7D1grE_g^Ch@7*ms#a72 z3ubPYDP+NV1>dL=ccPG?0ilvsC@DY{GW^Z2{pCV0>c=sY$TE~%ER)W};k0}mW*%y( ziaM>L5XSPg)ZhqkOR6mKlrY8aFO*);JoGuQ7c=yugl;ch#N}oxCqqvvmZ9ddl2BVo zunIO7vdr4UvX4Y9bs~G%W63^F-m*T$`B5$oKS5d}?@jyE8u)YvxmGa zp?pKg;@fR@P!S-sNZME{sjV7AzPY5TNu;#S`~|Y){KG2vx9j;)RWYkzn#cTwr<# zb*BJTou}z;RCfn-H>SJ&x-+HPQ*}44cl&g=L3eB_2qw?b-7o2Gqwb!fyG^>=tGms* zo6z04x_h$jh}af%o}|02x;tNY+jO@_ciVNhTX#Ej*Vo;7y6fp~r|wt<1(UmUw@Y_j z-Ld!yCVRSLQ5a12b;p7unB1*9mKVXKjPzQl1e5a5)ha!he3I@Y8c#l1caknACv+!q za&oWkOlW(G?j)*B{*vw_lucfsJ4s=a`*bIHYx1eOlY}+7Uw0-;9nhWW4WFhvvE#|7 z>rTvf@)^1_w)srm8IyXJ?qE&9arU;h-w-?Pm9uV9Iohik#RAhPGzkUGhdl2w6tSOG6&uS`#k^ua+Q2Iu z!CpD=!gMNOv8l|8MJDN(OjpsKo3!#mJoimoVCQ_9D5eRQ9coT-vr&o$5@f04EH#L; z=y)N`Q8vFz5mcRKpVR(u$52N66Qunyv@yN9Wqa36?`YJPkX97UFrSxQLe?732^1TT z`H`S_nwYzG!h?k`r($&XpJMJ;H|LzDKcv}Yuofks z#gr>t1?gXyZ-_KaaM!{7|3{u*oEO|+5tM};U6nc~OuvYgzj|0sdOGT+u=SIIicpfc z56S^`S{!+K(%1y!X=s05M@Su^*_C8Wl3ti)7*_$7ZofX={vXqk|Ec}m&}BFg_=t5T zvx%-bhS+GJmOk`bw{aeyQ)Q`p5e!V9WQ!9fbh&Ra^&G(?mD#GAd_iU%B~;M6zM&|2 zbF=GCb0IHnMg4qH+~vZQNeRTfQ=_<>AkzVtNye^(x!Uqs2E~kY87M)@J1e|K?&bZ96ZbeS_9;x z`;m*JX*H}K=SnLGf5ic-5Leavf!rQy_d63RxyCmVfduqa$XLZY~g|0;)57GsquD|VbY`pFyKAICW zI051DQ*jRbK{^jT`)E)U>k4LSVk)!i7d@dH=NlN2?I)Fdw!wOGaEf-JAZN@YhvVA@Q7@FhFJlmG#+GRGez zGWZGbhYN4e9*pd(iGPR@ZmvuJe(aM!OOdd{; zlia?#CrF(4qVEY+4rhRr-qpvCAymZOMdFn<8F{$0VFY+<%uQyg!PAOe1~z|5jaZZO zWm6taTa?;5cLxdP@o+JCxJRw}!5017+#epTBf-4BTS1MZ66dwJYJ1V5sR^p%3ZM5? zCVgC{y4^OrxB-E#Oa8Le=fuA2D5MG7we-AIdR%v^-BHpHZQT_m8_);5?z2BS+Kj6D z3j=m7^9@@?`sbga&+}7$n|_zwRaWoCiU6ctmU#BrMqwCpQdKX`!tE646KOYn>zl(<4<^}8L#1jF64SH zaQJIUk|DLuy^O=3>O2Nk87ob7F26Lv0)H56?4S8KC!pyRT&ZM+z_DC1u~{EoliVvn zn|tF|KyF!D$?(>+N6{`JUtoH3wzZ~a9CAX6V(kg>N2urKk~Y#5MC~3ycJTTSuKz5fY+W5iwI9v4D|Bwo}l@XW%w=XEbR>^Z@Gy2Vk9+k3e+{d+T=(>%)4JRp9= z5O#c3D^=JMg`udX4+|V8e`Oh#S7q22JQ!N%0{kgeO93Y-U`6*G8>tVgEa{DP1U%~M z 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�C>56$%SX*d>|2s!A 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 z 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�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≤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


T4BLwI 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
tnzv}#>XJ)aw`tq1eTT~~zv9ZPuD<5l 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 M*bZq#q!Anc0qu-ZCjbBd From 281d4c0ff6f95de0090f3621b4bdb651cd3d0330 Mon Sep 17 00:00:00 2001 From: The Potato Chronicler <45178972+ThePotatoChronicler@users.noreply.github.com> Date: Sun, 19 Feb 2023 13:12:09 +0100 Subject: [PATCH 34/36] Fix grammatical error in doc comment --- lib/std/packed_int_array.zig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/std/packed_int_array.zig b/lib/std/packed_int_array.zig index f15ddbe974..6ef7ebeaf4 100644 --- a/lib/std/packed_int_array.zig +++ b/lib/std/packed_int_array.zig @@ -1,4 +1,4 @@ -//! An set of array and slice types that bit-pack integer elements. A normal [12]u3 +//! A set of array and slice types that bit-pack integer elements. A normal [12]u3 //! takes up 12 bytes of memory since u3's alignment is 1. PackedArray(u3, 12) only //! takes up 4 bytes of memory. From 346ec15c5005e523c2a1d4b967ee7a4e5d1e9775 Mon Sep 17 00:00:00 2001 From: Tom Read Cutting Date: Sun, 19 Feb 2023 12:14:03 +0000 Subject: [PATCH 35/36] Correctly handle carriage return characters according to the spec (#12661) * Scan from line start when finding tag in tokenizer This resolves a crash that can occur for invalid bytes like carriage returns that are valid characters when not parsed from within literals. There are potentially other edge cases this could resolve as well, as the calling code for this function didn't account for any potential 'pending_invalid_tokens' that could be queued up by the tokenizer from within another state. * Fix carriage return crash in multiline string Follow the guidance of #38: > However CR directly before NL is interpreted as only a newline and not part of the multiline string. zig fmt will delete the CR. Zig fmt already had code for deleting carriage returns, but would still crash - now it no longer does so. Carriage returns encountered before line-feeds are now appropriately removed on program compilation as well. * Only accept carriage returns before line feeds Previous commit was much less strict about this, this more closely matches the desired spec of only allow CR characters in a CRLF pair, but not otherwise. * Fix CR being rejected when used as whitespace Missed this comment from ziglang/zig-spec#83: > CR used as whitespace, whether directly preceding NL or stray, is still unambiguously whitespace. It is accepted by the grammar and replaced by the canonical whitespace by zig fmt. * Add tests for carriage return handling --- doc/langref.html.in | 3 ++- lib/std/zig/Ast.zig | 2 +- lib/std/zig/tokenizer.zig | 50 +++++++++++++++++++++++++++++++++++---- src/AstGen.zig | 6 +++-- test/compare_output.zig | 9 +++++++ test/compile_errors.zig | 10 ++++++++ 6 files changed, 71 insertions(+), 9 deletions(-) diff --git a/doc/langref.html.in b/doc/langref.html.in index a74d06ccbf..8ef31558d5 100644 --- a/doc/langref.html.in +++ b/doc/langref.html.in @@ -11551,7 +11551,8 @@ fn readU32Be() u32 {}

Each LF may be immediately preceded by a single CR (byte value 0x0d, code point U+000d, {#syntax#}'\r'{#endsyntax#}) - to form a Windows style line ending, but this is discouraged. + to form a Windows style line ending, but this is discouraged. Note that in mulitline strings, CRLF sequences will + be encoded as LF when compiled into a zig program. A CR in any other context is not allowed.

diff --git a/lib/std/zig/Ast.zig b/lib/std/zig/Ast.zig index 94cdcff4e7..ac52e8e942 100644 --- a/lib/std/zig/Ast.zig +++ b/lib/std/zig/Ast.zig @@ -171,7 +171,7 @@ pub fn tokenSlice(tree: Ast, token_index: TokenIndex) []const u8 { .index = token_starts[token_index], .pending_invalid_token = null, }; - const token = tokenizer.next(); + const token = tokenizer.findTagAtCurrentIndex(token_tag); assert(token.tag == token_tag); return tree.source[token.loc.start..token.loc.end]; } diff --git a/lib/std/zig/tokenizer.zig b/lib/std/zig/tokenizer.zig index 0e0742eab3..0d6a6d4fd8 100644 --- a/lib/std/zig/tokenizer.zig +++ b/lib/std/zig/tokenizer.zig @@ -406,6 +406,38 @@ pub const Tokenizer = struct { saw_at_sign, }; + /// This is a workaround to the fact that the tokenizer can queue up + /// 'pending_invalid_token's when parsing literals, which means that we need + /// to scan from the start of the current line to find a matching tag - just + /// in case it was an invalid character generated during literal + /// tokenization. Ideally this processing of this would be pushed to the AST + /// parser or another later stage, both to give more useful error messages + /// with that extra context and in order to be able to remove this + /// workaround. + pub fn findTagAtCurrentIndex(self: *Tokenizer, tag: Token.Tag) Token { + if (tag == .invalid) { + const target_index = self.index; + var starting_index = target_index; + while (starting_index > 0) { + if (self.buffer[starting_index] == '\n') { + break; + } + starting_index -= 1; + } + + self.index = starting_index; + while (self.index <= target_index or self.pending_invalid_token != null) { + const result = self.next(); + if (result.loc.start == target_index and result.tag == tag) { + return result; + } + } + unreachable; + } else { + return self.next(); + } + } + pub fn next(self: *Tokenizer) Token { if (self.pending_invalid_token) |token| { self.pending_invalid_token = null; @@ -1127,7 +1159,7 @@ pub const Tokenizer = struct { state = .start; result.loc.start = self.index + 1; }, - '\t', '\r' => state = .line_comment, + '\t' => state = .line_comment, else => { state = .line_comment; self.checkLiteralCharacter(); @@ -1141,7 +1173,7 @@ pub const Tokenizer = struct { result.tag = .doc_comment; break; }, - '\t', '\r' => { + '\t' => { state = .doc_comment; result.tag = .doc_comment; }, @@ -1163,12 +1195,12 @@ pub const Tokenizer = struct { state = .start; result.loc.start = self.index + 1; }, - '\t', '\r' => {}, + '\t' => {}, else => self.checkLiteralCharacter(), }, .doc_comment => switch (c) { 0, '\n' => break, - '\t', '\r' => {}, + '\t' => {}, else => self.checkLiteralCharacter(), }, .int => switch (c) { @@ -1239,7 +1271,15 @@ pub const Tokenizer = struct { fn getInvalidCharacterLength(self: *Tokenizer) u3 { const c0 = self.buffer[self.index]; if (std.ascii.isASCII(c0)) { - if (std.ascii.isControl(c0)) { + if (c0 == '\r') { + if (self.index + 1 < self.buffer.len and self.buffer[self.index + 1] == '\n') { + // Carriage returns are *only* allowed just before a linefeed as part of a CRLF pair, otherwise + // they constitute an illegal byte! + return 0; + } else { + return 1; + } + } else if (std.ascii.isControl(c0)) { // ascii control codes are never allowed // (note that \n was checked before we got here) return 1; diff --git a/src/AstGen.zig b/src/AstGen.zig index 40eef32d4e..a7ce79511d 100644 --- a/src/AstGen.zig +++ b/src/AstGen.zig @@ -10491,14 +10491,16 @@ fn strLitNodeAsString(astgen: *AstGen, node: Ast.Node.Index) !IndexSlice { var tok_i = start; { const slice = tree.tokenSlice(tok_i); - const line_bytes = slice[2 .. slice.len - 1]; + const carriage_return_ending: usize = if (slice[slice.len - 2] == '\r') 2 else 1; + const line_bytes = slice[2 .. slice.len - carriage_return_ending]; try string_bytes.appendSlice(gpa, line_bytes); tok_i += 1; } // Following lines: each line prepends a newline. while (tok_i <= end) : (tok_i += 1) { const slice = tree.tokenSlice(tok_i); - const line_bytes = slice[2 .. slice.len - 1]; + const carriage_return_ending: usize = if (slice[slice.len - 2] == '\r') 2 else 1; + const line_bytes = slice[2 .. slice.len - carriage_return_ending]; try string_bytes.ensureUnusedCapacity(gpa, line_bytes.len + 1); string_bytes.appendAssumeCapacity('\n'); string_bytes.appendSliceAssumeCapacity(line_bytes); diff --git a/test/compare_output.zig b/test/compare_output.zig index b3a6144729..31617f6427 100644 --- a/test/compare_output.zig +++ b/test/compare_output.zig @@ -535,4 +535,13 @@ pub fn addCases(cases: *tests.CompareOutputContext) void { \\debug: free - len: 5 \\ ); + + cases.add("valid carriage return example", "const io = @import(\"std\").io;\r\n" ++ // Testing CRLF line endings are valid + "\r\n" ++ + "pub \r fn main() void {\r\n" ++ // Testing isolated carriage return as whitespace is valid + " const stdout = io.getStdOut().writer();\r\n" ++ + " stdout.print(\\\\A Multiline\r\n" ++ // testing CRLF at end of multiline string line is valid and normalises to \n in the output + " \\\\String\r\n" ++ + " , .{}) catch unreachable;\r\n" ++ + "}\r\n", "A Multiline\nString"); } diff --git a/test/compile_errors.zig b/test/compile_errors.zig index 801d0464ea..21c8822eb3 100644 --- a/test/compile_errors.zig +++ b/test/compile_errors.zig @@ -174,6 +174,16 @@ pub fn addCases(ctx: *TestContext) !void { }); } + { + const case = ctx.obj("isolated carriage return in multiline string literal", .{}); + case.backend = .stage2; + + case.addError("const foo = \\\\\test\r\r rogue carriage return\n;", &[_][]const u8{ + ":1:19: error: expected ';' after declaration", + ":1:20: note: invalid byte: '\\r'", + }); + } + { const case = ctx.obj("missing semicolon at EOF", .{}); case.addError( From 02f5d2673f1bb21e7329acdd664fed565ecd4317 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Sun, 19 Feb 2023 09:40:25 -0700 Subject: [PATCH 36/36] Revert "Merge pull request #14661 from evacchi/zig-wasi-preopens" This reverts commit 772a0eb68ac95b7e24508580499b49872fdb541f, reversing changes made to 0bb178bbb2451238a326c6e916ecf38fbc34cab1. This needs a rebase against master branch - it has build-breaking merge conflicts. I also added a "changes requested" review on the original pull request. --- lib/std/Build/CompileStep.zig | 4 +- lib/std/fs/test.zig | 5 -- lib/std/fs/wasi.zig | 108 ---------------------------------- 3 files changed, 1 insertion(+), 116 deletions(-) diff --git a/lib/std/Build/CompileStep.zig b/lib/std/Build/CompileStep.zig index ce8979fec4..a916de0fc6 100644 --- a/lib/std/Build/CompileStep.zig +++ b/lib/std/Build/CompileStep.zig @@ -1555,9 +1555,7 @@ fn make(step: *Step) !void { try zig_args.append("--test-cmd"); try zig_args.append(bin_name); try zig_args.append("--test-cmd"); - try zig_args.append("--mapdir=/::."); - try zig_args.append("--test-cmd"); - try zig_args.append("--mapdir=/tmp::/tmp"); + try zig_args.append("--dir=."); try zig_args.append("--test-cmd-bin"); } else { try zig_args.append("--test-no-exec"); diff --git a/lib/std/fs/test.zig b/lib/std/fs/test.zig index 957fe4902f..16458d7dc4 100644 --- a/lib/std/fs/test.zig +++ b/lib/std/fs/test.zig @@ -13,11 +13,6 @@ const File = std.fs.File; const tmpDir = testing.tmpDir; const tmpIterableDir = testing.tmpIterableDir; -// ensure tests for fs/wasi.zig are run -comptime { - _ = std.fs.wasi; -} - test "Dir.readLink" { var tmp = tmpDir(.{}); defer tmp.cleanup(); diff --git a/lib/std/fs/wasi.zig b/lib/std/fs/wasi.zig index 60a5f9232f..75c9b1df78 100644 --- a/lib/std/fs/wasi.zig +++ b/lib/std/fs/wasi.zig @@ -9,7 +9,6 @@ const Allocator = mem.Allocator; const wasi = std.os.wasi; const fd_t = wasi.fd_t; const prestat_t = wasi.prestat_t; -const testing = std.testing; pub const Preopens = struct { // Indexed by file descriptor number. @@ -23,30 +22,6 @@ pub const Preopens = struct { } return null; } - - pub fn findDir(p: Preopens, full_path: []const u8, flags: std.fs.Dir.OpenDirOptions) std.fs.Dir.OpenError!std.fs.Dir { - if (p.names.len <= 2) - return std.fs.Dir.OpenError.BadPathName; // there are no preopens - - var prefix: []const u8 = ""; - var fd: usize = 0; - for (p.names) |preopen, i| { - if (i > 2 and wasiPathPrefixMatches(preopen, full_path)) { - if (preopen.len > prefix.len) { - prefix = preopen; - fd = i; - } - } - } - - // still no match - if (fd == 0) { - return std.fs.Dir.OpenError.FileNotFound; - } - const d = std.fs.Dir{ .fd = @intCast(os.fd_t, fd) }; - const rel = full_path[prefix.len + 1 .. full_path.len]; - return d.openDirWasi(rel, flags); - } }; pub fn preopensAlloc(gpa: Allocator) Allocator.Error!Preopens { @@ -79,86 +54,3 @@ pub fn preopensAlloc(gpa: Allocator) Allocator.Error!Preopens { names.appendAssumeCapacity(name); } } - -fn wasiPathPrefixMatches(prefix: []const u8, path: []const u8) bool { - if (path[0] != '/' and prefix.len == 0) - return true; - - if (path.len < prefix.len) - return false; - - if (prefix.len == 1) { - return prefix[0] == path[0]; - } - - if (!std.mem.eql(u8, path[0..prefix.len], prefix)) { - return false; - } - - return path.len == prefix.len or - path[prefix.len] == '/'; -} - -test "preopens" { - if (builtin.os.tag != .wasi or builtin.link_libc) return error.SkipZigTest; - - // lifted from `testing` - const random_bytes_count = 12; - const buf_size = 256; - const path = "/tmp"; - const tmp_file_name = "file.txt"; - const nonsense = "nonsense"; - - var random_bytes: [random_bytes_count]u8 = undefined; - var buf: [buf_size]u8 = undefined; - - std.crypto.random.bytes(&random_bytes); - const sub_path = std.fs.base64_encoder.encode(&buf, &random_bytes); - - // find all preopens - const allocator = std.heap.page_allocator; - var wasi_preopens = try std.fs.wasi.preopensAlloc(allocator); - - // look for the exact "/tmp" preopen match - const fd = std.fs.wasi.Preopens.find(wasi_preopens, path) orelse unreachable; - const base_dir = std.fs.Dir{ .fd = fd }; - - var tmp_path = base_dir.makeOpenPath(sub_path, .{}) catch - @panic("unable to make tmp dir for testing: /tmp/"); - - defer tmp_path.close(); - defer tmp_path.deleteTree(sub_path) catch {}; - - // create a file under /tmp//file.txt with contents "nonsense" - try tmp_path.writeFile(tmp_file_name, nonsense); - - // now look for the file as a single path - var tmp_dir_path_buf: [buf_size]u8 = undefined; - const tmp_dir_path = try std.fmt.bufPrint(&tmp_dir_path_buf, "{s}/{s}", .{ path, sub_path }); - - // find "/tmp/" using `findDir()` - const tmp_file_dir = try wasi_preopens.findDir(tmp_dir_path, .{}); - - const text = try tmp_file_dir.readFile(tmp_file_name, &buf); - - // ensure the file contents match "nonsense" - try testing.expect(std.mem.eql(u8, nonsense, text)); -} - -test "wasiPathPrefixMatches" { - try testing.expect(wasiPathPrefixMatches("/", "/foo")); - try testing.expect(wasiPathPrefixMatches("/testcases", "/testcases/test.txt")); - try testing.expect(wasiPathPrefixMatches("", "foo")); - try testing.expect(wasiPathPrefixMatches("foo", "foo")); - try testing.expect(wasiPathPrefixMatches("foo", "foo/bar")); - try testing.expect(!wasiPathPrefixMatches("bar", "foo/bar")); - try testing.expect(!wasiPathPrefixMatches("bar", "foo")); - try testing.expect(wasiPathPrefixMatches("foo", "foo/bar")); - try testing.expect(!wasiPathPrefixMatches("fooo", "foo")); - try testing.expect(!wasiPathPrefixMatches("foo", "fooo")); - try testing.expect(!wasiPathPrefixMatches("foo/bar", "foo")); - try testing.expect(!wasiPathPrefixMatches("bar/foo", "foo")); - try testing.expect(wasiPathPrefixMatches("/foo", "/foo")); - try testing.expect(wasiPathPrefixMatches("/foo", "/foo")); - try testing.expect(wasiPathPrefixMatches("/foo", "/foo/")); -}

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