diff options
| author | Jacob G-W <jacoblevgw@gmail.com> | 2021-06-08 22:05:03 -0400 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2021-06-21 17:03:02 -0700 |
| commit | 2092481265ce4f51529888690e648608dbae52c6 (patch) | |
| tree | 41973156378e758c2a27ff0e2c0293b04aa8ddfc /src/AstGen.zig | |
| parent | 75f7a8913eb6c22a7d2d4514512adb6ef535bb47 (diff) | |
| download | zig-2092481265ce4f51529888690e648608dbae52c6.tar.gz zig-2092481265ce4f51529888690e648608dbae52c6.zip | |
stage2 astgen: fix bug in struct init where type not refed
Diffstat (limited to 'src/AstGen.zig')
| -rw-r--r-- | src/AstGen.zig | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/AstGen.zig b/src/AstGen.zig index 48b1ee5579..dac29095cc 100644 --- a/src/AstGen.zig +++ b/src/AstGen.zig @@ -1328,6 +1328,8 @@ fn structInitExpr( } switch (rl) { .discard => { + if (struct_init.ast.type_expr != 0) + _ = try typeExpr(gz, scope, struct_init.ast.type_expr); for (struct_init.ast.fields) |field_init| { _ = try expr(gz, scope, .discard, field_init); } @@ -1412,6 +1414,9 @@ fn structInitExprRlPtr( const field_ptr_list = try gpa.alloc(Zir.Inst.Index, struct_init.ast.fields.len); defer gpa.free(field_ptr_list); + if (struct_init.ast.type_expr != 0) + _ = try typeExpr(gz, scope, struct_init.ast.type_expr); + for (struct_init.ast.fields) |field_init, i| { const name_token = tree.firstToken(field_init) - 2; const str_index = try astgen.identAsString(name_token); |
