Closed
Description
trait Y { fn f(&self) { } }
struct X;
impl Y for X { }
struct Z<Trait: ?Sized> {
_data: std::marker::PhantomData<Trait>,
}
fn f<Y: ?Sized>(y: &Y) -> Z<Y> {
Z { _data: std::marker::PhantomData }
}
fn main() {
{
let arc = std::sync::Arc::new(X);
f(&*arc as &Y)
};
}
test4.rs:18:13: 18:16 error: `arc` does not live long enough
test4.rs:18 f(&*arc as &Y)
^~~
Metadata
Metadata
Assignees
Labels
No labels