blob: b4880dda368ac42a647e2ae8b1f173caa1b574bf (
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
|
library ieee;
use ieee.std_logic_1164.all;
entity bug2 is
end;
architecture this of bug2 is
function f return integer is
constant cc1: std_logic_vector := "1100";
constant cc2: std_logic_vector := cc1;
variable r: std_logic_vector(3 downto 0);
begin
assert false report "case2-a: "&integer'image(cc1'length) severity note;
assert false report "case2-b: "&integer'image(cc2'length) severity note;--This reports "0". Correct one would be "4"!
return 0;
end;
constant c1: std_logic_vector := "1010";
constant c2: std_logic_vector := c1;
signal i: integer;
begin
process
begin
assert false report "case1-a: "&integer'image(c1'length) severity note;
assert false report "case1-b: "&integer'image(c2'length) severity note;
i <= f;
wait;
end process;
end;
|