Rollup merge of #114138 - compiler-errors:bad-rcvr-span-on-method-sugg, r=estebank
Adjust spans correctly for fn -> method suggestion Fixes #114131
This commit is contained in:
commit
3aa8da1474
@ -531,8 +531,12 @@ impl<'a, 'tcx> FnCtxt<'a, 'tcx> {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
let up_to_rcvr_span = segment.ident.span.until(callee_expr.span);
|
let Some(callee_expr_span) = callee_expr.span.find_ancestor_inside(call_expr.span)
|
||||||
let rest_span = callee_expr.span.shrink_to_hi().to(call_expr.span.shrink_to_hi());
|
else {
|
||||||
|
return;
|
||||||
|
};
|
||||||
|
let up_to_rcvr_span = segment.ident.span.until(callee_expr_span);
|
||||||
|
let rest_span = callee_expr_span.shrink_to_hi().to(call_expr.span.shrink_to_hi());
|
||||||
let rest_snippet = if let Some(first) = rest.first() {
|
let rest_snippet = if let Some(first) = rest.first() {
|
||||||
self.tcx
|
self.tcx
|
||||||
.sess
|
.sess
|
||||||
|
@ -0,0 +1,6 @@
|
|||||||
|
// issue: 114131
|
||||||
|
|
||||||
|
fn main() {
|
||||||
|
let hello = len(vec![]);
|
||||||
|
//~^ ERROR cannot find function `len` in this scope
|
||||||
|
}
|
@ -0,0 +1,15 @@
|
|||||||
|
error[E0425]: cannot find function `len` in this scope
|
||||||
|
--> $DIR/suggest-method-on-call-with-macro-rcvr.rs:4:17
|
||||||
|
|
|
||||||
|
LL | let hello = len(vec![]);
|
||||||
|
| ^^^ not found in this scope
|
||||||
|
|
|
||||||
|
help: use the `.` operator to call the method `len` on `&Vec<_>`
|
||||||
|
|
|
||||||
|
LL - let hello = len(vec![]);
|
||||||
|
LL + let hello = vec![].len();
|
||||||
|
|
|
||||||
|
|
||||||
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
For more information about this error, try `rustc --explain E0425`.
|
Loading…
x
Reference in New Issue
Block a user