I encounter this case a couple of times.
In the user defined uvm driver, if I put like below for the run_phase, it fails.
task run_phase(uvm_phase phase);
#1; // It fail even if I put something like `uvm_info() instead of "#1".
abc_seq_item m_tx;
...
This similar behavior could also happen in the sequence class.
task body();
#1;
abc_seq_item m_tx;
...
It will pass if "abc_seq_item m_tx" is the first executable in the task. May I know why exactly is the reason?