aboutsummaryrefslogtreecommitdiffstats
path: root/testsuite/gna/issue1721
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2021-04-13 19:56:33 +0200
committerTristan Gingold <tgingold@free.fr>2021-04-13 19:56:33 +0200
commit1a5f5a4178a3529c0e96cb45801fb4c41e5f6fd8 (patch)
treedd0603def37027cc904c5f5e9a4440faf6af2eb8 /testsuite/gna/issue1721
parenteb4fc9db48e74b410732cb50005425fbb2fb0aeb (diff)
downloadghdl-1a5f5a4178a3529c0e96cb45801fb4c41e5f6fd8.tar.gz
ghdl-1a5f5a4178a3529c0e96cb45801fb4c41e5f6fd8.tar.bz2
ghdl-1a5f5a4178a3529c0e96cb45801fb4c41e5f6fd8.zip
testsuite/gna: add a test for #1721
Diffstat (limited to 'testsuite/gna/issue1721')
-rwxr-xr-xtestsuite/gna/issue1721/testsuite.sh2
-rw-r--r--testsuite/gna/issue1721/top2.vhdl27
2 files changed, 29 insertions, 0 deletions
diff --git a/testsuite/gna/issue1721/testsuite.sh b/testsuite/gna/issue1721/testsuite.sh
index 70c249139..e4a6e56cc 100755
--- a/testsuite/gna/issue1721/testsuite.sh
+++ b/testsuite/gna/issue1721/testsuite.sh
@@ -7,6 +7,8 @@ export GHDL_STD_FLAGS=-fpsl
analyze top1.vhdl
elab_simulate top1
+analyze_failure top2.vhdl
+
clean
echo "Test successful"
diff --git a/testsuite/gna/issue1721/top2.vhdl b/testsuite/gna/issue1721/top2.vhdl
new file mode 100644
index 000000000..b213d96d5
--- /dev/null
+++ b/testsuite/gna/issue1721/top2.vhdl
@@ -0,0 +1,27 @@
+library ieee;
+use ieee.std_logic_1164.all;
+
+entity top2 is
+end entity;
+
+architecture a of top2 is
+ signal a,b,c,d : std_logic := '0';
+ signal clk_sys, clk1, clk2 : std_logic;
+begin
+ -- psl default clock is clk_sys;
+
+ -- Following throws bug occured with: "build_sere_fa: cannot handle N_IMP_SEQ"
+ -- This is strange because with "always" this is working.
+ -- According to PSL LRM 2003 FL_Property production for "always" is the
+ -- same as for "never":
+ -- FL_Property ::=
+ -- always FL_Property
+ -- | always Sequence
+ --
+ -- FL_Property ::=
+ -- never FL_Property
+ -- | never Sequence
+ -- Therefore I think if sequence implication works with one, it shall work
+ -- also with other.
+ -- psl my_seq : assert never {a} |=> {b; c};
+end a;