Surely you know immediately if your passing a duff type to a function?
Nah, sometimes you have like:
Function MyFunction(t.MyType, ...)
unit\target=t
Endfunction
then somewhere else you find out unit\target=null
Basically things can get complicated before you ever try to actually use the null instance.