Brendan O'Dea wrote:
forwarded 350369 perl5-porters@perl.org
thanks
On Sun, Jan 29, 2006 at 09:40:23AM +0000, Neil Turton wrote:
Package: perl-base
Version: 5.8.7-10
Perl shouldn't get a segmentation fault on valid or invalid input. I
think the following code is valid, even if it is ghastly. :)
[snip: see http://bugs.debian.org/350369]
In short, the following segfaults:
$ perl -e '*a=$a=*b; $a=42'
Memory fault
I'm assuming that the problem is a circular assignment within the
expression (since '$a=*b; *a=$a; $a=42' doesn't break).
The simple answer is "don't do that". This would appear never to have
worked (certainly as far back as 5.005 crashes).
It looks like Perl is now detecting the error a little better.
The results of blead 27323 on OpenVMS Alpha 8.2 are:
EAGLE> mcr []ndbgperl -e '*a=$a=*b; $a=42'
Assertion ((sstr)->sv_flags & 0xff) == SVt_PVGV || ((sstr)->sv_flags &
0xff) == SVt_PVLV failed: file "PERL_BUILD_ROOT:[000000]sv.c;1", line
3214 at -e line 1.
%SYSTEM-F-ABORT, abort
-John
[EMAIL PROTECTED]
Personal Opinion Only
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]