我正在使用 icarus verilog 的最新主分支构建。
我应该期望以下运行吗?
module string_display ();
//reg [10:0][7:0] x = "initial";
string x = "initial";
always @* begin
$display ("x = %s",x);
end
initial begin
// Assign new string
x = "aaaaa";
#1
// Assign new string
x = "bbbb";
#1
#1 $finish;
end
endmodule
以上给出
internal error: 18vvp_fun_anyedge_sa: recv_string(initial) not implemented
vvp: vvp_net.cc:2972: virtual void vvp_net_fun_t::recv_string(vvp_net_ptr_t, const string&, vvp_context_t): Assertion `0' failed.
但是,如果我通过取消注释上面的行将“x”定义为 reg,那么它会按预期工作......
x = aaaaa
x = bbbb