aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/synth/elab-vhdl_stmts.adb4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/synth/elab-vhdl_stmts.adb b/src/synth/elab-vhdl_stmts.adb
index c2bbe06f1..720db8ad3 100644
--- a/src/synth/elab-vhdl_stmts.adb
+++ b/src/synth/elab-vhdl_stmts.adb
@@ -95,9 +95,10 @@ package body Elab.Vhdl_Stmts is
Default : Node;
Idxes : Node_Flist;
Drng : Discrete_Range_Type;
+ Marker : Mark_Type;
begin
-- TODO: do not recompute indexes and ranges for each sub-block
- -- TODO: mark & release memory
+ Mark_Expr_Pool (Marker);
Default := Null_Node;
Config := Configs;
while Config /= Null_Node loop
@@ -122,6 +123,7 @@ package body Elab.Vhdl_Stmts is
end case;
Config := Get_Prev_Block_Configuration (Config);
end loop;
+ Release_Expr_Pool (Marker);
if Config = Null_Node then
Config := Default;