From 1c54e4fca5d6dd8f531c83450e3259671249ce8e Mon Sep 17 00:00:00 2001 From: Tristan Gingold Date: Wed, 10 Aug 2022 22:06:13 +0200 Subject: testsuite/gna: add a test for element attribute --- testsuite/gna/issue2166/repro4.vhdl | 23 +++++++++++++++++++++++ testsuite/gna/issue2166/testsuite.sh | 3 +++ 2 files changed, 26 insertions(+) create mode 100644 testsuite/gna/issue2166/repro4.vhdl (limited to 'testsuite/gna') diff --git a/testsuite/gna/issue2166/repro4.vhdl b/testsuite/gna/issue2166/repro4.vhdl new file mode 100644 index 000000000..09c2fbeba --- /dev/null +++ b/testsuite/gna/issue2166/repro4.vhdl @@ -0,0 +1,23 @@ +entity repro4 is +end; + +architecture behav of repro4 is + function InitMemoryBaseType(Size : integer) return integer_vector is + begin + return (1 to Size => 0); + end InitMemoryBaseType; + + subtype MemoryBaseType is integer_vector ; + type MemBlockType is array (integer range <>) of MemoryBaseType ; + type MemBlockPtrType is access MemBlockType ; +begin + process + variable MemArr : MemBlockPtrType; + variable BlockWidth : natural := 4; + begin + MemArr := new MemBlockType (0 to BlockWidth - 1)(0 to 31); + report natural'image(memarr'length); + report natural'image(memarr'element'length); + wait; + end process; +end; diff --git a/testsuite/gna/issue2166/testsuite.sh b/testsuite/gna/issue2166/testsuite.sh index 8828745e3..3a68bde9d 100755 --- a/testsuite/gna/issue2166/testsuite.sh +++ b/testsuite/gna/issue2166/testsuite.sh @@ -16,6 +16,9 @@ elab_simulate repro2 analyze tb3.vhdl elab_simulate tb3 +analyze repro4.vhdl +elab_simulate repro4 + if false; then export GHDL_STD_FLAGS="--std=08 -frelaxed --work=osvvm -Wno-hide" -- cgit v1.2.3