mirror of
https://github.com/ziglang/zig.git
synced 2026-02-21 16:54:52 +00:00
behavior: add test coverage for slicing zero length array field of struct
Closes #11787
This commit is contained in:
parent
7637ac584f
commit
75f8c04d6d
@ -412,10 +412,7 @@ pub fn SegmentedList(comptime T: type, comptime prealloc_item_count: usize) type
|
||||
}
|
||||
|
||||
test "SegmentedList basic usage" {
|
||||
if (false) {
|
||||
// https://github.com/ziglang/zig/issues/11787
|
||||
try testSegmentedList(0);
|
||||
}
|
||||
try testSegmentedList(0);
|
||||
try testSegmentedList(1);
|
||||
try testSegmentedList(2);
|
||||
try testSegmentedList(4);
|
||||
|
||||
@ -81,6 +81,7 @@ test {
|
||||
_ = @import("behavior/bugs/11179.zig");
|
||||
_ = @import("behavior/bugs/11181.zig");
|
||||
_ = @import("behavior/bugs/11213.zig");
|
||||
_ = @import("behavior/bugs/11787.zig");
|
||||
_ = @import("behavior/bugs/11816.zig");
|
||||
_ = @import("behavior/bugs/12003.zig");
|
||||
_ = @import("behavior/bugs/12025.zig");
|
||||
|
||||
20
test/behavior/bugs/11787.zig
Normal file
20
test/behavior/bugs/11787.zig
Normal file
@ -0,0 +1,20 @@
|
||||
const std = @import("std");
|
||||
const builtin = @import("builtin");
|
||||
const testing = std.testing;
|
||||
|
||||
test "slicing zero length array field of struct" {
|
||||
if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
|
||||
if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
|
||||
if (builtin.zig_backend == .stage2_x86) return error.SkipZigTest; // TODO
|
||||
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
|
||||
if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
|
||||
|
||||
const S = struct {
|
||||
a: [0]usize,
|
||||
fn foo(self: *@This(), start: usize, end: usize) []usize {
|
||||
return self.a[start..end];
|
||||
}
|
||||
};
|
||||
var s: S = undefined;
|
||||
try testing.expect(s.foo(0, 0).len == 0);
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user