1const E = enum {};
2
3export fn entry1() void {
4 const e: E = undefined;
5 _ = e;
6}
7
8export fn entry2() void {
9 const e: E = @enumFromInt(@as(u8, undefined));
10 _ = e;
11}
12
13export fn entry3() void {
14 const e: E = .a;
15 _ = e;
16}
17
18export fn entry4() void {
19 const e: E = @enumFromInt(0);
20 _ = e;
21}
22
23// error
24//
25// :4:18: error: expected type 'tmp.E', found '@TypeOf(undefined)'
26// :4:18: note: cannot coerce to uninstantiable type 'tmp.E'
27// :1:11: note: enum declared here
28// :9:31: error: use of undefined value here causes illegal behavior
29// :14:19: error: enum 'tmp.E' has no member named 'a'
30// :1:11: note: enum declared here
31// :19:18: error: enum 'tmp.E' has no tag with value '0'
32// :1:11: note: enum declared here