diff --git a/src/machine/loader.rs b/src/machine/loader.rs index 88666330..0dfdfad2 100644 --- a/src/machine/loader.rs +++ b/src/machine/loader.rs @@ -304,11 +304,15 @@ impl<'a> LoadState<'a> for LiveLoadAndMachineState<'a> { #[inline(always)] fn evacuate(mut loader: Loader<'a, Self>) -> Result { + if loader.payload.load_state.get_tag() != ArenaHeaderTag::Dropped { loader .payload .load_state .set_tag(ArenaHeaderTag::InactiveLoadState); Ok(loader.payload.load_state) + } else { + unreachable!("we never evacuate after dropping") + } } #[inline(always)]