diff options
| author | bors <bors@rust-lang.org> | 2022-05-11 21:39:02 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2022-05-11 21:39:02 +0000 |
| commit | cb9cb4d4e10366ea2ce13813fff26b90ab3fec1d (patch) | |
| tree | 00f1c9cb1913239c0490df4422d1dfa4c38f37df /compiler/rustc_middle/src/query/mod.rs | |
| parent | 6dd68402c5d7da168f87d8551dd9aed1d8a21893 (diff) | |
| parent | dacf1185cb9c6aa9bc9770c5202dce6c35d6604e (diff) | |
| download | rust-cb9cb4d4e10366ea2ce13813fff26b90ab3fec1d.tar.gz rust-cb9cb4d4e10366ea2ce13813fff26b90ab3fec1d.zip | |
Auto merge of #96806 - cjgillot:codegen-fulfill-nice, r=oli-obk
Gracefully fail to resolve associated items instead of `delay_span_bug`. `codegen_fulfill_obligation` is used during instance resolution for trait items. In case of insufficient normalization issues during MIR inlining, it caused ICEs. It's better to gracefully refuse to resolve the associated item, and let the caller decide what to do with this. Split from https://github.com/rust-lang/rust/pull/91743 Closes #69121 Closes #73021 Closes #88599 Closes #93008 Closes #93248 Closes #94680 Closes #96170 r? `@oli-obk`
Diffstat (limited to 'compiler/rustc_middle/src/query/mod.rs')
| -rw-r--r-- | compiler/rustc_middle/src/query/mod.rs | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/compiler/rustc_middle/src/query/mod.rs b/compiler/rustc_middle/src/query/mod.rs index 629a550b775..0ef694a3c85 100644 --- a/compiler/rustc_middle/src/query/mod.rs +++ b/compiler/rustc_middle/src/query/mod.rs @@ -1145,7 +1145,7 @@ rustc_queries! { query codegen_fulfill_obligation( key: (ty::ParamEnv<'tcx>, ty::PolyTraitRef<'tcx>) - ) -> Result<&'tcx ImplSource<'tcx, ()>, ErrorGuaranteed> { + ) -> Result<&'tcx ImplSource<'tcx, ()>, traits::CodegenObligationError> { cache_on_disk_if { true } desc { |tcx| "checking if `{}` fulfills its obligations", |
