My env configuration object consists of a bunch of other configuration objects. They all extend from uvm_object. When I try to create the smaller config objects inside the new function of the env config, I get a compile error:
formal and actual do not have assignment compatible data types (expecting datatype compatible with 'class uvm_pkg::uvm_component' but found 'class usb_env_cfg_pkg::usb_env_config' instead)
But when I move the "create" to another fucntion that is called after creating the env config, it is fine. However, this is forcing me into first creating the env config and then calling a method (e.g. init) in it in order to create all those other config objects inside it.
Can anyone shed some light why is this?
Thank you,
Kam