Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[perl #72090] unitialized variable name wrong with no strict refs
$ ./perl -we '$a = @$a > 0' Use of uninitialized value $a in array dereference at -e line 1. Use of uninitialized value $a in numeric gt (>) at -e line 1. S_find_uninit_var was not taking into account that rv2*v could return undef. So it merrily looked at the child ops to find one that named a variable. This commit makes it skip any rv2av/rv2hv that does not have an OP_GV as its child op. In other words, it skips @{...} and %{...} (including the shorthand forms @$foo and %$foo), but not @foo or %foo.
- Loading branch information