use Test::Trap qw/ :output(systemsafe) /; $_sendError = ""; trap { $msg->send('smtp', 'mail.wholewellnessclub.com', AuthUser=>'somemailuser@somedomain.com', AuthPass=>'$_encEmPass') || $_sendError = $@ }; $_ and $_sendError = $_ for $trap->die, $trap->stdout, $trap->stderr; if($_sendError) { return 0; } else { return 1; } #### Can't modify logical or (||) in scalar assignment at /path/to/data/file/Send_Mime_Lite_Email.data line 39, near "$@ }" # That code is above...