Register model integration, set_inst_override_by_type

In reply to caowangyang:

Hi Ceowangyang,

Thank you for your comment, but I am afraid that is not the solution.
I checked the prototype of the function in the UVM user guide. It says:

The prototype for uvm_component is
set_inst_override_by_type(string inst_path, orig_type, override_type);

I gave it a try anyway. Unfortunately I got the below error, that confirms that the original order of the argument was correct.

set_inst_override_by_type(uvm_reg_block::get_type(), a_reg_block::get_type(),“bus_env_i.*reg_block”);
|
ncvlog: *E,TYCMPAT (…/a_tb.sv,33|54): formal and actual do not have assignment compatible data types (expecting datatype compatible with ‘string’ but found ‘class uvm_pkg::uvm_object_wrapper’ instead).
set_inst_override_by_type(uvm_reg_block::get_type(), a_reg_block::get_type(),“bus_env_i.*reg_block”);
|
ncvlog: *E,TYCMPAT (…/a_tb.sv,33|110): formal and actual do not have assignment compatible data types (expecting datatype compatible with ‘class uvm_pkg::uvm_object_wrapper’ but found ‘packed array’ instead).