File tree Expand file tree Collapse file tree 3 files changed +310
-0
lines changed
src/test/ui/const-generics Expand file tree Collapse file tree 3 files changed +310
-0
lines changed Original file line number Diff line number Diff line change
1
+ error[E0277]: the trait bound `(): Foo<N>` is not satisfied
2
+ --> $DIR/exhaustive-value.rs:267:5
3
+ |
4
+ LL | fn test() {}
5
+ | --------- required by `Foo::test`
6
+ ...
7
+ LL | <() as Foo<N>>::test()
8
+ | ^^^^^^^^^^^^^^^^^^^^ the trait `Foo<N>` is not implemented for `()`
9
+ |
10
+ = help: the following implementations were found:
11
+ <() as Foo<0_u8>>
12
+ <() as Foo<100_u8>>
13
+ <() as Foo<101_u8>>
14
+ <() as Foo<102_u8>>
15
+ and 252 others
16
+
17
+ error: aborting due to previous error
18
+
19
+ For more information about this error, try `rustc --explain E0277`.
Original file line number Diff line number Diff line change
1
+ error[E0277]: the trait bound `(): Foo<N>` is not satisfied
2
+ --> $DIR/exhaustive-value.rs:267:5
3
+ |
4
+ LL | fn test() {}
5
+ | --------- required by `Foo::test`
6
+ ...
7
+ LL | <() as Foo<N>>::test()
8
+ | ^^^^^^^^^^^^^^^^^^^^ the trait `Foo<N>` is not implemented for `()`
9
+ |
10
+ = help: the following implementations were found:
11
+ <() as Foo<0_u8>>
12
+ <() as Foo<100_u8>>
13
+ <() as Foo<101_u8>>
14
+ <() as Foo<102_u8>>
15
+ and 252 others
16
+
17
+ error: aborting due to previous error
18
+
19
+ For more information about this error, try `rustc --explain E0277`.
Original file line number Diff line number Diff line change
1
+ // revisions: full min
2
+ #![ cfg_attr( full, feature( const_generics) ) ]
3
+ #![ cfg_attr( full, allow( incomplete_features) ) ]
4
+ #![ cfg_attr( min, feature( min_const_generics) ) ]
5
+
6
+ trait Foo < const N : u8 > {
7
+ fn test ( ) { }
8
+ }
9
+ impl Foo < 0 > for ( ) { }
10
+ impl Foo < 1 > for ( ) { }
11
+ impl Foo < 2 > for ( ) { }
12
+ impl Foo < 3 > for ( ) { }
13
+ impl Foo < 4 > for ( ) { }
14
+ impl Foo < 5 > for ( ) { }
15
+ impl Foo < 6 > for ( ) { }
16
+ impl Foo < 7 > for ( ) { }
17
+ impl Foo < 8 > for ( ) { }
18
+ impl Foo < 9 > for ( ) { }
19
+ impl Foo < 10 > for ( ) { }
20
+ impl Foo < 11 > for ( ) { }
21
+ impl Foo < 12 > for ( ) { }
22
+ impl Foo < 13 > for ( ) { }
23
+ impl Foo < 14 > for ( ) { }
24
+ impl Foo < 15 > for ( ) { }
25
+ impl Foo < 16 > for ( ) { }
26
+ impl Foo < 17 > for ( ) { }
27
+ impl Foo < 18 > for ( ) { }
28
+ impl Foo < 19 > for ( ) { }
29
+ impl Foo < 20 > for ( ) { }
30
+ impl Foo < 21 > for ( ) { }
31
+ impl Foo < 22 > for ( ) { }
32
+ impl Foo < 23 > for ( ) { }
33
+ impl Foo < 24 > for ( ) { }
34
+ impl Foo < 25 > for ( ) { }
35
+ impl Foo < 26 > for ( ) { }
36
+ impl Foo < 27 > for ( ) { }
37
+ impl Foo < 28 > for ( ) { }
38
+ impl Foo < 29 > for ( ) { }
39
+ impl Foo < 30 > for ( ) { }
40
+ impl Foo < 31 > for ( ) { }
41
+ impl Foo < 32 > for ( ) { }
42
+ impl Foo < 33 > for ( ) { }
43
+ impl Foo < 34 > for ( ) { }
44
+ impl Foo < 35 > for ( ) { }
45
+ impl Foo < 36 > for ( ) { }
46
+ impl Foo < 37 > for ( ) { }
47
+ impl Foo < 38 > for ( ) { }
48
+ impl Foo < 39 > for ( ) { }
49
+ impl Foo < 40 > for ( ) { }
50
+ impl Foo < 41 > for ( ) { }
51
+ impl Foo < 42 > for ( ) { }
52
+ impl Foo < 43 > for ( ) { }
53
+ impl Foo < 44 > for ( ) { }
54
+ impl Foo < 45 > for ( ) { }
55
+ impl Foo < 46 > for ( ) { }
56
+ impl Foo < 47 > for ( ) { }
57
+ impl Foo < 48 > for ( ) { }
58
+ impl Foo < 49 > for ( ) { }
59
+ impl Foo < 50 > for ( ) { }
60
+ impl Foo < 51 > for ( ) { }
61
+ impl Foo < 52 > for ( ) { }
62
+ impl Foo < 53 > for ( ) { }
63
+ impl Foo < 54 > for ( ) { }
64
+ impl Foo < 55 > for ( ) { }
65
+ impl Foo < 56 > for ( ) { }
66
+ impl Foo < 57 > for ( ) { }
67
+ impl Foo < 58 > for ( ) { }
68
+ impl Foo < 59 > for ( ) { }
69
+ impl Foo < 60 > for ( ) { }
70
+ impl Foo < 61 > for ( ) { }
71
+ impl Foo < 62 > for ( ) { }
72
+ impl Foo < 63 > for ( ) { }
73
+ impl Foo < 64 > for ( ) { }
74
+ impl Foo < 65 > for ( ) { }
75
+ impl Foo < 66 > for ( ) { }
76
+ impl Foo < 67 > for ( ) { }
77
+ impl Foo < 68 > for ( ) { }
78
+ impl Foo < 69 > for ( ) { }
79
+ impl Foo < 70 > for ( ) { }
80
+ impl Foo < 71 > for ( ) { }
81
+ impl Foo < 72 > for ( ) { }
82
+ impl Foo < 73 > for ( ) { }
83
+ impl Foo < 74 > for ( ) { }
84
+ impl Foo < 75 > for ( ) { }
85
+ impl Foo < 76 > for ( ) { }
86
+ impl Foo < 77 > for ( ) { }
87
+ impl Foo < 78 > for ( ) { }
88
+ impl Foo < 79 > for ( ) { }
89
+ impl Foo < 80 > for ( ) { }
90
+ impl Foo < 81 > for ( ) { }
91
+ impl Foo < 82 > for ( ) { }
92
+ impl Foo < 83 > for ( ) { }
93
+ impl Foo < 84 > for ( ) { }
94
+ impl Foo < 85 > for ( ) { }
95
+ impl Foo < 86 > for ( ) { }
96
+ impl Foo < 87 > for ( ) { }
97
+ impl Foo < 88 > for ( ) { }
98
+ impl Foo < 89 > for ( ) { }
99
+ impl Foo < 90 > for ( ) { }
100
+ impl Foo < 91 > for ( ) { }
101
+ impl Foo < 92 > for ( ) { }
102
+ impl Foo < 93 > for ( ) { }
103
+ impl Foo < 94 > for ( ) { }
104
+ impl Foo < 95 > for ( ) { }
105
+ impl Foo < 96 > for ( ) { }
106
+ impl Foo < 97 > for ( ) { }
107
+ impl Foo < 98 > for ( ) { }
108
+ impl Foo < 99 > for ( ) { }
109
+ impl Foo < 100 > for ( ) { }
110
+ impl Foo < 101 > for ( ) { }
111
+ impl Foo < 102 > for ( ) { }
112
+ impl Foo < 103 > for ( ) { }
113
+ impl Foo < 104 > for ( ) { }
114
+ impl Foo < 105 > for ( ) { }
115
+ impl Foo < 106 > for ( ) { }
116
+ impl Foo < 107 > for ( ) { }
117
+ impl Foo < 108 > for ( ) { }
118
+ impl Foo < 109 > for ( ) { }
119
+ impl Foo < 110 > for ( ) { }
120
+ impl Foo < 111 > for ( ) { }
121
+ impl Foo < 112 > for ( ) { }
122
+ impl Foo < 113 > for ( ) { }
123
+ impl Foo < 114 > for ( ) { }
124
+ impl Foo < 115 > for ( ) { }
125
+ impl Foo < 116 > for ( ) { }
126
+ impl Foo < 117 > for ( ) { }
127
+ impl Foo < 118 > for ( ) { }
128
+ impl Foo < 119 > for ( ) { }
129
+ impl Foo < 120 > for ( ) { }
130
+ impl Foo < 121 > for ( ) { }
131
+ impl Foo < 122 > for ( ) { }
132
+ impl Foo < 123 > for ( ) { }
133
+ impl Foo < 124 > for ( ) { }
134
+ impl Foo < 125 > for ( ) { }
135
+ impl Foo < 126 > for ( ) { }
136
+ impl Foo < 127 > for ( ) { }
137
+ impl Foo < 128 > for ( ) { }
138
+ impl Foo < 129 > for ( ) { }
139
+ impl Foo < 130 > for ( ) { }
140
+ impl Foo < 131 > for ( ) { }
141
+ impl Foo < 132 > for ( ) { }
142
+ impl Foo < 133 > for ( ) { }
143
+ impl Foo < 134 > for ( ) { }
144
+ impl Foo < 135 > for ( ) { }
145
+ impl Foo < 136 > for ( ) { }
146
+ impl Foo < 137 > for ( ) { }
147
+ impl Foo < 138 > for ( ) { }
148
+ impl Foo < 139 > for ( ) { }
149
+ impl Foo < 140 > for ( ) { }
150
+ impl Foo < 141 > for ( ) { }
151
+ impl Foo < 142 > for ( ) { }
152
+ impl Foo < 143 > for ( ) { }
153
+ impl Foo < 144 > for ( ) { }
154
+ impl Foo < 145 > for ( ) { }
155
+ impl Foo < 146 > for ( ) { }
156
+ impl Foo < 147 > for ( ) { }
157
+ impl Foo < 148 > for ( ) { }
158
+ impl Foo < 149 > for ( ) { }
159
+ impl Foo < 150 > for ( ) { }
160
+ impl Foo < 151 > for ( ) { }
161
+ impl Foo < 152 > for ( ) { }
162
+ impl Foo < 153 > for ( ) { }
163
+ impl Foo < 154 > for ( ) { }
164
+ impl Foo < 155 > for ( ) { }
165
+ impl Foo < 156 > for ( ) { }
166
+ impl Foo < 157 > for ( ) { }
167
+ impl Foo < 158 > for ( ) { }
168
+ impl Foo < 159 > for ( ) { }
169
+ impl Foo < 160 > for ( ) { }
170
+ impl Foo < 161 > for ( ) { }
171
+ impl Foo < 162 > for ( ) { }
172
+ impl Foo < 163 > for ( ) { }
173
+ impl Foo < 164 > for ( ) { }
174
+ impl Foo < 165 > for ( ) { }
175
+ impl Foo < 166 > for ( ) { }
176
+ impl Foo < 167 > for ( ) { }
177
+ impl Foo < 168 > for ( ) { }
178
+ impl Foo < 169 > for ( ) { }
179
+ impl Foo < 170 > for ( ) { }
180
+ impl Foo < 171 > for ( ) { }
181
+ impl Foo < 172 > for ( ) { }
182
+ impl Foo < 173 > for ( ) { }
183
+ impl Foo < 174 > for ( ) { }
184
+ impl Foo < 175 > for ( ) { }
185
+ impl Foo < 176 > for ( ) { }
186
+ impl Foo < 177 > for ( ) { }
187
+ impl Foo < 178 > for ( ) { }
188
+ impl Foo < 179 > for ( ) { }
189
+ impl Foo < 180 > for ( ) { }
190
+ impl Foo < 181 > for ( ) { }
191
+ impl Foo < 182 > for ( ) { }
192
+ impl Foo < 183 > for ( ) { }
193
+ impl Foo < 184 > for ( ) { }
194
+ impl Foo < 185 > for ( ) { }
195
+ impl Foo < 186 > for ( ) { }
196
+ impl Foo < 187 > for ( ) { }
197
+ impl Foo < 188 > for ( ) { }
198
+ impl Foo < 189 > for ( ) { }
199
+ impl Foo < 190 > for ( ) { }
200
+ impl Foo < 191 > for ( ) { }
201
+ impl Foo < 192 > for ( ) { }
202
+ impl Foo < 193 > for ( ) { }
203
+ impl Foo < 194 > for ( ) { }
204
+ impl Foo < 195 > for ( ) { }
205
+ impl Foo < 196 > for ( ) { }
206
+ impl Foo < 197 > for ( ) { }
207
+ impl Foo < 198 > for ( ) { }
208
+ impl Foo < 199 > for ( ) { }
209
+ impl Foo < 200 > for ( ) { }
210
+ impl Foo < 201 > for ( ) { }
211
+ impl Foo < 202 > for ( ) { }
212
+ impl Foo < 203 > for ( ) { }
213
+ impl Foo < 204 > for ( ) { }
214
+ impl Foo < 205 > for ( ) { }
215
+ impl Foo < 206 > for ( ) { }
216
+ impl Foo < 207 > for ( ) { }
217
+ impl Foo < 208 > for ( ) { }
218
+ impl Foo < 209 > for ( ) { }
219
+ impl Foo < 210 > for ( ) { }
220
+ impl Foo < 211 > for ( ) { }
221
+ impl Foo < 212 > for ( ) { }
222
+ impl Foo < 213 > for ( ) { }
223
+ impl Foo < 214 > for ( ) { }
224
+ impl Foo < 215 > for ( ) { }
225
+ impl Foo < 216 > for ( ) { }
226
+ impl Foo < 217 > for ( ) { }
227
+ impl Foo < 218 > for ( ) { }
228
+ impl Foo < 219 > for ( ) { }
229
+ impl Foo < 220 > for ( ) { }
230
+ impl Foo < 221 > for ( ) { }
231
+ impl Foo < 222 > for ( ) { }
232
+ impl Foo < 223 > for ( ) { }
233
+ impl Foo < 224 > for ( ) { }
234
+ impl Foo < 225 > for ( ) { }
235
+ impl Foo < 226 > for ( ) { }
236
+ impl Foo < 227 > for ( ) { }
237
+ impl Foo < 228 > for ( ) { }
238
+ impl Foo < 229 > for ( ) { }
239
+ impl Foo < 230 > for ( ) { }
240
+ impl Foo < 231 > for ( ) { }
241
+ impl Foo < 232 > for ( ) { }
242
+ impl Foo < 233 > for ( ) { }
243
+ impl Foo < 234 > for ( ) { }
244
+ impl Foo < 235 > for ( ) { }
245
+ impl Foo < 236 > for ( ) { }
246
+ impl Foo < 237 > for ( ) { }
247
+ impl Foo < 238 > for ( ) { }
248
+ impl Foo < 239 > for ( ) { }
249
+ impl Foo < 240 > for ( ) { }
250
+ impl Foo < 241 > for ( ) { }
251
+ impl Foo < 242 > for ( ) { }
252
+ impl Foo < 243 > for ( ) { }
253
+ impl Foo < 244 > for ( ) { }
254
+ impl Foo < 245 > for ( ) { }
255
+ impl Foo < 246 > for ( ) { }
256
+ impl Foo < 247 > for ( ) { }
257
+ impl Foo < 248 > for ( ) { }
258
+ impl Foo < 249 > for ( ) { }
259
+ impl Foo < 250 > for ( ) { }
260
+ impl Foo < 251 > for ( ) { }
261
+ impl Foo < 252 > for ( ) { }
262
+ impl Foo < 253 > for ( ) { }
263
+ impl Foo < 254 > for ( ) { }
264
+ impl Foo < 255 > for ( ) { }
265
+
266
+ fn foo < const N : u8 > ( ) {
267
+ <( ) as Foo < N > >:: test ( ) //~ ERROR the trait bound `(): Foo<N>`
268
+ }
269
+
270
+ fn main ( ) {
271
+ foo :: < 7 > ( ) ;
272
+ }
You can’t perform that action at this time.
0 commit comments