| ... | @@ -1,3 +1,4 @@ | ... | @@ -1,3 +1,4 @@ |
| | 1 | const builtin = @import("builtin"); |
| 1 | const std = @import("std.zig"); | 2 | const std = @import("std.zig"); |
| 2 | const debug = std.debug; | 3 | const debug = std.debug; |
| 3 | const fs = std.fs; | 4 | const fs = std.fs; |
| ... | @@ -502,6 +503,9 @@ fn parseFormValue(allocator: mem.Allocator, in_stream: anytype, form_id: u64, en | ... | @@ -502,6 +503,9 @@ fn parseFormValue(allocator: mem.Allocator, in_stream: anytype, form_id: u64, en |
| 502 | FORM.line_strp => FormValue{ .LineStrPtr = try readAddress(in_stream, endian, is_64) }, | 503 | FORM.line_strp => FormValue{ .LineStrPtr = try readAddress(in_stream, endian, is_64) }, |
| 503 | FORM.indirect => { | 504 | FORM.indirect => { |
| 504 | const child_form_id = try nosuspend leb.readULEB128(u64, in_stream); | 505 | const child_form_id = try nosuspend leb.readULEB128(u64, in_stream); |
| | 506 | if (builtin.zig_backend != .stage1) { |
| | 507 | return parseFormValue(allocator, in_stream, child_form_id, endian, is_64); |
| | 508 | } |
| 505 | const F = @TypeOf(async parseFormValue(allocator, in_stream, child_form_id, endian, is_64)); | 509 | const F = @TypeOf(async parseFormValue(allocator, in_stream, child_form_id, endian, is_64)); |
| 506 | var frame = try allocator.create(F); | 510 | var frame = try allocator.create(F); |
| 507 | defer allocator.destroy(frame); | 511 | defer allocator.destroy(frame); |