From 1c828f7811a936a67acaf8f3faeb8aa5003ab12e Mon Sep 17 00:00:00 2001 From: Richard Feldman Date: Sun, 9 Aug 2020 23:40:52 -0400 Subject: [PATCH] Have Procs store pending_specializations by default --- compiler/mono/src/expr.rs | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) 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)]