goto was only bad when used to save code and jump indiscriminately. To handle errors is no problem at all.