when I run UVM built in test sequence uvm_reg_hw_reset_seq, I get below UVM_FATAL
UVM_FATAL /ux/tools/synopsys/vcs_2020.03sp1/etc/uvm-1.1/seq/uvm_sequencer_param_base.svh(295) @ 0.000ns: uvm_test_top.m_top_env.m_apb_mst_agt.sequencer [sequencer] send_request failed to cast sequence item. User type = uvm_reg_item
then I checked uvm source code uvm_sequencer_param_base.svh and found that $cast(param_t, t) may cause this error
if ($cast(param_t, t)) begin
if (rerandomize == 1) begin
if (!param_t.randomize()) begin
uvm_report_warning(“SQRSNDREQ”, “Failed to rerandomize sequence item in send_request”);
end
end
if (param_t.get_transaction_id() == -1) begin
param_t.set_transaction_id(sequence_ptr.m_next_transaction_id++);
end
m_last_req_push_front(param_t);
end else begin
if(t == null)
uvm_fatal(get_name(),$sformatf("send_request failed to cast sequence item. User type = null")) else
uvm_fatal(get_name(),$sformatf(“send_request failed to cast sequence item. User type = %s”, t.get_type_name()))
end
since I used built in sequence, why will this error occur?