diff options
Diffstat (limited to 'test/behavior/basic.zig')
| -rw-r--r-- | test/behavior/basic.zig | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/test/behavior/basic.zig b/test/behavior/basic.zig index d62ba75dee..adcba8721d 100644 --- a/test/behavior/basic.zig +++ b/test/behavior/basic.zig @@ -933,3 +933,15 @@ test "try in labeled block doesn't cast to wrong type" { }; _ = s; } + +test "comptime int in switch in catch is casted to correct inferred type" { + if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; + + var a: error{ A, B }!u64 = 0; + var b = a catch |err| switch (err) { + error.A => 0, + else => unreachable, + }; + _ = b; +} |
