in reply to Net::Address::IP::Local Error catching

Perl doesn't have a throw keyword, so you have to ask yourself where this comes from. I'll give you an int, it's the Error module. On this page you can see that errors thrown can be catched with try and catch, except to do so you need to use Error qw(:try);

But if you read carefully, Error is no longer recommended. So maybe you should try it another way. Under the hood, throw is mostly a hidden die, so you can eval the portion of code that throws the exception, and catch the error by checking $@.

Actually you'll see in perlsub a way to make try and catch blocks with prototyped subs.