]> git.proxmox.com Git - rustc.git/blob - src/test/ui/issues/issue-28561.rs
New upstream version 1.41.1+dfsg1
[rustc.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() {}