error: attribute can only be applied to `async` functions --> tests/ui-fail-nightly/async-entry.rs:4:5 | 4 | #[rocket::main] | ^^^^^^^^^^^^^^^ | note: this function must be `async` --> tests/ui-fail-nightly/async-entry.rs:5:5 | 5 | fn foo() { } | ^^^^^^^^ = note: this error originates in the attribute macro `rocket::main` (in Nightly builds, run with -Z macro-backtrace for more info) warning: attribute is typically applied to `main` function --> tests/ui-fail-nightly/async-entry.rs:10:5 | 10 | #[rocket::main] | ^^^^^^^^^^^^^^^ | note: this function is not `main` --> tests/ui-fail-nightly/async-entry.rs:11:14 | 11 | async fn foo() { } | ^^^ = note: this warning originates in the attribute macro `rocket::main` (in Nightly builds, run with -Z macro-backtrace for more info) error: attribute can only be applied to `async` functions --> tests/ui-fail-nightly/async-entry.rs:16:5 | 16 | #[rocket::main] | ^^^^^^^^^^^^^^^ | note: this function must be `async` --> tests/ui-fail-nightly/async-entry.rs:17:5 | 17 | fn main() { | ^^^^^^^^^ = note: this error originates in the attribute macro `rocket::main` (in Nightly builds, run with -Z macro-backtrace for more info) error: attribute cannot be applied to `main` function --> tests/ui-fail-nightly/async-entry.rs:49:5 | 49 | #[rocket::launch] | ^^^^^^^^^^^^^^^^^ | = note: this attribute generates a `main` function note: this function cannot be `main` --> tests/ui-fail-nightly/async-entry.rs:50:8 | 50 | fn main() -> rocekt::Rocket { | ^^^^ = note: this error originates in the attribute macro `rocket::launch` (in Nightly builds, run with -Z macro-backtrace for more info) error: attribute can only be applied to functions that return a value --> tests/ui-fail-nightly/async-entry.rs:56:5 | 56 | #[rocket::launch] | ^^^^^^^^^^^^^^^^^ | note: this function must return a value --> tests/ui-fail-nightly/async-entry.rs:57:5 | 57 | async fn rocket() { | ^^^^^^^^^^^^^^^^^ = note: this error originates in the attribute macro `rocket::launch` (in Nightly builds, run with -Z macro-backtrace for more info) error: attribute can only be applied to functions that return a value --> tests/ui-fail-nightly/async-entry.rs:64:5 | 64 | #[rocket::launch] | ^^^^^^^^^^^^^^^^^ | note: this function must return a value --> tests/ui-fail-nightly/async-entry.rs:65:5 | 65 | fn rocket() { | ^^^^^^^^^^^ = note: this error originates in the attribute macro `rocket::launch` (in Nightly builds, run with -Z macro-backtrace for more info) error: attribute cannot be applied to `main` function --> tests/ui-fail-nightly/async-entry.rs:79:5 | 79 | #[rocket::launch] | ^^^^^^^^^^^^^^^^^ | = note: this attribute generates a `main` function note: this function cannot be `main` --> tests/ui-fail-nightly/async-entry.rs:80:8 | 80 | fn main() -> &'static str { | ^^^^ = note: this error originates in the attribute macro `rocket::launch` (in Nightly builds, run with -Z macro-backtrace for more info) error: attribute cannot be applied to `main` function --> tests/ui-fail-nightly/async-entry.rs:87:5 | 87 | #[rocket::launch] | ^^^^^^^^^^^^^^^^^ | = note: this attribute generates a `main` function note: this function cannot be `main` --> tests/ui-fail-nightly/async-entry.rs:88:14 | 88 | async fn main() -> _ { | ^^^^ = note: this error originates in the attribute macro `rocket::launch` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0728]: `await` is only allowed inside `async` functions and blocks --> tests/ui-fail-nightly/async-entry.rs:73:41 | 72 | fn rocket() -> _ { | ------ this is not `async` 73 | let _ = rocket::build().launch().await; | ^^^^^^ only allowed inside `async` functions and blocks error[E0308]: mismatched types --> tests/ui-fail-nightly/async-entry.rs:35:9 | 33 | async fn rocket() -> String { | ------ expected `std::string::String` because of return type 34 | let _ = rocket::build().launch().await; 35 | rocket::build() | ^^^^^^^^^^^^^^^ expected `String`, found `Rocket` | = note: expected struct `std::string::String` found struct `Rocket` error[E0308]: mismatched types --> tests/ui-fail-nightly/async-entry.rs:44:9 | 42 | async fn rocket() -> _ { | - expected `Rocket` because of return type 43 | let _ = rocket::build().launch().await; 44 | "hi".to_string() | ^^^^^^^^^^^^^^^^ expected `Rocket`, found `String` | = note: expected struct `Rocket` found struct `std::string::String` error[E0308]: mismatched types --> tests/ui-fail-nightly/async-entry.rs:24:21 | 24 | async fn main() { | ^ expected `()` because of default return type | _____________________| | | 25 | | rocket::build() 26 | | } | | ^- help: consider using a semicolon here: `;` | |_____| | expected `()`, found `Rocket` | = note: expected unit type `()` found struct `Rocket` error[E0308]: mismatched types --> tests/ui-fail-nightly/async-entry.rs:35:9 | 35 | rocket::build() | ^^^^^^^^^^^^^^^ expected `String`, found `Rocket` | = note: expected struct `std::string::String` found struct `Rocket` error[E0308]: mismatched types --> tests/ui-fail-nightly/async-entry.rs:44:9 | 44 | "hi".to_string() | ^^^^^^^^^^^^^^^^ expected `Rocket`, found `String` | = note: expected struct `Rocket` found struct `std::string::String` error[E0277]: `main` has invalid return type `Rocket` --> tests/ui-fail-nightly/async-entry.rs:94:20 | 94 | async fn main() -> rocket::Rocket { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `main` can only return types that implement `Termination` | = help: consider using `()`, or a `Result`