I would like to know the reasoning behind not allowing multiple inheritance in SV.
Sometimes, things look so un-intuitive just because multiple inheritance is not allowed.
For example, in the UVM class hierarchy, uvm_component is derived from uvm_report_object.
If multiple inheritance was allowed, it would actually inherit from uvm_object and from uvm_report_object.
When someone looks at uvm_component’s parent, uvm_report_object looks so in-intuitive as to why a static object in uvm has to have report object as its parent.
Any thoughts or comments?