aboutsummaryrefslogtreecommitdiffstats
path: root/src/synth
diff options
context:
space:
mode:
Diffstat (limited to 'src/synth')
-rw-r--r--src/synth/elab-vhdl_stmts.adb6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/synth/elab-vhdl_stmts.adb b/src/synth/elab-vhdl_stmts.adb
index 720db8ad3..def7e9218 100644
--- a/src/synth/elab-vhdl_stmts.adb
+++ b/src/synth/elab-vhdl_stmts.adb
@@ -197,6 +197,7 @@ package body Elab.Vhdl_Stmts is
procedure Elab_Block_Statement (Syn_Inst : Synth_Instance_Acc; Blk : Node)
is
Hdr : constant Node := Get_Block_Header (Blk);
+ Guard : constant Node := Get_Guard_Decl (Blk);
Blk_Inst : Synth_Instance_Acc;
Assoc : Node;
Inter : Node;
@@ -207,9 +208,8 @@ package body Elab.Vhdl_Stmts is
Blk_Inst := Make_Elab_Instance (Syn_Inst, Blk, Null_Iir);
Create_Sub_Instance (Syn_Inst, Blk, Blk_Inst);
- -- No support for guard.
- if Get_Guard_Decl (Blk) /= Null_Node then
- raise Internal_Error;
+ if Guard /= Null_Node then
+ Create_Signal (Blk_Inst, Guard, Boolean_Type, null);
end if;
if Hdr /= Null_Node then