master
1fn foo(x: u2) void {
2 const y: Error!u2 = x;
3 if (y) |_| {} else |e| switch (e) {
4 error.Foo => {},
5 error.Bar => {},
6 error.Baz => {},
7 else => {},
8 }
9}
10
11fn bar(x: u2) void {
12 const y: Error!u2 = x;
13 y catch |e| switch (e) {
14 error.Foo => {},
15 error.Bar => {},
16 error.Baz => {},
17 else => {},
18 };
19}
20
21const Error = error{ Foo, Bar, Baz };
22
23export fn entry() usize {
24 return @sizeOf(@TypeOf(&foo)) + @sizeOf(@TypeOf(&bar));
25}
26
27// error
28//
29// :7:14: error: unreachable else prong; all cases already handled
30// :17:14: error: unreachable else prong; all cases already handled