Skip Menu |
Report information
Id: 113628
Status: open
Priority: 0/
Queue: perl6

Owner: Nobody
Requestors: masak <cmasak [at] gmail.com>
Cc:
AdminCc:

Severity: (no value)
Tag: Bug
Platform: (no value)
Patch Status: (no value)
VM: (no value)



Subject: [BUG] Internal Parrot error when doing a hyper-mutate-flip on an array
Date: Thu, 14 Jun 2012 08:12:36 +0200
To: rakudobug [...] perl.org
From: Carl Mäsak <cmasak [...] gmail.com>
Download (untitled) / with headers
text/plain 762b
<sorear> p6: @*ARGS ».=« flip <p6eval> ..rakudo 90333b: OUTPUT«===SORRY!===␤ResizablePMCArray: Can't shift from an empty array!␤» <sorear> hey, I broke Rakudo * masak submits sorear's ResizablePMCArray rakudobug <sorear> o/ masakbot * masak bobs in mid-air <masak> r: (my @) ».=« flip <p6eval> rakudo 90333b: OUTPUT«===SORRY!===␤ResizablePMCArray: Can't shift from an empty array!␤» <masak> I'm tryin' to figger out what ».=« means, semantically. <masak> so, infix:<.=> is an operator that makes the rhs a bit special. <masak> 'flip' is still a method. <sorear> masak: I vote for 'nothing' <sorear> actually, I somewhat think .= should be treated syntactically as an adverb <sorear> accepted in infix position but otherwise parses as a postfix
RT-Send-CC: perl6-compiler [...] perl.org
Download (untitled) / with headers
text/plain 1.2k
On Wed Jun 13 23:13:01 2012, masak wrote: Show quoted text
> <sorear> p6: @*ARGS ».=« flip > <p6eval> ..rakudo 90333b: OUTPUT«===SORRY!===␤ResizablePMCArray: Can't > shift from an empty array!␤» > <sorear> hey, I broke Rakudo > * masak submits sorear's ResizablePMCArray rakudobug > <sorear> o/ masakbot > * masak bobs in mid-air > <masak> r: (my @) ».=« flip > <p6eval> rakudo 90333b: OUTPUT«===SORRY!===␤ResizablePMCArray: Can't > shift from an empty array!␤» > <masak> I'm tryin' to figger out what ».=« means, semantically. > <masak> so, infix:<.=> is an operator that makes the rhs a bit special. > <masak> 'flip' is still a method. > <sorear> masak: I vote for 'nothing' > <sorear> actually, I somewhat think .= should be treated syntactically > as an adverb > <sorear> accepted in infix position but otherwise parses as a postfix
Error message has changed, and no longer exposing an internal parrot error. 23:26 <[Coke]> r: (my @) ».=« flip 23:26 <p6eval> rakudo 8230ae: OUTPUT«===SORRY!===␤Error while compiling block : Error while compiling op call: Error while compiling block : Error while compiling op call: Error while compiling op callmethod: Method call node requires at least one child␤» -- Will "Coke" Coleda
Download (untitled) / with headers
text/plain 1.3k
On Wed, 13 Jun 2012 23:13:01 -0700, masak wrote: Show quoted text
> <masak> r: (my @) ».=« flip > <p6eval> rakudo 90333b: OUTPUT«===SORRY!===␤ResizablePMCArray: Can't > shift from an empty array!␤»
Still present in: This is Rakudo version 2017.08-104-g76f1d8970 built on MoarVM version 2017.08.1-148-g1059eed1 implementing Perl 6.c. It addition to an error, it now also prints a bogus "useless use" warning. ➜ my @a = <ab xy>; @a »~=» '1'; dd @a; Array @a = ["ab1", "xy1"] ➜ my @a = <ab xy>; @a ».=» flip; dd @a; Potential difficulties: Useless use of ».=« in sink context at -e:1 ------> my @a = <ab xy>; @a ⏏».=» flip; dd @a ===SORRY!=== Method call node requires at least one child Here shown with the the right-facing hyper meta-op `» »`, which makes more sense here (though all forms currently fail in the same way). Expected result for each form, IMO: ».=» Array @a = ["ba", "yx"] «.=» Array @a = ["ba", "yx"] ».=« ERROR: Lists on either side of non-dwimmy hyperop of .= are not of the same length left: 2 elements, right: 1 elements «.=« ERROR: Lists on either side of non-dwimmy hyperop of .= are not of the expected length left: 2 elements, right: 1 elements


This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

For issues related to this RT instance (aka "perlbug"), please contact perlbug-admin at perl.org