diff options
-rw-r--r-- | src/simul/simul-vhdl_simul.adb | 5 | ||||
-rw-r--r-- | src/vhdl/vhdl-canon.adb | 1 |
2 files changed, 6 insertions, 0 deletions
diff --git a/src/simul/simul-vhdl_simul.adb b/src/simul/simul-vhdl_simul.adb index 6e3d62e88..1ec6500d2 100644 --- a/src/simul/simul-vhdl_simul.adb +++ b/src/simul/simul-vhdl_simul.adb @@ -944,6 +944,11 @@ package body Simul.Vhdl_Simul is Aft : Node; Rej : Node; begin + -- Nothing to assign. + if Get_Kind (Waveform) = Iir_Kind_Unaffected_Waveform then + return; + end if; + Rej := Get_Reject_Time_Expression (Stmt); if Rej /= Null_Node then raise Internal_Error; diff --git a/src/vhdl/vhdl-canon.adb b/src/vhdl/vhdl-canon.adb index 95f531cf8..8e4bfd588 100644 --- a/src/vhdl/vhdl-canon.adb +++ b/src/vhdl/vhdl-canon.adb @@ -362,6 +362,7 @@ package body Vhdl.Canon is begin We := Chain; while We /= Null_Iir loop + exit when Get_Kind (We) = Iir_Kind_Unaffected_Waveform; Canon_Extract_Sensitivity_Expression (Get_We_Value (We), List); Canon_Extract_Sensitivity_If_Not_Null (Get_Time (We), List); We := Get_Chain (We); |