C:\Users\Peter>perl -MO=Concise,-terse,-exec -Mstrict -w -E "sub false { 0 } my $x=false || die 'Died'; say 'not reached';" OP (0x2a1c6b8) enter COP (0x2a85b00) nextstate OP (0xfdfb00) pushmark PADOP (0xfdfac0) gv IV (0x105fb40) \&main::false UNOP (0x2a85cf0) entersub LOGOP (0x2a85be8) or OP (0x2a85c78) pushmark SVOP (0x2a85cb0) const [4] PV (0x105f618) "Died" LISTOP (0x2a85c30) die [3] OP (0xfdfb40) padsv [1] BINOP (0x2a85b60) sassign COP (0x2a85998) nextstate OP (0x2a85a40) pushmark SVOP (0x2a85a78) const [5] PV (0x105f5b8) "not reached" LISTOP (0x2a859f8) say LISTOP (0x2a85ab8) leave [1] -e syntax OK C:\Users\Peter>perl -MO=Concise,-terse,-exec -Mstrict -w -E "sub false { 0 } my $x=false or die 'Died'; say 'not reached';" OP (0x2a249d8) enter COP (0x2a76030) nextstate OP (0xfc08e0) pushmark PADOP (0xfc08a0) gv IV (0x103e770) \&main::false UNOP (0x2a76220) entersub OP (0xfc0920) padsv [1] BINOP (0x2a761d8) sassign LOGOP (0x2a760d0) or OP (0x2a76160) pushmark SVOP (0x2a76198) const [4] PV (0x103e1e8) "Died" LISTOP (0x2a76118) die [3] COP (0x2a75ec8) nextstate OP (0x2a75f70) pushmark SVOP (0x2a75fa8) const [5] PV (0x103e248) "not reached" LISTOP (0x2a75f28) say LISTOP (0x2a75fe8) leave [1] -e syntax OK