From 7d642ac4d912c4111769f124a2da97fa83828548 Mon Sep 17 00:00:00 2001 From: Tristan Gingold Date: Sun, 2 Oct 2022 11:47:02 +0200 Subject: synth: improve error recovery --- src/synth/synth-vhdl_stmts.adb | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/synth/synth-vhdl_stmts.adb b/src/synth/synth-vhdl_stmts.adb index 246b771bc..40a694940 100644 --- a/src/synth/synth-vhdl_stmts.adb +++ b/src/synth/synth-vhdl_stmts.adb @@ -2327,6 +2327,7 @@ package body Synth.Vhdl_Stmts is end if; end if; if Val = No_Valtyp then + Release_Expr_Pool (Marker); Set_Error (Subprg_Inst); exit; end if; @@ -3509,6 +3510,7 @@ package body Synth.Vhdl_Stmts is Rep := Synth_Expression_With_Basetype (Syn_Inst, Rep_Expr); if Rep = No_Valtyp then Set_Error (Syn_Inst); + Release_Expr_Pool (Marker); return; end if; Strip_Const (Rep); @@ -3517,6 +3519,7 @@ package body Synth.Vhdl_Stmts is Sev := Synth_Expression (Syn_Inst, Sev_Expr); if Sev = No_Valtyp then Set_Error (Syn_Inst); + Release_Expr_Pool (Marker); return; end if; Strip_Const (Sev); -- cgit v1.2.3