|  | error[E0308]: mismatched types | 
|  | --> $DIR/higher-ranked-auto-trait-6.rs:16:5 | 
|  | | | 
|  | LL |     Box::new(async { new(|| async { f().await }).await }) | 
|  | |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ one type is more general than the other | 
|  | | | 
|  | = note: expected `async` block `{async block@$DIR/higher-ranked-auto-trait-6.rs:16:29: 16:34}` | 
|  | found `async` block `{async block@$DIR/higher-ranked-auto-trait-6.rs:16:29: 16:34}` | 
|  | = note: no two async blocks, even if identical, have the same type | 
|  | = help: consider pinning your async block and casting it to a trait object | 
|  |  | 
|  | error[E0308]: mismatched types | 
|  | --> $DIR/higher-ranked-auto-trait-6.rs:16:5 | 
|  | | | 
|  | LL |     Box::new(async { new(|| async { f().await }).await }) | 
|  | |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ one type is more general than the other | 
|  | | | 
|  | = note: expected `async` block `{async block@$DIR/higher-ranked-auto-trait-6.rs:16:29: 16:34}` | 
|  | found `async` block `{async block@$DIR/higher-ranked-auto-trait-6.rs:16:29: 16:34}` | 
|  | = note: no two async blocks, even if identical, have the same type | 
|  | = help: consider pinning your async block and casting it to a trait object | 
|  | = note: duplicate diagnostic emitted due to `-Z deduplicate-diagnostics=no` | 
|  |  | 
|  | error[E0308]: mismatched types | 
|  | --> $DIR/higher-ranked-auto-trait-6.rs:16:5 | 
|  | | | 
|  | LL |     Box::new(async { new(|| async { f().await }).await }) | 
|  | |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ one type is more general than the other | 
|  | | | 
|  | = note: expected `async` block `{async block@$DIR/higher-ranked-auto-trait-6.rs:16:29: 16:34}` | 
|  | found `async` block `{async block@$DIR/higher-ranked-auto-trait-6.rs:16:29: 16:34}` | 
|  | = note: no two async blocks, even if identical, have the same type | 
|  | = help: consider pinning your async block and casting it to a trait object | 
|  | = note: duplicate diagnostic emitted due to `-Z deduplicate-diagnostics=no` | 
|  |  | 
|  | error[E0308]: mismatched types | 
|  | --> $DIR/higher-ranked-auto-trait-6.rs:16:5 | 
|  | | | 
|  | LL |     Box::new(async { new(|| async { f().await }).await }) | 
|  | |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ one type is more general than the other | 
|  | | | 
|  | = note: expected `async` block `{async block@$DIR/higher-ranked-auto-trait-6.rs:16:29: 16:34}` | 
|  | found `async` block `{async block@$DIR/higher-ranked-auto-trait-6.rs:16:29: 16:34}` | 
|  | = note: no two async blocks, even if identical, have the same type | 
|  | = help: consider pinning your async block and casting it to a trait object | 
|  | = note: duplicate diagnostic emitted due to `-Z deduplicate-diagnostics=no` | 
|  |  | 
|  | error: aborting due to 4 previous errors | 
|  |  | 
|  | For more information about this error, try `rustc --explain E0308`. |