diff options
| author | xackus <14938807+xackus@users.noreply.github.com> | 2020-07-05 17:58:21 +0200 |
|---|---|---|
| committer | xackus <14938807+xackus@users.noreply.github.com> | 2020-07-05 17:58:21 +0200 |
| commit | 51f8c306d9fa32c849b26c2d95a45901a02f448e (patch) | |
| tree | 80a09b965eaa0ff2849f3eafc7405eb9af3146ff /test | |
| parent | 0ae1157e4553d6f54e0d489daebb006c402e0f63 (diff) | |
| download | zig-51f8c306d9fa32c849b26c2d95a45901a02f448e.tar.gz zig-51f8c306d9fa32c849b26c2d95a45901a02f448e.zip | |
stage1: add missing runtime safety for @intCast unsigned -> signed of same bit count
Diffstat (limited to 'test')
| -rw-r--r-- | test/runtime_safety.zig | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/test/runtime_safety.zig b/test/runtime_safety.zig index e60d115a00..e27ae7e16e 100644 --- a/test/runtime_safety.zig +++ b/test/runtime_safety.zig @@ -757,6 +757,16 @@ pub fn addCases(cases: *tests.CompareOutputContext) void { \\} ); + cases.addRuntimeSafety("unsigned integer not fitting in cast to signed integer - same bit count", + \\pub fn panic(message: []const u8, stack_trace: ?*@import("builtin").StackTrace) noreturn { + \\ @import("std").os.exit(126); + \\} + \\pub fn main() void { + \\ var value: u8 = 245; + \\ var casted = @intCast(i8, value); + \\} + ); + cases.addRuntimeSafety("unwrap error", \\pub fn panic(message: []const u8, stack_trace: ?*@import("builtin").StackTrace) noreturn { \\ if (@import("std").mem.eql(u8, message, "attempt to unwrap error: Whatever")) { |
