master
 1pub export fn entry1() void {
 2    const T = @TypeOf(.{ 123, 3 });
 3    var b = T{ .@"1" = 3 };
 4    _ = &b;
 5    var c = T{ 123, 3 };
 6    _ = &c;
 7    var d = T{};
 8    _ = &d;
 9}
10pub export fn entry2() void {
11    var a: u32 = 2;
12    _ = &a;
13    const T = @TypeOf(.{ 123, a });
14    var b = T{ .@"1" = 3 };
15    _ = &b;
16    var c = T{ 123, 3 };
17    _ = &c;
18    var d = T{};
19    _ = &d;
20}
21pub export fn entry3() void {
22    var a: u32 = 2;
23    _ = &a;
24    const T = @TypeOf(.{ 123, a });
25    var b = T{ .@"0" = 123 };
26    _ = &b;
27}
28comptime {
29    var a: u32 = 2;
30    _ = &a;
31    const T = @TypeOf(.{ 123, a });
32    var b = T{ .@"0" = 123 };
33    _ = &b;
34    var c = T{ 123, 2 };
35    _ = &c;
36    var d = T{};
37    _ = &d;
38}
39pub export fn entry4() void {
40    var a: u32 = 2;
41    _ = &a;
42    const T = @TypeOf(.{ 123, a });
43    var b = T{ 123, 4, 5 };
44    _ = &b;
45}
46pub export fn entry5() void {
47    var a: u32 = 2;
48    _ = &a;
49    const T = @TypeOf(.{ 123, a });
50    var b = T{ .@"0" = 123, .@"2" = 123, .@"1" = 123 };
51    _ = &b;
52}
53pub const Consideration = struct {
54    curve: Curve,
55    pub const Curve = union(enum) {
56        logistic: Parameters,
57
58        pub const Parameters = struct { f32, f32, f32, f32 };
59    };
60};
61pub export fn entry6() void {
62    const cons: []Consideration = &.{
63        .{ .curve = .{ .logistic = .{ -7, 1.0, 0 } } },
64    };
65    _ = cons;
66}
67
68// error
69//
70// :18:14: error: missing tuple field with index 1
71// :25:14: error: missing tuple field with index 1
72// :43:14: error: expected at most 2 tuple fields; found 3
73// :50:30: error: index '2' out of bounds of tuple 'struct { comptime comptime_int = 123, u32 }'
74// :63:37: error: missing tuple field with index 3