f3e9b1a703
Now the main span focuses on the erroneous not-a-function callee, while showing the entire call expression is relegated to a secondary span. In the case where the erroneous callee is itself a call, we point out the definition, and, if the call expression spans multiple lines, tentatively suggest a semicolon (because we suspect that the "outer" call is actually supposed to be a tuple). The new `bug!` assertion is, in fact, safe (`confirm_builtin_call` is only called by `check_call`, which is only called with a first arg of kind `ExprKind::Call` in `check_expr_kind`). Resolves #51055.
9 lines
149 B
Rust
9 lines
149 B
Rust
fn vindictive() -> bool { true }
|
|
|
|
fn perfidy() -> (i32, i32) {
|
|
vindictive() //~ ERROR expected function, found `bool`
|
|
(1, 2)
|
|
}
|
|
|
|
fn main() {}
|