This is following the if ladder of handling type-specific NULL sigils. They can all be handled at the top where null is taken care of, but that would be a bigger change.