diff options
author | Tristan Gingold <tgingold@free.fr> | 2022-10-02 11:47:02 +0200 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2022-10-02 11:47:38 +0200 |
commit | 7d642ac4d912c4111769f124a2da97fa83828548 (patch) | |
tree | 796d5ecefaf507f3a2611b59fded8646f57e345e /src/synth | |
parent | 7ebccfbd51085218014940f3b063b45c193f1eb5 (diff) | |
download | ghdl-7d642ac4d912c4111769f124a2da97fa83828548.tar.gz ghdl-7d642ac4d912c4111769f124a2da97fa83828548.tar.bz2 ghdl-7d642ac4d912c4111769f124a2da97fa83828548.zip |
synth: improve error recovery
Diffstat (limited to 'src/synth')
-rw-r--r-- | src/synth/synth-vhdl_stmts.adb | 3 |
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); |