test cases: taking pointer of global tagged union

Closes #11619
This commit is contained in:
r00ster91 2023-05-28 02:10:54 +02:00
parent 413a86f7eb
commit 78da0e40a8

View File

@ -0,0 +1,26 @@
const std = @import("std");
const A = union(enum) { hello: usize, merp: void };
var global_a: A = .{ .hello = 12 };
var global_usize: usize = 0;
fn doSomethingWithUsize(ptr: *usize) usize {
ptr.* = ptr.* + 1;
return ptr.*;
}
pub fn main() !void {
try std.testing.expect(doSomethingWithUsize(&global_usize) == 1);
switch (global_a) {
.merp => return,
.hello => |*value| {
try std.testing.expect(doSomethingWithUsize(value) == 13);
},
}
}
// run
// backend=llvm
// target=native