]>
Commit | Line | Data |
---|---|---|
b7449926 | 1 | // run-pass |
0bf4aa26 | 2 | #![allow(dead_code)] |
c34b1796 AL |
3 | // Test transitive analysis for associated types. Collected types |
4 | // should be normalized and new obligations generated. | |
223e47cc | 5 | |
c34b1796 | 6 | // pretty-expanded FIXME #23616 |
1a4d82fc | 7 | |
c34b1796 AL |
8 | trait Foo { |
9 | type A; | |
10 | fn foo(&self) {} | |
11 | } | |
223e47cc | 12 | |
c34b1796 AL |
13 | impl Foo for usize { |
14 | type A = usize; | |
15 | } | |
16 | ||
17 | struct Bar<T: Foo> { inner: T::A } | |
18 | ||
19 | fn is_send<T: Send>() {} | |
20 | ||
21 | fn main() { | |
22 | is_send::<Bar<usize>>(); | |
23 | } |