authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2018-09-05 18:20:04-04:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2018-09-05 18:20:04-04:00
loga3d384e593e9128ed3b69cc77e6d6e048f0c6bb7
tree29ef462bda010a7289620df9d9a1622826662345
parentcc17b662e48e43d134549ae5e986abe2e7db2822
signaturelock-open Commit is signed but in an unrecognized format.

add test case for #726


2 files changed, 17 insertions(+), 0 deletions(-)

test/behavior.zig+1
...@@ -15,6 +15,7 @@ comptime {...@@ -15,6 +15,7 @@ comptime {
15 _ = @import("cases/bugs/394.zig");15 _ = @import("cases/bugs/394.zig");
16 _ = @import("cases/bugs/655.zig");16 _ = @import("cases/bugs/655.zig");
17 _ = @import("cases/bugs/656.zig");17 _ = @import("cases/bugs/656.zig");
18 _ = @import("cases/bugs/726.zig");
18 _ = @import("cases/bugs/828.zig");19 _ = @import("cases/bugs/828.zig");
19 _ = @import("cases/bugs/920.zig");20 _ = @import("cases/bugs/920.zig");
20 _ = @import("cases/byval_arg_var.zig");21 _ = @import("cases/byval_arg_var.zig");
test/cases/bugs/726.zig created+16
...@@ -0,0 +1,16 @@
1const assert = @import("std").debug.assert;
2
3test "@ptrCast from const to nullable" {
4 const c: u8 = 4;
5 var x: ?*const u8 = @ptrCast(?*const u8, &c);
6 assert(x.?.* == 4);
7}
8
9test "@ptrCast from var in empty struct to nullable" {
10 const container = struct {
11 var c: u8 = 4;
12 };
13 var x: ?*const u8 = @ptrCast(?*const u8, &container.c);
14 assert(x.?.* == 4);
15}
16