Commit 74ccd0c40b
src/value.zig
@@ -526,7 +526,15 @@ pub const Value = extern union {
};
return Value{ .ptr_otherwise = &new_payload.base };
},
- .bytes => return self.copyPayloadShallow(arena, Payload.Bytes),
+ .bytes => {
+ const bytes = self.castTag(.bytes).?.data;
+ const new_payload = try arena.create(Payload.Bytes);
+ new_payload.* = .{
+ .base = .{ .tag = .bytes },
+ .data = try arena.dupe(u8, bytes),
+ };
+ return Value{ .ptr_otherwise = &new_payload.base };
+ },
.repeated,
.eu_payload,
.opt_payload,
test/behavior/cast.zig
@@ -462,7 +462,7 @@ fn peerTypeEmptyArrayAndSliceAndError(a: bool, slice: []u8) anyerror![]u8 {
}
test "implicit cast from *const [N]T to []const T" {
- if (builtin.zig_backend != .stage1) return error.SkipZigTest; // TODO
+ if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
try testCastConstArrayRefToConstSlice();
comptime try testCastConstArrayRefToConstSlice();