In reply to verif_learner:
I find that modports provide no real benefits, yet add unnecessary complexity, especially when used in a UVM environment. Because of this, I see no reason to use them.
You will typically only get warnings/errors when you multiply drive a signal by assign statements or connecting multiple registers. Port connections won’t generally create issues since the input/output notation are merely suggestions.