>perl -wMstrict -le "sub Sr { return } sub Se { return () } sub Sw { return wantarray ? () : undef } print q{'}, Sr, q{' '}, join(q{' '}, 0+Sr, ''.Sr), q{'}; print q{'}, Se, q{' '}, join(q{' '}, 0+Se, ''.Se), q{'}; print q{'}, Sw, q{' '}, join(q{' '}, 0+Sw, ''.Sw), q{'}; " Use of uninitialized value in addition (+) at -e line 1. Use of uninitialized value in concatenation (.) or string ... '' '0' '' Use of uninitialized value in addition (+) at -e line 1. Use of uninitialized value in concatenation (.) or string ... '' '0' '' Use of uninitialized value in addition (+) at -e line 1. Use of uninitialized value in concatenation (.) or string ... '' '0' ''