authorgravatar for jacobly@ziglang.orgJacob Young <jacobly@ziglang.org> 2023-05-21 03:57:23-04:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2023-06-10 20:47:54-07:00
log84099e50fc0af3719f3819c6c2d37dedba1aaae4
tree0c6fa9d0659b219fbca3c854b6339680044dfc1d
parentbe1b23120648dff5e23d67b089c10b479564bffd

TypedValue: fix debug print crashes


1 files changed, 11 insertions(+), 0 deletions(-)

src/TypedValue.zig+11
......@@ -295,6 +295,9 @@ pub fn print(
295295 },
296296 .eu_payload_ptr => {
297297 try writer.writeAll("&");
298 if (level == 0) {
299 return writer.writeAll("(ptr)");
300 }
298301
299302 const data = val.castTag(.eu_payload_ptr).?.data;
300303
......@@ -320,6 +323,10 @@ pub fn print(
320323 return;
321324 },
322325 .opt_payload_ptr => {
326 if (level == 0) {
327 return writer.writeAll("&(ptr)");
328 }
329
323330 const data = val.castTag(.opt_payload_ptr).?.data;
324331
325332 var ty_val: Value.Payload.Ty = .{
......@@ -359,6 +366,10 @@ pub fn print(
359366 inline .u64, .i64, .big_int => |x| return writer.print("{}", .{x}),
360367 },
361368 .enum_tag => |enum_tag| {
369 if (level == 0) {
370 return writer.writeAll("(enum)");
371 }
372
362373 try writer.writeAll("@intToEnum(");
363374 try print(.{
364375 .ty = Type.type,