In reply to NaveenReddy:
The streaming cast assignment to prev is legal, while the static variable initialization to act is not. You should report both these issues to your tool vendor.
The streaming operators work on the same bitstream types allowed with a static cast. The streaming operators give you more flexibility in bit ordering with less type safety. A bitstream cast gives you the same functionality of a simple left-to-right streaming operator.
typedef enum {unset, wr, rd} cmd;
typedef cmd cmd8_t[8];
module main;
cmd prev[8];
cmd act[2][4] = '{0: '{default: rd}, 1: '{default: wr}};
initial begin
prev = cmd8_t'(act);
$display("%0p", prev);
end
endmodule