diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/vhdl/vhdl-canon.adb | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/vhdl/vhdl-canon.adb b/src/vhdl/vhdl-canon.adb index edddfc721..1cad2b147 100644 --- a/src/vhdl/vhdl-canon.adb +++ b/src/vhdl/vhdl-canon.adb @@ -369,8 +369,22 @@ package body Vhdl.Canon is end Canon_Extract_Sensitivity_Waveform; procedure Canon_Extract_Sensitivity_Signal_Assignment_Common - (Stmt : Iir; List : Iir_List) is + (Stmt : Iir; List : Iir_List) + is + Guard : Iir; begin + case Get_Kind (Stmt) is + when Iir_Kind_Concurrent_Conditional_Signal_Assignment + | Iir_Kind_Concurrent_Selected_Signal_Assignment + | Iir_Kind_Concurrent_Simple_Signal_Assignment => + Guard := Get_Guard (Stmt); + if Guard /= Null_Iir then + Add_Element (List, Guard); + end if; + when others => + null; + end case; + Canon_Extract_Sensitivity_Expression (Get_Target (Stmt), List, True); Canon_Extract_Sensitivity_If_Not_Null (Get_Reject_Time_Expression (Stmt), List); |