aboutsummaryrefslogtreecommitdiffstats
path: root/testsuite/gna/issue2166/repro1.vhdl
blob: c44faf7dc65dc1d4936d11a336cee31ecec2d4d8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
entity repro1 is
end;

architecture behav of repro1 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);
--KO    report natural'image(memarr'element'length);
    report natural'image(memarr(0)'length);
    MemArr.all := (others => InitMemoryBaseType(32)) ;
--KO    MemArr.all := (0 to BlockWidth-1 => InitMemoryBaseType(32)) ;
--KO:    MemArr(0 to BlockWidth-1) :=
--      (0 to BlockWidth-1 => InitMemoryBaseType(32)) ;
    wait;
  end process;
end;