about summary refs log tree commit diff
path: root/compiler/rustc_mir_transform/src
diff options
context:
space:
mode:
authorb-naber <bn263@gmx.de>2022-09-14 15:35:24 +0200
committerb-naber <bn263@gmx.de>2022-09-14 17:30:25 +0200
commit6af8fb793697734bf3e19bcb1b5d152d617bb303 (patch)
treece28e3c0abc38368fba67c76de230c3c54a7792c /compiler/rustc_mir_transform/src
parentba00189d8e85b735d90144f9523b8a1dad2ccdce (diff)
downloadrust-6af8fb793697734bf3e19bcb1b5d152d617bb303.tar.gz
rust-6af8fb793697734bf3e19bcb1b5d152d617bb303.zip
address review again
Diffstat (limited to 'compiler/rustc_mir_transform/src')
-rw-r--r--compiler/rustc_mir_transform/src/inline.rs10
-rw-r--r--compiler/rustc_mir_transform/src/required_consts.rs9
2 files changed, 6 insertions, 13 deletions
diff --git a/compiler/rustc_mir_transform/src/inline.rs b/compiler/rustc_mir_transform/src/inline.rs
index 2ad9f582fbe..d00a384cb44 100644
--- a/compiler/rustc_mir_transform/src/inline.rs
+++ b/compiler/rustc_mir_transform/src/inline.rs
@@ -604,13 +604,11 @@ impl<'tcx> Inliner<'tcx> {
                 // `required_consts`, here we may not only have `ConstKind::Unevaluated`
                 // because we are calling `subst_and_normalize_erasing_regions`.
                 caller_body.required_consts.extend(
-                    callee_body.required_consts.iter().copied().filter(|&ct| {
-                        match ct.literal.const_for_ty() {
-                            Some(_) => {
-                                bug!("should never encounter ty::Unevaluated in required_consts")
-                            }
-                            None => true,
+                    callee_body.required_consts.iter().copied().filter(|&ct| match ct.literal {
+                        ConstantKind::Ty(_) => {
+                            bug!("should never encounter ty::Unevaluated in `required_consts`")
                         }
+                        ConstantKind::Val(..) | ConstantKind::Unevaluated(..) => true,
                     }),
                 );
             }
diff --git a/compiler/rustc_mir_transform/src/required_consts.rs b/compiler/rustc_mir_transform/src/required_consts.rs
index 022a7a95fa1..cc75947d9dd 100644
--- a/compiler/rustc_mir_transform/src/required_consts.rs
+++ b/compiler/rustc_mir_transform/src/required_consts.rs
@@ -17,13 +17,8 @@ impl<'tcx> Visitor<'tcx> for RequiredConstsVisitor<'_, 'tcx> {
         let literal = constant.literal;
         match literal {
             ConstantKind::Ty(c) => match c.kind() {
-                ConstKind::Unevaluated(uv) => {
-                    let literal = ConstantKind::Unevaluated(uv.expand(), c.ty());
-                    let new_constant =
-                        Constant { span: constant.span, user_ty: constant.user_ty, literal };
-                    self.required_consts.push(new_constant);
-                }
-                _ => {}
+                ConstKind::Param(_) => {}
+                _ => bug!("only ConstKind::Param should be encountered here, got {:#?}", c),
             },
             ConstantKind::Unevaluated(..) => self.required_consts.push(*constant),
             ConstantKind::Val(..) => {}