in reply to /ee -> Use of uninitialized value in substitution iterator (without back references)

Try running the code with
sub qqq { return "triple q" }

The /ee does kind of a double evaluation. First, "$rhs" is evaled, returning qqq, and this is run as a Perl expression. If qqq is not declared, the eval returns undef that you see reported in the warning.

'$rhs', on the other hand, is evaled to $rhs which being run as a Perl expression returns qqq.

map{substr$_->[0],$_->[1]||0,1}[\*||{},3],[[]],[ref qr-1,-,-1],[{}],[sub{}^*ARGV,3]
  • Comment on Re: /ee -> Use of uninitialized value in substitution iterator (without back references)
  • Select or Download Code