diff options
Diffstat (limited to 'src/simul/simul-vhdl_simul.adb')
-rw-r--r-- | src/simul/simul-vhdl_simul.adb | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/simul/simul-vhdl_simul.adb b/src/simul/simul-vhdl_simul.adb index 92fcc920a..bee671e1b 100644 --- a/src/simul/simul-vhdl_simul.adb +++ b/src/simul/simul-vhdl_simul.adb @@ -523,6 +523,8 @@ package body Simul.Vhdl_Simul is -- Skip the resume statement. Stmt := Get_Chain (Stmt); pragma Assert (Get_Kind (Stmt) = Iir_Kind_Procedure_Call_Statement); + Synth.Vhdl_Decls.Finalize_Declarations + (Process.Instance, Get_Declaration_Chain (Bod), True); Synth_Subprogram_Back_Association (Process.Instance, Caller_Inst, Get_Interface_Declaration_Chain (Imp), @@ -806,6 +808,8 @@ package body Simul.Vhdl_Simul is -- TODO: end of call. else Execute_Sequential_Statements (Process); + Synth.Vhdl_Decls.Finalize_Declarations + (Sub_Inst, Get_Declaration_Chain (Bod), True); Synth_Subprogram_Back_Association (Sub_Inst, Inst, Inter_Chain, Assoc_Chain); Next_Stmt := Null_Node; |