| error[E0267]: `break` inside of an `async` block |
| --> $DIR/async-block-control-flow-static-semantics.rs:33:9 |
| | |
| LL | async { |
| | ___________- |
| LL | | break 0u8; |
| | | ^^^^^^^^^ cannot `break` inside of an `async` block |
| LL | | }; |
| | |_____- enclosing `async` block |
| |
| error[E0267]: `break` inside of an `async` block |
| --> $DIR/async-block-control-flow-static-semantics.rs:40:13 |
| | |
| LL | async { |
| | _______________- |
| LL | | break 0u8; |
| | | ^^^^^^^^^ cannot `break` inside of an `async` block |
| LL | | }; |
| | |_________- enclosing `async` block |
| |
| error[E0308]: mismatched types |
| --> $DIR/async-block-control-flow-static-semantics.rs:13:43 |
| | |
| LL | fn return_targets_async_block_not_fn() -> u8 { |
| | --------------------------------- ^^ expected `u8`, found `()` |
| | | |
| | implicitly returns `()` as its body has no tail or `return` expression |
| |
| error[E0271]: type mismatch resolving `<impl std::future::Future as std::future::Future>::Output == ()` |
| --> $DIR/async-block-control-flow-static-semantics.rs:18:39 |
| | |
| LL | let _: &dyn Future<Output = ()> = █ |
| | ^^^^^^ expected `()`, found `u8` |
| | |
| = note: required for the cast to the object type `dyn std::future::Future<Output = ()>` |
| |
| error[E0308]: mismatched types |
| --> $DIR/async-block-control-flow-static-semantics.rs:22:58 |
| | |
| LL | async fn return_targets_async_block_not_async_fn() -> u8 { |
| | __________________________________________________________^ |
| LL | | |
| LL | | let block = async { |
| LL | | return 0u8; |
| ... | |
| LL | | |
| LL | | } |
| | |_^ expected `u8`, found `()` |
| |
| error[E0271]: type mismatch resolving `<impl std::future::Future as std::future::Future>::Output == ()` |
| --> $DIR/async-block-control-flow-static-semantics.rs:27:39 |
| | |
| LL | let _: &dyn Future<Output = ()> = █ |
| | ^^^^^^ expected `()`, found `u8` |
| | |
| = note: required for the cast to the object type `dyn std::future::Future<Output = ()>` |
| |
| error[E0308]: mismatched types |
| --> $DIR/async-block-control-flow-static-semantics.rs:48:44 |
| | |
| LL | fn rethrow_targets_async_block_not_fn() -> Result<u8, MyErr> { |
| | ---------------------------------- ^^^^^^^^^^^^^^^^^ expected enum `std::result::Result`, found `()` |
| | | |
| | implicitly returns `()` as its body has no tail or `return` expression |
| | |
| = note: expected enum `std::result::Result<u8, MyErr>` |
| found unit type `()` |
| |
| error[E0308]: mismatched types |
| --> $DIR/async-block-control-flow-static-semantics.rs:57:50 |
| | |
| LL | fn rethrow_targets_async_block_not_async_fn() -> Result<u8, MyErr> { |
| | ---------------------------------------- ^^^^^^^^^^^^^^^^^ expected enum `std::result::Result`, found `()` |
| | | |
| | implicitly returns `()` as its body has no tail or `return` expression |
| | |
| = note: expected enum `std::result::Result<u8, MyErr>` |
| found unit type `()` |
| |
| error: aborting due to 8 previous errors |
| |
| Some errors have detailed explanations: E0267, E0271, E0308. |
| For more information about an error, try `rustc --explain E0267`. |