Signal error rather than return  null
Revert "Signal error rather than return  null"

This reverts commit 9f3f1e749d9f9a84d9acfc8a0f09f12a01158dce.
Revert "Revert "Signal error rather than return  null""

This reverts commit c725358613ee3746e84cfddce0fb851994894203.
Revert "Revert "Revert "Signal error rather than return  null"""

This reverts commit 29ff06c58d061d56f22fb45ecfae6d6a24bf943e.