//@ build-pass (FIXME(62277): could be check-pass?) | |
//@ edition:2018 | |
trait MyClosure { | |
type Args; | |
} | |
impl<R> MyClosure for dyn FnMut() -> R | |
where R: 'static { | |
type Args = (); | |
} | |
struct MyStream<C: ?Sized + MyClosure> { | |
x: C::Args, | |
} | |
async fn get_future<C: ?Sized + MyClosure>(_stream: MyStream<C>) {} | |
async fn f() { | |
let messages: MyStream<dyn FnMut()> = unimplemented!(); | |
get_future(messages).await; | |
} | |
fn main() {} |