| author | |
| committer | |
| log | 75f8c04d6d8f7c0fafabad81ab8f1bf3e9377889 |
| tree | ff3ae55e8c9ca0abdcc24c3c4996176a503e743f |
| parent | 7637ac584fc2cee95dc5a20f51844b72fc7ecc82 |
Closes #117873 files changed, 22 insertions(+), 4 deletions(-)
lib/std/segmented_list.zig+1-4| ... | @@ -412,10 +412,7 @@ pub fn SegmentedList(comptime T: type, comptime prealloc_item_count: usize) type | ... | @@ -412,10 +412,7 @@ pub fn SegmentedList(comptime T: type, comptime prealloc_item_count: usize) type |
| 412 | } | 412 | } |
| 413 | 413 | ||
| 414 | test "SegmentedList basic usage" { | 414 | test "SegmentedList basic usage" { |
| 415 | if (false) { | 415 | try testSegmentedList(0); |
| 416 | // https://github.com/ziglang/zig/issues/11787 | ||
| 417 | try testSegmentedList(0); | ||
| 418 | } | ||
| 419 | try testSegmentedList(1); | 416 | try testSegmentedList(1); |
| 420 | try testSegmentedList(2); | 417 | try testSegmentedList(2); |
| 421 | try testSegmentedList(4); | 418 | try testSegmentedList(4); |
test/behavior.zig+1| ... | @@ -81,6 +81,7 @@ test { | ... | @@ -81,6 +81,7 @@ test { |
| 81 | _ = @import("behavior/bugs/11179.zig"); | 81 | _ = @import("behavior/bugs/11179.zig"); |
| 82 | _ = @import("behavior/bugs/11181.zig"); | 82 | _ = @import("behavior/bugs/11181.zig"); |
| 83 | _ = @import("behavior/bugs/11213.zig"); | 83 | _ = @import("behavior/bugs/11213.zig"); |
| 84 | _ = @import("behavior/bugs/11787.zig"); | ||
| 84 | _ = @import("behavior/bugs/11816.zig"); | 85 | _ = @import("behavior/bugs/11816.zig"); |
| 85 | _ = @import("behavior/bugs/12003.zig"); | 86 | _ = @import("behavior/bugs/12003.zig"); |
| 86 | _ = @import("behavior/bugs/12025.zig"); | 87 | _ = @import("behavior/bugs/12025.zig"); |
test/behavior/bugs/11787.zig created+20| ... | @@ -0,0 +1,20 @@ | ||
| 1 | const std = @import("std"); | ||
| 2 | const builtin = @import("builtin"); | ||
| 3 | const testing = std.testing; | ||
| 4 | |||
| 5 | test "slicing zero length array field of struct" { | ||
| 6 | if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO | ||
| 7 | if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO | ||
| 8 | if (builtin.zig_backend == .stage2_x86) return error.SkipZigTest; // TODO | ||
| 9 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO | ||
| 10 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO | ||
| 11 | |||
| 12 | const S = struct { | ||
| 13 | a: [0]usize, | ||
| 14 | fn foo(self: *@This(), start: usize, end: usize) []usize { | ||
| 15 | return self.a[start..end]; | ||
| 16 | } | ||
| 17 | }; | ||
| 18 | var s: S = undefined; | ||
| 19 | try testing.expect(s.foo(0, 0).len == 0); | ||
| 20 | } | ||