Commit e93d3a3cdb

Andrew Kelley <andrew@ziglang.org>
2023-11-05 03:27:46
zig reduce: don't try to remove discard statements
those are handled separately
1 parent 9e81222
Changed files (2)
src/reduce/Walk.zig
@@ -649,7 +649,11 @@ fn walkBlock(
             => try walkLocalVarDecl(w, ast.fullVarDecl(stmt).?),
 
             else => {
-                try w.transformations.append(.{ .delete_node = stmt });
+                // Don't try to remove `_ = foo;` discards; those are handled separately.
+                switch (categorizeStmt(ast, stmt)) {
+                    .discard_identifier => {},
+                    else => try w.transformations.append(.{ .delete_node = stmt }),
+                }
                 try walkExpression(w, stmt);
             },
         }
src/reduce.zig
@@ -229,8 +229,8 @@ pub fn main(gpa: Allocator, arena: Allocator, args: []const []const u8) !void {
             //std.debug.print("trying this code:\n{s}\n", .{rendered.items});
 
             const interestingness = try runCheck(arena, interestingness_argv.items);
-            std.debug.print("{d} random transformations: {s}. {d} remaining\n", .{
-                subset_size, @tagName(interestingness), transformations.items.len - start_index,
+            std.debug.print("{d} random transformations: {s}. {d}/{d}\n", .{
+                subset_size, @tagName(interestingness), start_index, transformations.items.len,
             });
             switch (interestingness) {
                 .interesting => {