The right way to handle some bugs is exceptions, but we need to introduce them. iirc, @pearcej has some text (which book?) which can likely be lifted.