[perl #75812] kill $1 broken in 5.12.1
[email protected] (Todd Rinaldo)
| Newsgroups | perl.perl5.porters |
|---|---|
| Message-ID | <[email protected]> |
# New Ticket Created by Todd Rinaldo
# Please include the string: [perl #75812]
# in the subject line of all future correspondence about this issue.
# <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=75812 >
We've discovered that this snippet will break in perl 5.12
my $pid = "12345 ";
if($pid =~ m/(\d+)/) {
kill 9, $1;
}
it dies with this message:
Can't kill a non-numeric process ID at test.pl line 7.
The reason appears to be a result of this commit.
http://perl5.git.perl.org/perl.git/commitdiff/e2c0f81f627951896aca833460887e6e8f20aba6?hp=32878f30ba1216461c8932946f0868cda9920d62
Using Devel::Peek, I'm guessing the problem is that IV doesn't get set on a $1 variable?
For some reason I can't understand, I can make this problem go away if I do 'use 5.12.1' at the beginning of my code. $1+0 also forces kill to work.