diff options
| author | bors <bors@rust-lang.org> | 2024-01-06 06:00:27 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2024-01-06 06:00:27 +0000 |
| commit | aa7e9f21e9a058a4822b6cdc19ee88c80cdb3750 (patch) | |
| tree | 66a18845a73790a059b193a87292e6b4c211133d /compiler/rustc_resolve/src/late/diagnostics.rs | |
| parent | d62f05b842d94d3bcad4d41d4b81df3949bad7c6 (diff) | |
| parent | 71610e2eb66dbcda5342700c8bfad12f89756054 (diff) | |
| download | rust-aa7e9f21e9a058a4822b6cdc19ee88c80cdb3750.tar.gz rust-aa7e9f21e9a058a4822b6cdc19ee88c80cdb3750.zip | |
Auto merge of #119648 - compiler-errors:rollup-42inxd8, r=compiler-errors
Rollup of 9 pull requests Successful merges: - #119208 (coverage: Hoist some complex code out of the main span refinement loop) - #119216 (Use diagnostic namespace in stdlib) - #119414 (bootstrap: Move -Clto= setting from Rustc::run to rustc_cargo) - #119420 (Handle ForeignItem as TAIT scope.) - #119468 (rustdoc-search: tighter encoding for f index) - #119628 (remove duplicate test) - #119638 (fix cyle error when suggesting to use associated function instead of constructor) - #119640 (library: Fix warnings in rtstartup) - #119642 (library: Fix a symlink test failing on Windows) r? `@ghost` `@rustbot` modify labels: rollup
Diffstat (limited to 'compiler/rustc_resolve/src/late/diagnostics.rs')
| -rw-r--r-- | compiler/rustc_resolve/src/late/diagnostics.rs | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/compiler/rustc_resolve/src/late/diagnostics.rs b/compiler/rustc_resolve/src/late/diagnostics.rs index 0fe606cacf5..821aafe2fed 100644 --- a/compiler/rustc_resolve/src/late/diagnostics.rs +++ b/compiler/rustc_resolve/src/late/diagnostics.rs @@ -1755,11 +1755,8 @@ impl<'a: 'ast, 'ast, 'tcx> LateResolutionVisitor<'a, '_, 'ast, 'tcx> { .filter_map(|item| { // Only assoc fns that return `Self` let fn_sig = self.r.tcx.fn_sig(item.def_id).skip_binder(); - let ret_ty = fn_sig.output(); - let ret_ty = self - .r - .tcx - .normalize_erasing_late_bound_regions(ty::ParamEnv::reveal_all(), ret_ty); + // Don't normalize the return type, because that can cause cycle errors. + let ret_ty = fn_sig.output().skip_binder(); let ty::Adt(def, _args) = ret_ty.kind() else { return None; }; |
