Skip to content

Commit 2b84e17

Browse files
author
David Renshaw
committed
update for new boxier mir
1 parent ecf452c commit 2b84e17

File tree

1 file changed

+10
-9
lines changed

1 file changed

+10
-9
lines changed

src/eval_context.rs

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -137,13 +137,13 @@ impl<'a, 'tcx> EvalContext<'a, 'tcx> {
137137
source_info,
138138
kind: mir::StatementKind::Assign(
139139
mir::Lvalue::Local(mir::Local::new(2)),
140-
mir::Rvalue::Use(mir::Operand::Constant(mir::Constant {
140+
mir::Rvalue::Use(mir::Operand::Constant(Box::new(mir::Constant {
141141
span: DUMMY_SP,
142142
ty: tcx.types.usize,
143143
literal: mir::Literal::Value {
144144
value: ConstVal::Integral(ConstInt::Usize(ConstUsize::new(0, tcx.sess.target.uint_type).unwrap())),
145145
},
146-
}))
146+
})))
147147
)
148148
},
149149
mir::Statement {
@@ -225,13 +225,13 @@ impl<'a, 'tcx> EvalContext<'a, 'tcx> {
225225
mir::Rvalue::BinaryOp(
226226
mir::BinOp::Add,
227227
mir::Operand::Consume(mir::Lvalue::Local(mir::Local::new(2))),
228-
mir::Operand::Constant(mir::Constant {
228+
mir::Operand::Constant(Box::new(mir::Constant {
229229
span: DUMMY_SP,
230230
ty: tcx.types.usize,
231231
literal: mir::Literal::Value {
232232
value: ConstVal::Integral(ConstInt::Usize(ConstUsize::new(1, tcx.sess.target.uint_type).unwrap())),
233233
},
234-
}),
234+
})),
235235
)
236236
)
237237
},
@@ -636,7 +636,7 @@ impl<'a, 'tcx> EvalContext<'a, 'tcx> {
636636
}
637637

638638
General { discr, ref variants, .. } => {
639-
if let mir::AggregateKind::Adt(adt_def, variant, _, _) = *kind {
639+
if let mir::AggregateKind::Adt(adt_def, variant, _, _) = **kind {
640640
let discr_val = adt_def.discriminants(self.tcx)
641641
.nth(variant)
642642
.expect("broken mir: Adt variant id invalid")
@@ -662,7 +662,7 @@ impl<'a, 'tcx> EvalContext<'a, 'tcx> {
662662
}
663663

664664
RawNullablePointer { nndiscr, .. } => {
665-
if let mir::AggregateKind::Adt(_, variant, _, _) = *kind {
665+
if let mir::AggregateKind::Adt(_, variant, _, _) = **kind {
666666
if nndiscr == variant as u64 {
667667
assert_eq!(operands.len(), 1);
668668
let operand = &operands[0];
@@ -683,7 +683,7 @@ impl<'a, 'tcx> EvalContext<'a, 'tcx> {
683683
}
684684

685685
StructWrappedNullablePointer { nndiscr, ref nonnull, ref discrfield, .. } => {
686-
if let mir::AggregateKind::Adt(_, variant, _, _) = *kind {
686+
if let mir::AggregateKind::Adt(_, variant, _, _) = **kind {
687687
if nonnull.packed {
688688
let ptr = self.force_allocation(dest)?.to_ptr_and_extra().0;
689689
self.memory.mark_packed(ptr, nonnull.stride().bytes());
@@ -712,7 +712,7 @@ impl<'a, 'tcx> EvalContext<'a, 'tcx> {
712712

713713
CEnum { .. } => {
714714
assert_eq!(operands.len(), 0);
715-
if let mir::AggregateKind::Adt(adt_def, variant, _, _) = *kind {
715+
if let mir::AggregateKind::Adt(adt_def, variant, _, _) = **kind {
716716
let n = adt_def.discriminants(self.tcx)
717717
.nth(variant)
718718
.expect("broken mir: Adt variant index invalid")
@@ -997,8 +997,9 @@ impl<'a, 'tcx> EvalContext<'a, 'tcx> {
997997
match *op {
998998
Consume(ref lvalue) => self.eval_and_read_lvalue(lvalue),
999999

1000-
Constant(mir::Constant { ref literal, .. }) => {
1000+
Constant(ref constant) => {
10011001
use rustc::mir::Literal;
1002+
let mir::Constant { ref literal, .. } = **constant;
10021003
let value = match *literal {
10031004
Literal::Value { ref value } => self.const_to_value(value)?,
10041005

0 commit comments

Comments
 (0)