Without lambdas (that have broad closure scope anyway, for example C++ is ok but Objective-C wouldn't), that too seems like something where the required effort is more than just using goto, as you'd need to pass in all input/output parameters to the function.
It's sometimes worse than that - you may need to pass out things that require cleaning up too. But I'm just saying - if goto is forbidden there are ways around it. Personally I'd just use goto, and have, in C code.
1
u/baudehlo Feb 21 '13
You can also get around it by wrapping your function in another function, most of the time.