Yes it can. However at this point there's almost no way to recover, partly
because there's nothing to recover from.

I pondered the failure cases but there didn't seem to be any reasonable
thing to do which justified the extra code.

Keen to hear your thoughts though.