]> git.lizzy.rs Git - rust.git/blob - src/test/ui/issues/issue-28561.rs
Rollup merge of #92663 - cuviper:generic-write-cursor, r=dtolnay
[rust.git] / src / test / ui / issues / issue-28561.rs
1 // check-pass
2 #[derive(Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)]
3 struct Array<T> {
4     f00: [T; 00],
5     f01: [T; 01],
6     f02: [T; 02],
7     f03: [T; 03],
8     f04: [T; 04],
9     f05: [T; 05],
10     f06: [T; 06],
11     f07: [T; 07],
12     f08: [T; 08],
13     f09: [T; 09],
14     f10: [T; 10],
15     f11: [T; 11],
16     f12: [T; 12],
17     f13: [T; 13],
18     f14: [T; 14],
19     f15: [T; 15],
20     f16: [T; 16],
21     f17: [T; 17],
22     f18: [T; 18],
23     f19: [T; 19],
24     f20: [T; 20],
25     f21: [T; 21],
26     f22: [T; 22],
27     f23: [T; 23],
28     f24: [T; 24],
29     f25: [T; 25],
30     f26: [T; 26],
31     f27: [T; 27],
32     f28: [T; 28],
33     f29: [T; 29],
34     f30: [T; 30],
35     f31: [T; 31],
36     f32: [T; 32],
37 }
38
39 // FIXME(#44580): merge with `Array` once `[T; N]: Clone` where `T: Clone`
40 #[derive(Clone, Copy)]
41 struct CopyArray<T: Copy> {
42     f00: [T; 00],
43     f01: [T; 01],
44     f02: [T; 02],
45     f03: [T; 03],
46     f04: [T; 04],
47     f05: [T; 05],
48     f06: [T; 06],
49     f07: [T; 07],
50     f08: [T; 08],
51     f09: [T; 09],
52     f10: [T; 10],
53     f11: [T; 11],
54     f12: [T; 12],
55     f13: [T; 13],
56     f14: [T; 14],
57     f15: [T; 15],
58     f16: [T; 16],
59     f17: [T; 17],
60     f18: [T; 18],
61     f19: [T; 19],
62     f20: [T; 20],
63     f21: [T; 21],
64     f22: [T; 22],
65     f23: [T; 23],
66     f24: [T; 24],
67     f25: [T; 25],
68     f26: [T; 26],
69     f27: [T; 27],
70     f28: [T; 28],
71     f29: [T; 29],
72     f30: [T; 30],
73     f31: [T; 31],
74     f32: [T; 32],
75 }
76
77 #[derive(Clone, Copy, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)]
78 struct Fn<A, B, C, D, E, F, G, H, I, J, K, L> {
79     f00: fn(),
80     f01: fn(A),
81     f02: fn(A, B),
82     f03: fn(A, B, C),
83     f04: fn(A, B, C, D),
84     f05: fn(A, B, C, D, E),
85     f06: fn(A, B, C, D, E, F),
86     f07: fn(A, B, C, D, E, F, G),
87     f08: fn(A, B, C, D, E, F, G, H),
88     f09: fn(A, B, C, D, E, F, G, H, I),
89     f10: fn(A, B, C, D, E, F, G, H, I, J),
90     f11: fn(A, B, C, D, E, F, G, H, I, J, K),
91     f12: fn(A, B, C, D, E, F, G, H, I, J, K, L),
92 }
93
94 #[derive(Clone, Copy, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)]
95 struct Tuple<A, B, C, D, E, F, G, H, I, J, K, L> {
96     f00: (),
97     f01: (A),
98     f02: (A, B),
99     f03: (A, B, C),
100     f04: (A, B, C, D),
101     f05: (A, B, C, D, E),
102     f06: (A, B, C, D, E, F),
103     f07: (A, B, C, D, E, F, G),
104     f08: (A, B, C, D, E, F, G, H),
105     f09: (A, B, C, D, E, F, G, H, I),
106     f10: (A, B, C, D, E, F, G, H, I, J),
107     f11: (A, B, C, D, E, F, G, H, I, J, K),
108     f12: (A, B, C, D, E, F, G, H, I, J, K, L),
109 }
110
111 fn main() {}