in reply to Re: goto in CORE::GLOBAL::exit - is it safe?
in thread goto in CORE::GLOBAL::exit - is it safe?
hi again, my gut feeling is any use of goto EXPR (not goto sub) which is not "lexical" (meaning you goto to a label in the same scope) is almost guaranteed to wreak havoc. I have read 'perldoc -f goto' a few times and somehow it feels scary ;)
ok, so you want to treat exit() like an exceptional condition and let it bubble up till the surface, err the top of your event loop. Well make it happen. i.e use '*CORE::GLOBAL::exit = sub { die X::EXIT->new; }' and somehow use a die-handler which re'die's if $@->isa("X::EXIT"). Some kind of automatic "rethrow"; sorry I don't have time to test it.
cheers --stephan update I left an ampersand after not goto...
|
|---|