http://www.perlmonks.org?node_id=199319


in reply to Carp; errors ala DBI

Please don't use AUTOLOAD in code for distribution , UPDATE, without using NEXT.
Thanks to adrianh for correcting me.

AUTOLOAD is a namespace hog living in the global namespace.
Client code can't avoid your AUTOLOAD routine.

In your case it is an inappropriate solution. You know
the names of the routines you want to call.

You might want to use a constant for config branching:

use constant ERRSTR => 1; if ( ERRSTR) { # errstr stuff }else{ # carp stuff }
this will eliminate the unneeded branch at compile time.

UPDATED: because I was behind times regarding existence of NEXT.