diff options
| author | b-naber <bn263@gmx.de> | 2022-09-19 19:46:53 +0200 |
|---|---|---|
| committer | b-naber <bn263@gmx.de> | 2022-09-22 12:35:28 +0200 |
| commit | 9f3784df89e9f19d4b99660434e0b0e226ff2c22 (patch) | |
| tree | 19c895f18c8bbe82c3bdfc4240bebc2e02cb647a /compiler/rustc_monomorphize/src | |
| parent | 3e50038a2d4029bd1484af75dbf144c4b0da6c74 (diff) | |
| download | rust-9f3784df89e9f19d4b99660434e0b0e226ff2c22.tar.gz rust-9f3784df89e9f19d4b99660434e0b0e226ff2c22.zip | |
introduce mir::Unevaluated
Diffstat (limited to 'compiler/rustc_monomorphize/src')
| -rw-r--r-- | compiler/rustc_monomorphize/src/polymorphize.rs | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/compiler/rustc_monomorphize/src/polymorphize.rs b/compiler/rustc_monomorphize/src/polymorphize.rs index 71cab023215..a054bc67462 100644 --- a/compiler/rustc_monomorphize/src/polymorphize.rs +++ b/compiler/rustc_monomorphize/src/polymorphize.rs @@ -8,6 +8,7 @@ use rustc_hir::{def::DefKind, def_id::DefId, ConstContext}; use rustc_index::bit_set::FiniteBitSet; use rustc_middle::mir::{ + self, visit::{TyContext, Visitor}, Constant, ConstantKind, Local, LocalDecl, Location, }; @@ -299,11 +300,9 @@ impl<'a, 'tcx> TypeVisitor<'tcx> for MarkUsedGenericParams<'a, 'tcx> { self.unused_parameters.clear(param.index); ControlFlow::CONTINUE } - ty::ConstKind::Unevaluated(ty::Unevaluated { def, substs, promoted }) + ty::ConstKind::Unevaluated(ty::Unevaluated { def, substs }) if matches!(self.tcx.def_kind(def.did), DefKind::AnonConst) => { - assert_eq!(promoted, ()); - self.visit_child_body(def.did, substs); ControlFlow::CONTINUE } @@ -318,7 +317,7 @@ impl<'a, 'tcx> TypeVisitor<'tcx> for MarkUsedGenericParams<'a, 'tcx> { match constant { ConstantKind::Ty(ct) => ct.visit_with(self), - ConstantKind::Unevaluated(ty::Unevaluated { def, substs: _, promoted: Some(p) }, _) + ConstantKind::Unevaluated(mir::Unevaluated { def, substs: _, promoted: Some(p) }, _) // Avoid considering `T` unused when constants are of the form: // `<Self as Foo<T>>::foo::promoted[p]` if self.def_id == def.did && !self.tcx.generics_of(def.did).has_self => |
