Dynamic array sum runs unexpected in constraint

In reply to aaaaaa:



class fs_array;
rand bit[4:0] array1[];

  constraint c1 { 
   array1.size==5; array1.sum() with (int'(item)) == 17;}
   constraint c2 {array1[0][1:0] == 0;}


function void display();
$display("array1 = %p",array1);
endfunction

function void post_randomize();
array1.shuffle();
endfunction
endclass

module tb;
  fs_array f1;
  
  initial begin
    f1 = new();
    if (!f1.randomize) $display ("Error");
    f1.display();
  end
  
  
endmodule