]>
Commit | Line | Data |
---|---|---|
f9f354fc | 1 | // check-pass |
1b1a35ee XL |
2 | // revisions: full min |
3 | #![cfg_attr(full, feature(const_generics))] | |
4 | #![cfg_attr(full, allow(incomplete_features))] | |
5 | #![cfg_attr(min, feature(min_const_generics))] | |
f9f354fc XL |
6 | |
7 | trait Baz { | |
8 | type Quaks; | |
9 | } | |
10 | impl Baz for u8 { | |
11 | type Quaks = [u16; 3]; | |
12 | } | |
13 | ||
14 | trait Bar {} | |
15 | impl Bar for [u16; 3] {} | |
16 | impl Bar for [[u16; 3]; 2] {} | |
17 | ||
18 | trait Foo | |
19 | where | |
20 | [<u8 as Baz>::Quaks; 2]: Bar, | |
21 | <u8 as Baz>::Quaks: Bar, | |
22 | { | |
23 | } | |
24 | ||
25 | struct FooImpl; | |
26 | ||
27 | impl Foo for FooImpl {} | |
28 | ||
29 | fn f(_: impl Foo) {} | |
30 | ||
31 | fn main() { | |
32 | f(FooImpl) | |
33 | } |