$ perle 'use Carp::Always; die "arghh"' arghh at -e line 1. $ perle 'use Carp::Always; sub f { die "arghh" }; sub g { f }; g;' arghh at -e line 1. main::f() called at -e line 1 main::g() called at -e line 1 $ perle 'use Carp::Always; sub f { open my $fh, "<", "not_a_file" }; sub g { f }; g;' Can't open 'not_a_file' for reading: 'No such file or directory' at -e line 1 main::open(GLOB(0x7feaba80e750), "<", "not_a_file") called at -e line 1 main::f() called at -e line 1 main::g() called at -e line 1 $ perl -Mstrict -Mwarnings -MCarp::Always -Mautodie=:all -E 'sub f { open my $fh, "<", "not_a_file" }; sub g { f }; g;' Can't open 'not_a_file' for reading: 'No such file or directory' at -e line 1 main::open(GLOB(0x7ff52b80d950), "<", "not_a_file") called at -e line 1 main::f() called at -e line 1 main::g() called at -e line 1 $ perl -Mstrict -Mwarnings -Mautodie=:all -MCarp::Always -E 'sub f { open my $fh, "<", "not_a_file" }; sub g { f }; g;' Can't open 'not_a_file' for reading: 'No such file or directory' at -e line 1 main::open(GLOB(0x7f955100d950), "<", "not_a_file") called at -e line 1 main::f() called at -e line 1 main::g() called at -e line 1 $ perl -Mstrict -Mwarnings -E 'use autodie ":all"; use Carp::Always; sub f { open my $fh, "<", "not_a_file" }; sub g { f }; g;' Can't open 'not_a_file' for reading: 'No such file or directory' at -e line 1 main::open(GLOB(0x7f7f6480d950), "<", "not_a_file") called at -e line 1 main::f() called at -e line 1 main::g() called at -e line 1 $ perl -Mstrict -Mwarnings -E 'use Carp::Always; use autodie ":all"; sub f { open my $fh, "<", "not_a_file" }; sub g { f }; g;' Can't open 'not_a_file' for reading: 'No such file or directory' at -e line 1 main::open(GLOB(0x7fb6fa032b50), "<", "not_a_file") called at -e line 1 main::f() called at -e line 1 main::g() called at -e line 1 $ perl -Mstrict -Mwarnings -E 'use autodie ":all"; sub f { open my $fh, "<", "not_a_file" }; sub g { f }; g;' Can't open 'not_a_file' for reading: 'No such file or directory' at -e line 1 $ perl -Mstrict -Mwarnings -E 'use Carp::Always; sub f { open my $fh, "<", "not_a_file" }; sub g { f }; g;' $ perl -Mstrict -Mwarnings -E 'sub f { open my $fh, "<", "not_a_file" }; sub g { f }; g;' $ perl -E 'sub f { open my $fh, "<", "not_a_file" }; sub g { f }; g;' $