diff options
| author | Matthias Krüger <matthias.krueger@famsik.de> | 2024-03-21 12:05:08 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-03-21 12:05:08 +0100 |
| commit | 300d3fb2fd1ef83409c7ae6daa378acdfc3bfe2c (patch) | |
| tree | 4a20e13d598d263cf6574625ed72a439d1bcc29d /compiler/rustc_hir_analysis/src/collect | |
| parent | 697b02031121d0bc9a215469f541eeca2f643328 (diff) | |
| parent | 5fae66592494d37aa9b7c3add8c0e6077e0833f7 (diff) | |
| download | rust-300d3fb2fd1ef83409c7ae6daa378acdfc3bfe2c.tar.gz rust-300d3fb2fd1ef83409c7ae6daa378acdfc3bfe2c.zip | |
Rollup merge of #122799 - estebank:issue-122569, r=fee1-dead
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.
Diffstat (limited to 'compiler/rustc_hir_analysis/src/collect')
| -rw-r--r-- | compiler/rustc_hir_analysis/src/collect/type_of.rs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/compiler/rustc_hir_analysis/src/collect/type_of.rs b/compiler/rustc_hir_analysis/src/collect/type_of.rs index fd86f2dd1b1..cec01abae4b 100644 --- a/compiler/rustc_hir_analysis/src/collect/type_of.rs +++ b/compiler/rustc_hir_analysis/src/collect/type_of.rs @@ -47,7 +47,7 @@ fn anon_const_type_of<'tcx>(tcx: TyCtxt<'tcx>, def_id: LocalDefId) -> Ty<'tcx> { let ty = tcx.fold_regions(ty, |r, _| { if r.is_erased() { ty::Region::new_error_misc(tcx) } else { r } }); - let (ty, opt_sugg) = if let Some(ty) = ty.make_suggestable(tcx, false) { + let (ty, opt_sugg) = if let Some(ty) = ty.make_suggestable(tcx, false, None) { (ty, Some((span, Applicability::MachineApplicable))) } else { (ty, None) @@ -587,7 +587,7 @@ fn infer_placeholder_type<'a>( suggestions.clear(); } - if let Some(ty) = ty.make_suggestable(tcx, false) { + if let Some(ty) = ty.make_suggestable(tcx, false, None) { err.span_suggestion( span, format!("provide a type for the {kind}"), @@ -606,7 +606,7 @@ fn infer_placeholder_type<'a>( let mut diag = bad_placeholder(tcx, vec![span], kind); if !ty.references_error() { - if let Some(ty) = ty.make_suggestable(tcx, false) { + if let Some(ty) = ty.make_suggestable(tcx, false, None) { diag.span_suggestion( span, "replace with the correct type", |
