summary refs log tree commit diff
path: root/src/test/ui/issues/issue-14901.rs
blob: c164658331e9336d6a4a47906e1f47a1d2dc3a10 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// build-pass (FIXME(62277): could be check-pass?)
pub trait Reader {}

enum Wrapper<'a> {
    WrapReader(&'a (dyn Reader + 'a))
}

trait Wrap<'a> {
    fn wrap(self) -> Wrapper<'a>;
}

impl<'a, R: Reader> Wrap<'a> for &'a mut R {
    fn wrap(self) -> Wrapper<'a> {
        Wrapper::WrapReader(self as &'a mut dyn Reader)
    }
}

pub fn main() {}