@@ -173,6 +173,7 @@ impl<'mir, 'tcx> Machine<'mir, 'tcx> for Evaluator<'tcx> {
173
173
args : & [ OpTy < ' tcx , Tag > ] ,
174
174
dest : Option < PlaceTy < ' tcx , Tag > > ,
175
175
ret : Option < mir:: BasicBlock > ,
176
+ _unwind : Option < mir:: BasicBlock > ,
176
177
) -> InterpResult < ' tcx , Option < & ' mir mir:: Body < ' tcx > > > {
177
178
ecx. find_fn ( instance, args, dest, ret)
178
179
}
@@ -194,8 +195,14 @@ impl<'mir, 'tcx> Machine<'mir, 'tcx> for Evaluator<'tcx> {
194
195
span : Span ,
195
196
instance : ty:: Instance < ' tcx > ,
196
197
args : & [ OpTy < ' tcx , Tag > ] ,
197
- dest : PlaceTy < ' tcx , Tag > ,
198
+ dest : Option < PlaceTy < ' tcx , Tag > > ,
199
+ _ret : Option < mir:: BasicBlock > ,
200
+ _unwind : Option < mir:: BasicBlock >
198
201
) -> InterpResult < ' tcx > {
202
+ let dest = match dest {
203
+ Some ( dest) => dest,
204
+ None => throw_ub ! ( Unreachable )
205
+ } ;
199
206
ecx. call_intrinsic ( span, instance, args, dest)
200
207
}
201
208
@@ -353,13 +360,15 @@ impl<'mir, 'tcx> Machine<'mir, 'tcx> for Evaluator<'tcx> {
353
360
fn stack_pop (
354
361
ecx : & mut InterpCx < ' mir , ' tcx , Self > ,
355
362
extra : stacked_borrows:: CallId ,
356
- ) -> InterpResult < ' tcx > {
357
- Ok ( ecx
363
+ _unwinding : bool
364
+ ) -> InterpResult < ' tcx , StackPopInfo > {
365
+ ecx
358
366
. memory
359
367
. extra
360
368
. stacked_borrows
361
369
. borrow_mut ( )
362
- . end_call ( extra) )
370
+ . end_call ( extra) ;
371
+ Ok ( StackPopInfo :: Normal )
363
372
}
364
373
365
374
#[ inline( always) ]
0 commit comments