aboutsummaryrefslogtreecommitdiffstats
path: root/testsuite/gna
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2017-08-30 05:36:38 +0200
committerTristan Gingold <tgingold@free.fr>2017-08-30 05:36:38 +0200
commitd91eff08229e768b044a0cfbd171a7293641a8b9 (patch)
treebc120af1f94490380438ddbd36898ac91b2c8d5d /testsuite/gna
parentf8d8c61c81150294cf06f10684a8e4180426890b (diff)
downloadghdl-d91eff08229e768b044a0cfbd171a7293641a8b9.tar.gz
ghdl-d91eff08229e768b044a0cfbd171a7293641a8b9.tar.bz2
ghdl-d91eff08229e768b044a0cfbd171a7293641a8b9.zip
Add reproducer for #394
Diffstat (limited to 'testsuite/gna')
-rw-r--r--testsuite/gna/issue394/bug.vhdl23
-rw-r--r--testsuite/gna/issue394/out.ref5
-rwxr-xr-xtestsuite/gna/issue394/testsuite.sh12
3 files changed, 40 insertions, 0 deletions
diff --git a/testsuite/gna/issue394/bug.vhdl b/testsuite/gna/issue394/bug.vhdl
new file mode 100644
index 000000000..c9a3bf7e3
--- /dev/null
+++ b/testsuite/gna/issue394/bug.vhdl
@@ -0,0 +1,23 @@
+use std.textio.all;
+
+entity bug is
+end entity;
+
+architecture a of bug is
+begin
+ main : process
+ procedure echo(msg : string) is
+ variable l : line;
+ begin
+ write(l, msg);
+ writeline(OUTPUT, l);
+ end;
+
+ begin
+ echo("1");
+ report "2";
+ echo("3");
+ report "4";
+ wait;
+ end process;
+end;
diff --git a/testsuite/gna/issue394/out.ref b/testsuite/gna/issue394/out.ref
new file mode 100644
index 000000000..1f8a041bb
--- /dev/null
+++ b/testsuite/gna/issue394/out.ref
@@ -0,0 +1,5 @@
+elaborate and simulate bug
+1
+bug.vhdl:18:5:@0ms:(report note): 2
+3
+bug.vhdl:20:5:@0ms:(report note): 4
diff --git a/testsuite/gna/issue394/testsuite.sh b/testsuite/gna/issue394/testsuite.sh
new file mode 100755
index 000000000..951682623
--- /dev/null
+++ b/testsuite/gna/issue394/testsuite.sh
@@ -0,0 +1,12 @@
+#! /bin/sh
+
+. ../../testenv.sh
+
+analyze bug.vhdl
+elab_simulate bug > out.txt 2> err.txt
+cmp out.txt out.ref
+
+rm -f out.txt err.txt
+clean
+
+echo "Test successful"