4 #![feature(async_await, await_macro)]
10 impl<'a, T> Foo for &'a mut T where T: Foo { }
12 async fn foo_async<T>(_v: T) -> u8 where T: Foo {
16 async fn bad<T>(v: T) -> u8 where T: Foo {
20 async fn async_main() {
23 let _ = await!(bad(&mut v));
24 let _ = await!(foo_async(&mut v));
25 let _ = await!(bad(v));