|
1 | 1 | //! Logic for lowering higher-kinded outlives constraints |
2 | 2 | //! (with placeholders and universes) and turn them into regular |
3 | 3 | //! outlives constraints. |
4 | | -use core::cmp; |
5 | | - |
6 | 4 | use rustc_data_structures::frozen::Frozen; |
7 | 5 | use rustc_data_structures::fx::FxIndexMap; |
8 | 6 | use rustc_data_structures::graph::scc; |
@@ -96,9 +94,9 @@ impl PlaceholderReachability { |
96 | 94 | }, |
97 | 95 | Placeholders { min_placeholder, max_placeholder, max_universe }, |
98 | 96 | ) => Placeholders { |
99 | | - min_placeholder: cmp::min(min_pl, min_placeholder), |
100 | | - max_placeholder: cmp::max(max_pl, max_placeholder), |
101 | | - max_universe: cmp::max(max_u, max_universe), |
| 97 | + min_placeholder: min_pl.min(min_placeholder), |
| 98 | + max_placeholder: max_pl.max(max_placeholder), |
| 99 | + max_universe: max_u.max(max_universe), |
102 | 100 | }, |
103 | 101 | } |
104 | 102 | } |
@@ -190,17 +188,15 @@ impl scc::Annotation for RegionTracker { |
190 | 188 | trace!("{:?} << {:?}", self.representative, other.representative); |
191 | 189 |
|
192 | 190 | Self { |
193 | | - representative: self.representative.merge_scc(other.representative), |
194 | | - ..self.merge_reached(other) |
| 191 | + representative: self.representative.min(other.representative), |
| 192 | + max_nameable_universe: self.max_nameable_universe.min(other.max_nameable_universe), |
| 193 | + reachable_placeholders: self.reachable_placeholders.merge(other.reachable_placeholders), |
195 | 194 | } |
196 | 195 | } |
197 | 196 |
|
198 | 197 | fn merge_reached(self, other: Self) -> Self { |
199 | 198 | Self { |
200 | | - max_nameable_universe: cmp::min( |
201 | | - self.max_nameable_universe, |
202 | | - other.max_nameable_universe, |
203 | | - ), |
| 199 | + max_nameable_universe: self.max_nameable_universe.min(other.max_nameable_universe), |
204 | 200 | reachable_placeholders: self.reachable_placeholders.merge(other.reachable_placeholders), |
205 | 201 | representative: self.representative, |
206 | 202 | } |
|
0 commit comments