diff options
| author | bors <bors@rust-lang.org> | 2024-10-05 06:19:35 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2024-10-05 06:19:35 +0000 |
| commit | 5a4ee43c387110736440cecc375cb5aedc441dbc (patch) | |
| tree | 71f8bfc5b77e7d01efafb70c7d6e298d6c42b9f4 /compiler/rustc_lint/src/async_fn_in_trait.rs | |
| parent | d30c3924a4ef6ab4f331134562c145d5cec0179a (diff) | |
| parent | ef17eb79bbc5c7f5b303e203c1095e2eb216f84b (diff) | |
| download | rust-5a4ee43c387110736440cecc375cb5aedc441dbc.tar.gz rust-5a4ee43c387110736440cecc375cb5aedc441dbc.zip | |
Auto merge of #129244 - cjgillot:opaque-hir, r=compiler-errors
Make opaque types regular HIR nodes Having opaque types as HIR owner introduces all sorts of complications. This PR proposes to make them regular HIR nodes instead. I haven't gone through all the test changes yet, so there may be a few surprises. Many thanks to `@camelid` for the first draft. Fixes https://github.com/rust-lang/rust/issues/129023 Fixes #129099 Fixes #125843 Fixes #119716 Fixes #121422
Diffstat (limited to 'compiler/rustc_lint/src/async_fn_in_trait.rs')
| -rw-r--r-- | compiler/rustc_lint/src/async_fn_in_trait.rs | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/compiler/rustc_lint/src/async_fn_in_trait.rs b/compiler/rustc_lint/src/async_fn_in_trait.rs index d9040207300..63a8a949e96 100644 --- a/compiler/rustc_lint/src/async_fn_in_trait.rs +++ b/compiler/rustc_lint/src/async_fn_in_trait.rs @@ -104,8 +104,9 @@ impl<'tcx> LateLintPass<'tcx> for AsyncFnInTrait { return; } - let hir::FnRetTy::Return(hir::Ty { kind: hir::TyKind::OpaqueDef(def, ..), .. }) = - sig.decl.output + let hir::FnRetTy::Return(hir::Ty { + kind: hir::TyKind::OpaqueDef(opaq_def, ..), .. + }) = sig.decl.output else { // This should never happen, but let's not ICE. return; @@ -114,7 +115,7 @@ impl<'tcx> LateLintPass<'tcx> for AsyncFnInTrait { cx.tcx, sig, body, - def.owner_id.def_id, + opaq_def.def_id, " + Send", ); cx.tcx.emit_node_span_lint( |
