diff options
| author | bors <bors@rust-lang.org> | 2024-01-30 19:22:04 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2024-01-30 19:22:04 +0000 |
| commit | cb4d9a1902b3ea17e93872dafb76d24aa6295c47 (patch) | |
| tree | c4c69212254f84cc1f8245d06685904b0a1ee13e /compiler/rustc_trait_selection/src/traits/engine.rs | |
| parent | f3d71c9249072413f014b378bb5ea79c8a7dc9a7 (diff) | |
| parent | 720d7a7a03b9997644fe28a12a80a910b2652760 (diff) | |
| download | rust-cb4d9a1902b3ea17e93872dafb76d24aa6295c47.tar.gz rust-cb4d9a1902b3ea17e93872dafb76d24aa6295c47.zip | |
Auto merge of #119101 - compiler-errors:outlives, r=lcnr
Normalize region obligation in lexical region resolution with next-gen solver This normalizes region obligations when we `resolve_regions`, since they may be unnormalized with deferred projection equality. It's pretty hard to add tests that exercise this without also triggering MIR borrowck errors (because we don't normalize there yet). I've added one test with two revisions that should test that we both 1. normalize region obligations in the param env, and 2. normalize registered region obligations during lexical region resolution.
Diffstat (limited to 'compiler/rustc_trait_selection/src/traits/engine.rs')
| -rw-r--r-- | compiler/rustc_trait_selection/src/traits/engine.rs | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/compiler/rustc_trait_selection/src/traits/engine.rs b/compiler/rustc_trait_selection/src/traits/engine.rs index 013a50f9fa1..caf950037fd 100644 --- a/compiler/rustc_trait_selection/src/traits/engine.rs +++ b/compiler/rustc_trait_selection/src/traits/engine.rs @@ -3,6 +3,7 @@ use std::fmt::Debug; use super::FulfillmentContext; use super::TraitEngine; +use crate::regions::InferCtxtRegionExt; use crate::solve::FulfillmentCtxt as NextFulfillmentCtxt; use crate::traits::error_reporting::TypeErrCtxtExt; use crate::traits::NormalizeExt; |
