aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/synth/synth-vhdl_stmts.adb3
1 files changed, 3 insertions, 0 deletions
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);