+uvm_set_inst_override

In reply to birdluo:
The +uvm_set_inst_override switch only works with classes that have a string name associated with with the factory. The `uvm_object_param_utils macro does not register a class with a string name, it only does type based factory registration.

To make +uvm_set_inst_override work, you can do one of two things. Extend an un-parameterized class around your parameterized class and use that as your override:

class mac_seq_mac_base_seq_ext extends mac_seq(#mac_base_seq_ext);
`uvm_object_utils(mac_seq_mac_base_seq_ext)
...
endclass

Don’t use `uvm_object_param_utils to register your class with the factory. See Parameterized Classes, Static Members and the Factory Macros - Verification Horizons