develooper Front page | perl.perl5.porters | Postings from April 2016

[perl #127952] Perl_ck_refassign: Assertion `left->op_type ==OP_SREFGEN' failed (op.c:10498)

Thread Next
From:
Brian Carpenter
Date:
April 21, 2016 22:15
Subject:
[perl #127952] Perl_ck_refassign: Assertion `left->op_type ==OP_SREFGEN' failed (op.c:10498)
Message ID:
rt-4.0.18-2501-1461276895-1313.127952-75-0@perl.org
# New Ticket Created by  Brian Carpenter 
# Please include the string:  [perl #127952]
# in the subject line of all future correspondence about this issue. 
# <URL: https://rt.perl.org/Ticket/Display.html?id=127952 >


perl -e '0,!n||!\r=0' triggers an assertion failure in Perl v5.24.0-RC1-2-gde1d2c7. This bug was found with American Fuzzy Lop.

Program received signal SIGABRT, Aborted.
0x00007ffff6d8e125 in *__GI_raise (sig=<optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
64      ../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt
#0  0x00007ffff6d8e125 in *__GI_raise (sig=<optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#1  0x00007ffff6d913a0 in *__GI_abort () at abort.c:92
#2  0x00007ffff6d87311 in *__GI___assert_fail (
    assertion=assertion@entry=0xebfb70 "left->op_type == OP_SREFGEN", file=<optimized out>,
    file@entry=0xf91722 "op.c", line=line@entry=10498,
    function=function@entry=0xed4720 "Perl_ck_refassign") at assert.c:81
#3  0x00000000004a5869 in Perl_ck_refassign (o=0x120b060) at op.c:10498
#4  0x000000000047c944 in Perl_newBINOP (type=type@entry=388, flags=flags@entry=64, first=0x120aa08,
    last=last@entry=0x120a988) at op.c:5016
#5  0x00000000004996ef in Perl_newASSIGNOP (flags=flags@entry=64, left=0x120a988, optype=0,
    right=0x120aa08) at op.c:6518
#6  0x00000000006608b5 in Perl_yyparse (gramtype=gramtype@entry=258) at perly.y:781
#7  0x0000000000531035 in S_parse_body (env=env@entry=0x0, xsinit=xsinit@entry=0x42ec20 <xs_init>)
    at perl.c:2331
#8  0x0000000000537147 in perl_parse (my_perl=<optimized out>, xsinit=xsinit@entry=0x42ec20 <xs_init>,
    argc=<optimized out>, argv=<optimized out>, env=env@entry=0x0) at perl.c:1650
#9  0x000000000042e838 in main (argc=3, argv=0x7fffffffe658, env=0x7fffffffe678) at perlmain.c:114

Perl v5.14.2 fails with this message:
Can't modify single ref constructor in scalar assignment at -e line 1, at EOF
Execution of -e aborted due to compilation errors.


Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About