From 61e8720cc963f83c7ff00d6ec7a3ee289005001b Mon Sep 17 00:00:00 2001 From: Tristan Gingold Date: Wed, 23 Nov 2016 20:27:25 +0100 Subject: Add reproducer for issue #209 --- testsuite/gna/issue209/main.vhdl | 14 ++++++++++++++ testsuite/gna/issue209/main2.vhdl | 17 +++++++++++++++++ testsuite/gna/issue209/testsuite.sh | 12 ++++++++++++ testsuite/gna/issue209/util.vhdl | 3 +++ 4 files changed, 46 insertions(+) create mode 100644 testsuite/gna/issue209/main.vhdl create mode 100644 testsuite/gna/issue209/main2.vhdl create mode 100755 testsuite/gna/issue209/testsuite.sh create mode 100644 testsuite/gna/issue209/util.vhdl (limited to 'testsuite/gna/issue209') diff --git a/testsuite/gna/issue209/main.vhdl b/testsuite/gna/issue209/main.vhdl new file mode 100644 index 000000000..75198235a --- /dev/null +++ b/testsuite/gna/issue209/main.vhdl @@ -0,0 +1,14 @@ +library work; + use work.all; + +package ShiftReg is + procedure main(new_sample: integer); +end package; + +package body ShiftReg is + procedure main(new_sample: integer) is + variable dummy: Util.integer_list_t(0 to 3); -- Here i use the type + begin + dummy := new_sample & dummy(0 to dummy'high-1); -- Error about missing & + end procedure; +end package body; diff --git a/testsuite/gna/issue209/main2.vhdl b/testsuite/gna/issue209/main2.vhdl new file mode 100644 index 000000000..1d8e9f321 --- /dev/null +++ b/testsuite/gna/issue209/main2.vhdl @@ -0,0 +1,17 @@ +library work; + use work.all; + +package ShiftReg is + type integer_list_t is array (natural range <>) of integer; -- notice this line + procedure main(new_sample: integer); +end package; + +package body ShiftReg is + + procedure main(new_sample: integer) is + variable dummy: integer_list_t(0 to 3); -- notice this line + begin + dummy := new_sample & dummy(0 to dummy'high-1); --no error + end procedure; + +end package body; diff --git a/testsuite/gna/issue209/testsuite.sh b/testsuite/gna/issue209/testsuite.sh new file mode 100755 index 000000000..de9d44773 --- /dev/null +++ b/testsuite/gna/issue209/testsuite.sh @@ -0,0 +1,12 @@ +#! /bin/sh + +. ../../testenv.sh + +analyze util.vhdl +analyze_failure main.vhdl + +analyze main2.vhdl + +clean + +echo "Test successful" diff --git a/testsuite/gna/issue209/util.vhdl b/testsuite/gna/issue209/util.vhdl new file mode 100644 index 000000000..a86ceaacb --- /dev/null +++ b/testsuite/gna/issue209/util.vhdl @@ -0,0 +1,3 @@ +package Util is + type integer_list_t is array (natural range <>) of integer; +end package; -- cgit v1.2.3