authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2023-11-04 19:27:46-07:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2023-11-04 19:27:46-07:00
loge93d3a3cdb276c8ed3e50466f348e6a4b9de6899
tree29c679f61c32e763cfc4e9fdc9b9c31893128c8f
parent9e81222d9281f8d26e32578fe3cef54e0c7d5232

zig reduce: don't try to remove discard statements

those are handled separately

2 files changed, 7 insertions(+), 3 deletions(-)

src/reduce.zig+2-2
...@@ -229,8 +229,8 @@ pub fn main(gpa: Allocator, arena: Allocator, args: []const []const u8) !void {...@@ -229,8 +229,8 @@ pub fn main(gpa: Allocator, arena: Allocator, args: []const []const u8) !void {
229 //std.debug.print("trying this code:\n{s}\n", .{rendered.items});229 //std.debug.print("trying this code:\n{s}\n", .{rendered.items});
230230
231 const interestingness = try runCheck(arena, interestingness_argv.items);231 const interestingness = try runCheck(arena, interestingness_argv.items);
232 std.debug.print("{d} random transformations: {s}. {d} remaining\n", .{232 std.debug.print("{d} random transformations: {s}. {d}/{d}\n", .{
233 subset_size, @tagName(interestingness), transformations.items.len - start_index,233 subset_size, @tagName(interestingness), start_index, transformations.items.len,
234 });234 });
235 switch (interestingness) {235 switch (interestingness) {
236 .interesting => {236 .interesting => {
src/reduce/Walk.zig+5-1
...@@ -649,7 +649,11 @@ fn walkBlock(...@@ -649,7 +649,11 @@ fn walkBlock(
649 => try walkLocalVarDecl(w, ast.fullVarDecl(stmt).?),649 => try walkLocalVarDecl(w, ast.fullVarDecl(stmt).?),
650650
651 else => {651 else => {
652 try w.transformations.append(.{ .delete_node = stmt });652 // Don't try to remove `_ = foo;` discards; those are handled separately.
653 switch (categorizeStmt(ast, stmt)) {
654 .discard_identifier => {},
655 else => try w.transformations.append(.{ .delete_node = stmt }),
656 }
653 try walkExpression(w, stmt);657 try walkExpression(w, stmt);
654 },658 },
655 }659 }