$ perl -Mstrict -wE'sub foo{} sub bar{return foo() or die "died"} bar()' Possible precedence issue with control flow operator at -e line 1. #### $ perl -Mstrict -wE'sub foo{} sub bar{return foo() || die "died"} bar()' died at -e line 1. #### $ perl -Mstrict -wE'sub foo{} sub bar{return (foo() or die "died")} bar()' died at -e line 1.