Closed
Description
This doesn't compile
fn main() -> std::io::Result<()> {
run_cmd!{ls}?;
Ok(())
}
compiles says
error: expected expression, found `?`
--> src/main.rs:4:17
|
4 | run_cmd!{ls}?;
| ^ expected expression
error[E0308]: mismatched types
--> src/main.rs:4:5
|
4 | run_cmd!{ls}?;
| ^^^^^^^^^^^^ expected `()`, found enum `Result`
|
= note: expected unit type `()`
found enum `Result<(), std::io::Error>`
while this compiles fine
fn main() -> std::io::Result<()> {
run_cmd!(ls)?;
Ok(())
}
This with curly braces compiles too
fn main() -> std::io::Result<()> {
let _ = run_cmd!{ls}?;
Ok(())
}
Metadata
Metadata
Assignees
Labels
No labels