diff options
Diffstat (limited to 'testsuite/synth/issue1654/checker.vhdl')
-rw-r--r-- | testsuite/synth/issue1654/checker.vhdl | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/testsuite/synth/issue1654/checker.vhdl b/testsuite/synth/issue1654/checker.vhdl new file mode 100644 index 000000000..0f302fe5b --- /dev/null +++ b/testsuite/synth/issue1654/checker.vhdl @@ -0,0 +1,25 @@ +library ieee; + use ieee.std_logic_1164.all; + +entity checker is + port ( + clk : in std_logic; + a, b, c, d : std_logic + ); +end; + + +architecture psl of checker is +begin + -- All is sensitive to rising edge of clk + default clock is rising_edge(clk); + + -- This assertion holds + WITH_sync_ABORT_a : assert (always a -> next (b before a)) sync_abort c; + + -- This assertion should also hold, but it does not + -- GHDL seems to implement abort as sync_abort instead of async_abort + -- See 1850-2010 6.2.1.5.1 abort, async_abort, and sync_abort + WITH_async_ABORT_a : assert (always a -> next (b before a)) async_abort d; +end architecture psl; + |