One case where I use it is when I have multi-level checking to do and don't want to add extra code when I could just jump to the relevant section after my checks.
For example, there's this system that checks the status of various machines in a warehouse, and fails the warehouse as a whole and sends out an alert if any one part of any one system is dead, in pseudo-code it goes like this:
if(hsensor[status] != OK) {
alert = Humidity sensor hsensor[fail_id] failed with error hsensor[fail_error]
goto sendAlert;
}
if(cosensor[status] != OK) {
alert = Co2 sensor cosensor[fail_id] failed with error cosensor[fail_error]
goto sendAlert;
}
That way, if anything fails, I can skip all other checks and go straight through to the alert. Whoever is on call receives the alert and pulls up the full result of whatever function called the alert so that they can fix it.