authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2021-08-05 23:20:10-07:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2021-08-05 23:20:10-07:00
log786e238a7f1034a09bc0471b3796051abb874e14
tree56d4370762709805936e21ceb29f1b13ae0a54bc
parent47f2463b5c784cb7be9593f56e6b89805dbb8f06

AstGen: fix function declarations

They were putting their return type expressions into the wrong ZIR block, resulting in a compiler crash.

1 files changed, 2 insertions(+), 2 deletions(-)

src/AstGen.zig+2-2
...@@ -3004,9 +3004,9 @@ fn fnDecl(...@@ -3004,9 +3004,9 @@ fn fnDecl(
3004 break :inst try comptimeExpr(&decl_gz, params_scope, .{ .ty = .const_slice_u8_type }, fn_proto.ast.section_expr);3004 break :inst try comptimeExpr(&decl_gz, params_scope, .{ .ty = .const_slice_u8_type }, fn_proto.ast.section_expr);
3005 };3005 };
30063006
3007 var ret_gz = gz.makeSubBlock(params_scope);3007 var ret_gz = decl_gz.makeSubBlock(params_scope);
3008 defer ret_gz.instructions.deinit(gpa);3008 defer ret_gz.instructions.deinit(gpa);
3009 const ret_ty = try expr(&decl_gz, params_scope, coerced_type_rl, fn_proto.ast.return_type);3009 const ret_ty = try expr(&ret_gz, params_scope, coerced_type_rl, fn_proto.ast.return_type);
3010 const ret_br = try ret_gz.addBreak(.break_inline, 0, ret_ty);3010 const ret_br = try ret_gz.addBreak(.break_inline, 0, ret_ty);
30113011
3012 const cc: Zir.Inst.Ref = blk: {3012 const cc: Zir.Inst.Ref = blk: {