title: Pointer dereference in VHDL
body: <p>I have not been able to understand how to dereference a pointer in VHDL.</p>
  
  <p>What I have in mind is a C code like :</p>
  
  <pre><code>  int a;
    int* ptr_a;
  
    a = 42;
    ptr_a=&amp;a;
    *ptr_a=451;// how can I do this ?
  </code></pre>
  
  <p>I tried to mimick this code in VHDL :</p>
  
  <pre><code>ptr_test : process
      type     ptr_integer is access integer;
      variable a     : integer;
      variable ptr_a : ptr_integer;
    begin
      a         := 42;
      ptr_a     := new integer'(a);
      report "ptr now points to a : ptr=" &amp; str(ptr_a.all);
      ptr_a.all := 451;
      report "ptr modified        : ptr=" &amp; str(ptr_a.all);
      report "a   is NOT modified : a  =" &amp; str(a);
      wait;
    end process;
  </code></pre>
  
  <p>So how can I correctly modify a value through a pointer ? </p>