aboutsummaryrefslogtreecommitdiffstats
path: root/testsuite/gna/bug019/repro.vhdl
blob: 6005bd551881cb7484467bb805e822541a5dd345 (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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
entity repro is
end repro ;

architecture arch of repro is
  function get_str (l : natural) return string is
    variable res : string (1 to l);
  begin
    for i in res'range loop
      res (i) := character'val (96 + i);
    end loop;
    return res;
  end get_str;

  procedure check2 (msg : string) is
  begin
    report msg;
    assert msg (1 to 10) = "abcdefghij" severity failure;
  end check2;

  procedure check1 (msg : string) is
  begin
    report "before check";
    wait for 1 ns;
    check2 (msg);
    report "after check";
    wait for 1 ns;
  end check1;
begin
   process
   begin
      check1 (get_str (24));
      wait;
   end process;

   process
   begin
     for i in 10 to 20 loop
       report get_str (i);
       wait for 1 ns;
     end loop;
     wait;
   end process;
end arch;