On Tue Apr 13 06:18:16 2010, masak wrote: > <masak> std: subset Quad of Any; sub classify($_) { when Quad {}; when > Quad {} } > <p6eval> std 30383: OUTPUT«ok 00:01 110m» > <masak> rakudo: subset Quad of Any; sub classify($_) { when Quad {}; > when Quad {} }; say 'alive' > <p6eval> rakudo cb4521: OUTPUT«Unable to parse blockoid, couldn't find > final '}' [...] > <masak> rakudo: subset B of Any; sub classify($_) { when B {}; when B > {} }; say 'alive' > <p6eval> rakudo cb4521: OUTPUT«alive» > * masak confused > * masak submits rakudobug > > I, um... what?
This seems to happen with the usage of anything that starts with Q or q. The declaration parses fine, it's when we try to use it that Rakudo gets confused. <sundar> rakudo: class Mill {}; my $a = Mill.new(); <p6eval> rakudo 3b5a79: ( no output ) <sundar> rakudo: class Quill {}; my $a = Quill.new(); <p6eval> rakudo 3b5a79: OUTPUT«Confused at line 11, near "my $a = Qu"â¤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)â¤Â» <sundar> rakudo: sub mill {say "OH HAI"}; mill; <p6eval> rakudo 3b5a79: OUTPUT«OH HAIâ¤Â» <sundar> rakudo: sub quill {say "OH HAI"}; quill; <p6eval> rakudo 3b5a79: OUTPUT«Confused at line 11, near "quill;"â¤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)â¤Â» Curiously, the sub works if we call it with parenthesis. <sundar> rakudo: sub quill {say "OH HAI"}; quill(); <p6eval> rakudo 3b5a79: OUTPUT«OH HAIâ¤Â»