mirror of
https://github.com/rust-lang/rust
synced 2024-11-05 20:45:15 +00:00
21 lines
377 B
Rust
21 lines
377 B
Rust
// check-pass
|
|
#![allow(dead_code)]
|
|
// pretty-expanded FIXME #23616
|
|
|
|
trait Trait {
|
|
fn method(self) -> isize;
|
|
}
|
|
|
|
struct Wrapper<T> {
|
|
field: T
|
|
}
|
|
|
|
impl<'a, T> Trait for &'a Wrapper<T> where &'a T: Trait {
|
|
fn method(self) -> isize {
|
|
let r: &'a T = &self.field;
|
|
Trait::method(r); // these should both work
|
|
r.method()
|
|
}
|
|
}
|
|
|
|
fn main() {}
|