//@ run-pass | |
trait Device { | |
type Resources; | |
} | |
#[allow(dead_code)] | |
struct Foo<D, R>(D, R); | |
impl<D: Device> Foo<D, D::Resources> { | |
fn present(&self) {} | |
} | |
struct Res; | |
struct Dev; | |
impl Device for Dev { type Resources = Res; } | |
fn main() { | |
let foo = Foo(Dev, Res); | |
foo.present(); | |
} |