diff options
author | Tristan Gingold <tgingold@free.fr> | 2017-01-24 08:50:11 +0100 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2017-01-24 08:50:11 +0100 |
commit | a076edcd1f817f82b2a5dca031668ebb99f308d6 (patch) | |
tree | 583f7fd007de22e33bf448c97d365ad9320ee734 | |
parent | be5e5caa74f6dd084a62c481a2e72acffc708a2b (diff) | |
download | ghdl-a076edcd1f817f82b2a5dca031668ebb99f308d6.tar.gz ghdl-a076edcd1f817f82b2a5dca031668ebb99f308d6.tar.bz2 ghdl-a076edcd1f817f82b2a5dca031668ebb99f308d6.zip |
Do not emit assert error for '-' in matching equality/inequality.
Fix #262
-rw-r--r-- | src/grt/grt-std_logic_1164.adb | 14 |
1 files changed, 0 insertions, 14 deletions
diff --git a/src/grt/grt-std_logic_1164.adb b/src/grt/grt-std_logic_1164.adb index f34c77f7a..c9c5f91e5 100644 --- a/src/grt/grt-std_logic_1164.adb +++ b/src/grt/grt-std_logic_1164.adb @@ -57,9 +57,6 @@ package body Grt.Std_Logic_1164 is Left : constant Std_Ulogic := Std_Ulogic'Val (L); Right : constant Std_Ulogic := Std_Ulogic'Val (R); begin - if Left = '-' or Right = '-' then - Assert_Not_Match; - end if; return Std_Ulogic'Pos (Match_Eq_Table (Left, Right)); end Ghdl_Std_Ulogic_Match_Eq; @@ -68,9 +65,6 @@ package body Grt.Std_Logic_1164 is Left : constant Std_Ulogic := Std_Ulogic'Val (L); Right : constant Std_Ulogic := Std_Ulogic'Val (R); begin - if Left = '-' or Right = '-' then - Assert_Not_Match; - end if; return Std_Ulogic'Pos (Not_Table (Match_Eq_Table (Left, Right))); end Ghdl_Std_Ulogic_Match_Ne; @@ -120,7 +114,6 @@ package body Grt.Std_Logic_1164 is R_Arr : constant Ghdl_E8_Array_Base_Ptr := To_Ghdl_E8_Array_Base_Ptr (R); Res : Std_Ulogic := '1'; - Has_Match_Err : Boolean; begin if L_Len /= R_Len then Ghdl_Ieee_Assert_Failed @@ -129,18 +122,11 @@ package body Grt.Std_Logic_1164 is return Std_Ulogic'Pos ('0'); end if; - Has_Match_Err := False; for I in 1 .. L_Len loop declare Le : constant Std_Ulogic := Std_Ulogic'Val (L_Arr (I - 1)); Re : constant Std_Ulogic := Std_Ulogic'Val (R_Arr (I - 1)); begin - if Le = '-' or Re = '-' then - if not Has_Match_Err then - Assert_Not_Match; - Has_Match_Err := True; - end if; - end if; Res := And_Table (Res, Match_Eq_Table (Le, Re)); end; end loop; |