diff options
Diffstat (limited to 'src/reduce')
| -rw-r--r-- | src/reduce/Walk.zig | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/reduce/Walk.zig b/src/reduce/Walk.zig index d62cc4e905..c740ac4f0b 100644 --- a/src/reduce/Walk.zig +++ b/src/reduce/Walk.zig @@ -581,9 +581,12 @@ fn walkGlobalVarDecl(w: *Walk, decl_node: Ast.Node.Index, var_decl: Ast.full.Var try walkExpression(w, var_decl.ast.section_node); } - assert(var_decl.ast.init_node != 0); - - return walkExpression(w, var_decl.ast.init_node); + if (var_decl.ast.init_node != 0) { + if (!isUndefinedIdent(w.ast, var_decl.ast.init_node)) { + try w.transformations.append(.{ .replace_with_undef = var_decl.ast.init_node }); + } + try walkExpression(w, var_decl.ast.init_node); + } } fn walkLocalVarDecl(w: *Walk, var_decl: Ast.full.VarDecl) Error!void { |
