diff --git a/compiler/mono/src/expr.rs b/compiler/mono/src/expr.rs index 977af80375..89b24438cc 100644 --- a/compiler/mono/src/expr.rs +++ b/compiler/mono/src/expr.rs @@ -35,7 +35,7 @@ pub struct Proc<'a> { pub ret_layout: Layout<'a>, } -#[derive(Clone, Debug, PartialEq, Default)] +#[derive(Clone, Debug, PartialEq)] pub struct Procs<'a> { pub partial_procs: MutMap>, pub module_thunks: MutSet, @@ -51,6 +51,18 @@ pub enum InProgressProc<'a> { Done(Proc<'a>), } +impl<'a> Default for Procs<'a> { + fn default() -> Self { + Self { + partial_procs: MutMap::default(), + module_thunks: MutSet::default(), + pending_specializations: Some(MutMap::default()), + specialized: MutMap::default(), + runtime_errors: MutMap::default(), + } + } +} + impl<'a> Procs<'a> { // TODO trim down these arguments! #[allow(clippy::too_many_arguments)]