diff options
| author | Esteban Küber <esteban@kuber.com.ar> | 2024-03-20 22:50:32 +0000 |
|---|---|---|
| committer | Esteban Küber <esteban@kuber.com.ar> | 2024-03-21 00:07:44 +0000 |
| commit | 9022122b8b33e5a1fb9c07fcb3984005ef1a63e0 (patch) | |
| tree | 2875796ba3bd04bf0ffed736f90273381048932b | |
| parent | 76096efb48d79ee5d3434d31285828d15a50b9c7 (diff) | |
| download | rust-9022122b8b33e5a1fb9c07fcb3984005ef1a63e0.tar.gz rust-9022122b8b33e5a1fb9c07fcb3984005ef1a63e0.zip | |
Replace closures with `_` when suggesting fully qualified path for method call
```
error[E0283]: type annotations needed
--> $DIR/into-inference-needs-type.rs:12:10
|
LL | .into()?;
| ^^^^
|
= note: cannot satisfy `_: From<...>`
= note: required for `FilterMap<...>` to implement `Into<_>`
help: try using a fully qualified path to specify the expected types
|
LL ~ let list = <FilterMap<Map<std::slice::Iter<'_, &str>, _>, _> as Into<T>>::into(vec
LL | .iter()
LL | .map(|s| s.strip_prefix("t"))
LL ~ .filter_map(Option::Some))?;
|
```
Fix #122569.
| -rw-r--r-- | clippy_lints/src/box_default.rs | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/clippy_lints/src/box_default.rs b/clippy_lints/src/box_default.rs index 779ae03c464..66206d1a059 100644 --- a/clippy_lints/src/box_default.rs +++ b/clippy_lints/src/box_default.rs @@ -70,7 +70,9 @@ impl LateLintPass<'_> for BoxDefault { "try", if is_plain_default(cx, arg_path) || given_type(cx, expr) { "Box::default()".into() - } else if let Some(arg_ty) = cx.typeck_results().expr_ty(arg).make_suggestable(cx.tcx, true) { + } else if let Some(arg_ty) = + cx.typeck_results().expr_ty(arg).make_suggestable(cx.tcx, true, None) + { // Check if we can copy from the source expression in the replacement. // We need the call to have no argument (see `explicit_default_type`). if inner_call_args.is_empty() |
