diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/simul/simul-vhdl_simul.adb | 4 | ||||
| -rw-r--r-- | src/synth/synth-vhdl_decls.adb | 2 | 
2 files changed, 6 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; diff --git a/src/synth/synth-vhdl_decls.adb b/src/synth/synth-vhdl_decls.adb index eb1d37e2f..0be74aeb6 100644 --- a/src/synth/synth-vhdl_decls.adb +++ b/src/synth/synth-vhdl_decls.adb @@ -878,6 +878,8 @@ package body Synth.Vhdl_Decls is              null;           when Iir_Kind_Use_Clause =>              null; +         when Iir_Kind_Suspend_State_Declaration => +            null;           when others =>              Vhdl.Errors.Error_Kind ("finalize_declaration", Decl);        end case; | 
