Why in uvm driver and sequencer are non virtual?

why in uvm driver and sequencer are non virtual?

In reply to lalithjithan:
Because somebody forgot about it.

in uvm 1.2 driver and sequencer are virtual ? or still non virtual

In reply to lalithjithan:

No change.

In reply to dave_59:
Sir,if some interviewer asks us how could I tell this,can you please elaborate.

In reply to Surendra_Kumar:

uvm_driver should have been declared as a virtual class. It serves no useful purpose unless you extend it with code that does the actual driving. The virtual keyword prevents you from ever constructing it.

It turns out the parameterized class uvm_sequencer should not be virtual. It just needs to be parameterized to the transaction type.

In reply to dave_59:

I do not completely agree with your statement. We can do certain things with the uvm_driver. We can connect it to the sequencer and transfer data from the sequencer to the driver. Of course we cannot drive virtual interfaces.

In reply to chr_sue:

You can make the sequencer/driver connection, but it still will not “do” anything because there is no code that gets the data.