[perl #132228] [SEGV] nqp::push to a typeobject of a class with repr("VMArray")
# New Ticket Created by Zoffix Znet # Please include the string: [perl #132228] # in the subject line of all future correspondence about this issue. # https://rt.perl.org/Ticket/Display.html?id=132228 > IRC: https://irclog.perlgeek.de/perl6-dev/2017-10-06#i_15265279 10:40 Zoffix m: use nqp; nqp::push(class :: is repr("VMArray") {}, 42) 10:40 camelia rakudo-moar 96669c: OUTPUT: «(signal SEGV)» 10:40 Zoffix (no .new)
[perl #131814] quote bug in shell command on windows
On Fri, 06 Oct 2017 09:49:54 -0700, steve.mynott+bitc...@gmail.com wrote: > I propose this ticket be closed. No, there's definitely some bug exists. On 2017.07 Star, I get this (\x[22] is the double-quote char): C:\Users\zoffix>perl6 -e "say qqx/echo \x[22]foo\x[22]/;" \"foo\" While the presence of quotes is a thing of Windows's shell, looks like rakudo tries to escape the quotes (incorrectly?) and the slashes make it into the output
[perl #131814] quote bug in shell command on windows
On Fri, 06 Oct 2017 09:49:54 -0700, steve.mynott+bitc...@gmail.com wrote: > I propose this ticket be closed. No, there's definitely some bug exists. On 2017.07 Star, I get this (\x[22] is the double-quote char): C:\Users\zoffix>perl6 -e "say qqx/echo \x[22]foo\x[22]/;" \"foo\" While the presence of quotes is a thing of Windows's shell, looks like rakudo tries to escape the quotes (incorrectly?) and the slashes make it into the output
[perl #126757] [LTA] error message talks about ~ but there is no ~ in my code (33..126 .pick.chr)
On Wed, 04 Oct 2017 22:10:22 -0700, alex.jakime...@gmail.com wrote: > To produce an error message that is more precise we'll need more > information > than just a line number, but we don't have that during the run time. Couldn't the confusing wording be fixed without additional information? As I understand it, the problem with the current message is that the in '⏏~' (indicated by ⏏) part leads people to think it's referring to a position in the source code, when it is actually referring to a position in a string. Especially because the "in block ... in file ... at line ..." line comes directly after it.
[perl #132232] [UNI] ignorecase returns too many graphemes for expanding foldcase graphemes
# New Ticket Created by Samantha McVey # Please include the string: [perl #132232] # in the subject line of all future correspondence about this issue. # https://rt.perl.org/Ticket/Display.html?id=132232 > `is '_fi_' ~~ /:i fi /, "fi", "ignorecase with ligature needle matches only ligature needle";` Returns: 'fi_' instead of just 'fi'. This is because 'fi' expands to 'f' + 'i' under foldcase.
[perl #131936] [TESTNEEDED] [REGRESSION] [REGEX] Match.made leaks a `NQPMu`
Test were added by Zoffix a month ago: https://github.com/perl6/roast/commit/8674f1e8c Closing.
[perl #132233] [UNI] ignorecase doesn't use foldcase semantics when the haystack is interpolated
# New Ticket Created by Samantha McVey # Please include the string: [perl #132233] # in the subject line of all future correspondence about this issue. # https://rt.perl.org/Ticket/Display.html?id=132233 > my $fi = 'fi'; my $fi_d = 'fi'; #?rakudo.moar 2 todo "ignorecase doesn't use foldcase semantics when the haystack is interpolated" ok $fi_d ~~ /:i $fi /, "ignorecase with ligature needle in variable matches"; ok 'fi' ~~ /:i $fi /, "ignorecase with ligature needle in variable matches"; These two fail. See failing tests in S05-modifier/ignorecase.t Please note, for reasons I am not sure of, sometimes this will work if you try and do it yourself in the REPL for instance. This needs more investigating, but today I have not been able to figure out what is going on. Help wanted.
[perl #126951] [TESTNEEDED] Interpolating a typed hash into an argument list produces wrong keys
Test added: https://github.com/perl6/roast/commit/8773139c37 Closing.
[perl #131973] [TESTNEEDED] [REGEX] Backtracking modifiers on individual atoms fail to override a regex-global `:ratchet` modifier.
Tests were added here: https://github.com/perl6/roast/commit/65a762217
[perl #130117] [TESTNEEDED] [REGEX] Sequential alternation `||` does not respect `:ratchet`
Tests were added here: https://github.com/perl6/roast/commit/65a762217
[perl #130906] [TESTNEEDED] [REGRESSION] Reducing a Seq with `=>` fails with "P6opaque: no such attribute '$!reified' in type List"
Tests committed: https://github.com/perl6/roast/commit/9ea27ad2e Closing.
[perl #125500] [SEGV] double free or corruption, invalid pointer
I'll close this ticket. I'm failing to reproduce the issue on 2015-ish versions of rakudo, let alone HEAD. I think the actual problem was resolved and hopefully there are tests for it, but trying to find what exactly fixed it is a total waste of time unfortunately. Even with all powers of whateverables this is not going to happen. Maybe I can try bisecting it manually, but I know that it will just point to a random moar/nqp bump and that will be it. We'd much rather spend time on new SEGV tickets than this one. On 2017-02-26 20:55:48, alex.jakime...@gmail.com wrote: > On 2017-02-26 20:16:14, ddgr...@gmail.com wrote: > > I ran this in a loop both in and outside valgrind for several hours > > and never got an error of any kind. I haven't attempted to golf or > > bisect it, but I believe whatever the problem was it's now fixed. > > > That's not surprising given that the problem went away if you did > *any* kind of > change to the source code. Now that rakudo changed a lot, surely it > doesn't > crash anymore. > > Does it mean that the bug was fixed? Nobody knows. But I guess we > should close > this anyway.
[perl #125596] [LTA] error message with if; and unless; without conditions
Oof. I'm wondering why is it a .sorry and not .panic. Panic will blow up immediately with a good error message, but I think there's some reason for it to be a sorry. I can't figure out what it is exactly. Maybe something about subs called “if”? I tried various ways to trigger it erroneously but couldn't come up with anything useful. In any case, you may be wondering why it prints it 4 times. Here are backtraces of all four sorry-s: 1 debug at SETTING::src/core/Exception.pm:57 (./CORE.setting.moarvm:throw) from src/Perl6/World.nqp:4660 (blib/Perl6/World.moarvm:throw) from src/Perl6/Grammar.nqp:272 (blib/Perl6/Grammar.moarvm:typed_panic) from src/Perl6/Grammar.nqp:262 (blib/Perl6/Grammar.moarvm:panic) from src/Perl6/Grammar.nqp:607 (blib/Perl6/Grammar.moarvm:kok) from :1 (blib/Perl6/Grammar.moarvm:terminator:sym) from gen/moar/stage2/QRegex.nqp:1721 (/home/alex/git/rakudo/install/share/nqp/lib/QRegex.moarvm:!protoregex) from :1 (blib/Perl6/Grammar.moarvm:terminator) from :1 (blib/Perl6/Grammar.moarvm:stdstopper) from src/Perl6/Grammar.nqp:3996 (blib/Perl6/Grammar.moarvm:infixish) from gen/moar/stage2/NQPHLL.nqp:939 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:EXPR) from src/Perl6/Grammar.nqp:3981 (blib/Perl6/Grammar.moarvm:EXPR) from :1 (blib/Perl6/Grammar.moarvm:arglist) from src/Perl6/Grammar.nqp:3478 (blib/Perl6/Grammar.moarvm:args) from src/Perl6/Grammar.nqp:3425 (blib/Perl6/Grammar.moarvm:term:sym) from gen/moar/stage2/QRegex.nqp:1721 (/home/alex/git/rakudo/install/share/nqp/lib/QRegex.moarvm:!protoregex) from :1 (blib/Perl6/Grammar.moarvm:term) from src/Perl6/Grammar.nqp:3941 (blib/Perl6/Grammar.moarvm:termish) from gen/moar/stage2/NQPHLL.nqp:875 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:EXPR) from src/Perl6/Grammar.nqp:3981 (blib/Perl6/Grammar.moarvm:EXPR) from src/Perl6/Grammar.nqp:1306 (blib/Perl6/Grammar.moarvm:statement) from src/Perl6/Grammar.nqp:1238 (blib/Perl6/Grammar.moarvm:statementlist) from gen/moar/stage2/NQPHLL.nqp:1105 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:LANG) from src/Perl6/Grammar.nqp:1677 (blib/Perl6/Grammar.moarvm:FOREIGN_LANG) from src/Perl6/Grammar.nqp:1202 (blib/Perl6/Grammar.moarvm:comp_unit) from src/Perl6/Grammar.nqp:508 (blib/Perl6/Grammar.moarvm:TOP) from gen/moar/stage2/QRegex.nqp:2330 (/home/alex/git/rakudo/install/share/nqp/lib/QRegex.moarvm:parse) from gen/moar/stage2/NQPHLL.nqp:1864 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:parse) from gen/moar/stage2/NQPHLL.nqp:1780 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:execute_stage) from gen/moar/stage2/NQPHLL.nqp:1813 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:run) from gen/moar/stage2/NQPHLL.nqp:1816 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:) from gen/moar/stage2/NQPHLL.nqp:1802 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:compile) from gen/moar/stage2/NQPHLL.nqp:1511 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:eval) from gen/moar/stage2/NQPHLL.nqp:1636 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:) from gen/moar/stage2/NQPHLL.nqp:1682 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:command_eval) from src/Perl6/Compiler.nqp:42 (blib/Perl6/Compiler.moarvm:command_eval) from gen/moar/stage2/NQPHLL.nqp:1617 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:command_line) from gen/moar/main.nqp:47 (/home/alex/git/rakudo/perl6.moarvm:MAIN) from gen/moar/main.nqp:38 (/home/alex/git/rakudo/perl6.moarvm:) from :1 (/home/alex/git/rakudo/perl6.moarvm:) from :1 (/home/alex/git/rakudo/perl6.moarvm:) 2 debug at SETTING::src/core/Exception.pm:57 (./CORE.setting.moarvm:throw) from src/Perl6/World.nqp:4660 (blib/Perl6/World.moarvm:throw) from src/Perl6/Grammar.nqp:272 (blib/Perl6/Grammar.moarvm:typed_panic) from src/Perl6/Grammar.nqp:262 (blib/Perl6/Grammar.moarvm:panic) from src/Perl6/Grammar.nqp:607 (blib/Perl6/Grammar.moarvm:kok) from :1 (blib/Perl6/Grammar.moarvm:terminator:sym) from gen/moar/stage2/QRegex.nqp:1721 (/home/alex/git/rakudo/install/share/nqp/lib/QRegex.moarvm:!protoregex) from :1 (blib/Perl6/Grammar.moarvm:terminator) from :1 (blib/Perl6/Grammar.moarvm:stdstopper) from src/Perl6/Grammar.nqp:4042 (blib/Perl6/Grammar.moarvm:postfixish) from src/Perl6/Grammar.nqp:3955 (blib/Perl6/Grammar.moarvm:termish) from gen/moar/stage2/NQPHLL.nqp:875 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:EXPR) from src/Perl6/Grammar.nqp:3981 (blib/Perl6/Grammar.moarvm:EXPR) from src/Perl6/Grammar.nqp:1306 (blib/Perl6/Grammar.moarvm:statement) from src/Perl6/Grammar.nqp:1238 (blib/Perl6/Grammar.moarvm:statementlist) from gen/moar/stage2/NQPHLL.nqp:1105 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:LANG) from src/Perl6/Grammar.nqp:1677 (blib/Perl6/Grammar.moarvm:FOREIGN_LANG) from src/Perl6/Grammar.nqp:1202 (blib/Perl6/Grammar.moarvm:comp_unit) from src/Perl6/Grammar.nqp:508 (blib/Perl6/Grammar.moarvm:TOP) from gen/
[perl #125596] [LTA] error message with if; and unless; without conditions
OK, RT refuses to display it, so let's try again. Previous message: Oof. I'm wondering why is it a .sorry and not .panic. Panic will blow up immediately with a good error message, but I think there's some reason for it to be a sorry. I can't figure out what it is exactly. Maybe something about subs called “if”? I tried various ways to trigger it erroneously but couldn't come up with anything useful. In any case, you may be wondering why it prints it 4 times. Here are backtraces of all four sorry-s:
[perl #125596] [LTA] error message with if; and unless; without conditions
3 debug at SETTING::src/core/Exception.pm:57 (./CORE.setting.moarvm:throw) from src/Perl6/World.nqp:4660 (blib/Perl6/World.moarvm:throw) from src/Perl6/Grammar.nqp:272 (blib/Perl6/Grammar.moarvm:typed_panic) from src/Perl6/Grammar.nqp:262 (blib/Perl6/Grammar.moarvm:panic) from src/Perl6/Grammar.nqp:607 (blib/Perl6/Grammar.moarvm:kok) from :1 (blib/Perl6/Grammar.moarvm:terminator:sym) from gen/moar/stage2/QRegex.nqp:1721 (/home/alex/git/rakudo/install/share/nqp/lib/QRegex.moarvm:!protoregex) from :1 (blib/Perl6/Grammar.moarvm:terminator) from :1 (blib/Perl6/Grammar.moarvm:stdstopper) from src/Perl6/Grammar.nqp:3996 (blib/Perl6/Grammar.moarvm:infixish) from gen/moar/stage2/NQPHLL.nqp:939 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:EXPR) from src/Perl6/Grammar.nqp:3981 (blib/Perl6/Grammar.moarvm:EXPR) from src/Perl6/Grammar.nqp:1306 (blib/Perl6/Grammar.moarvm:statement) from src/Perl6/Grammar.nqp:1238 (blib/Perl6/Grammar.moarvm:statementlist) from gen/moar/stage2/NQPHLL.nqp:1105 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:LANG) from src/Perl6/Grammar.nqp:1677 (blib/Perl6/Grammar.moarvm:FOREIGN_LANG) from src/Perl6/Grammar.nqp:1202 (blib/Perl6/Grammar.moarvm:comp_unit) from src/Perl6/Grammar.nqp:508 (blib/Perl6/Grammar.moarvm:TOP) from gen/moar/stage2/QRegex.nqp:2330 (/home/alex/git/rakudo/install/share/nqp/lib/QRegex.moarvm:parse) from gen/moar/stage2/NQPHLL.nqp:1864 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:parse) from gen/moar/stage2/NQPHLL.nqp:1780 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:execute_stage) from gen/moar/stage2/NQPHLL.nqp:1813 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:run) from gen/moar/stage2/NQPHLL.nqp:1816 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:) from gen/moar/stage2/NQPHLL.nqp:1802 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:compile) from gen/moar/stage2/NQPHLL.nqp:1511 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:eval) from gen/moar/stage2/NQPHLL.nqp:1636 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:) from gen/moar/stage2/NQPHLL.nqp:1682 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:command_eval) from src/Perl6/Compiler.nqp:42 (blib/Perl6/Compiler.moarvm:command_eval) from gen/moar/stage2/NQPHLL.nqp:1617 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:command_line) from gen/moar/main.nqp:47 (/home/alex/git/rakudo/perl6.moarvm:MAIN) from gen/moar/main.nqp:38 (/home/alex/git/rakudo/perl6.moarvm:) from :1 (/home/alex/git/rakudo/perl6.moarvm:) from :1 (/home/alex/git/rakudo/perl6.moarvm:) 4 debug at SETTING::src/core/Exception.pm:57 (./CORE.setting.moarvm:throw) from src/Perl6/World.nqp:4660 (blib/Perl6/World.moarvm:throw) from src/Perl6/Grammar.nqp:272 (blib/Perl6/Grammar.moarvm:typed_panic) from src/Perl6/Grammar.nqp:262 (blib/Perl6/Grammar.moarvm:panic) from src/Perl6/Grammar.nqp:607 (blib/Perl6/Grammar.moarvm:kok) from :1 (blib/Perl6/Grammar.moarvm:statement_mod_loop:sym) from gen/moar/stage2/QRegex.nqp:1721 (/home/alex/git/rakudo/install/share/nqp/lib/QRegex.moarvm:!protoregex) from :1 (blib/Perl6/Grammar.moarvm:statement_mod_loop) from src/Perl6/Grammar.nqp:1308 (blib/Perl6/Grammar.moarvm:statement) from src/Perl6/Grammar.nqp:1238 (blib/Perl6/Grammar.moarvm:statementlist) from gen/moar/stage2/NQPHLL.nqp:1105 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:LANG) from src/Perl6/Grammar.nqp:1677 (blib/Perl6/Grammar.moarvm:FOREIGN_LANG) from src/Perl6/Grammar.nqp:1202 (blib/Perl6/Grammar.moarvm:comp_unit) from src/Perl6/Grammar.nqp:508 (blib/Perl6/Grammar.moarvm:TOP) from gen/moar/stage2/QRegex.nqp:2330 (/home/alex/git/rakudo/install/share/nqp/lib/QRegex.moarvm:parse) from gen/moar/stage2/NQPHLL.nqp:1864 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:parse) from gen/moar/stage2/NQPHLL.nqp:1780 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:execute_stage) from gen/moar/stage2/NQPHLL.nqp:1813 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:run) from gen/moar/stage2/NQPHLL.nqp:1816 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:) from gen/moar/stage2/NQPHLL.nqp:1802 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:compile) from gen/moar/stage2/NQPHLL.nqp:1511 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:eval) from gen/moar/stage2/NQPHLL.nqp:1636 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:) from gen/moar/stage2/NQPHLL.nqp:1682 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:command_eval) from src/Perl6/Compiler.nqp:42 (blib/Perl6/Compiler.moarvm:command_eval) from gen/moar/stage2/NQPHLL.nqp:1617 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:command_line) from gen/moar/main.nqp:47 (/home/alex/git/rakudo/perl6.moarvm:MAIN) from gen/moar/main.nqp:38 (/home/alex/git/rakudo/perl6.moarvm:) from :1 (/home/alex/git/rakudo/perl6.moarvm:) from :1 (/home/alex/git/rakudo/perl6.moarvm:)
[perl #125596] [LTA] error message with if; and unless; without conditions
1 debug at SETTING::src/core/Exception.pm:57 (./CORE.setting.moarvm:throw) from src/Perl6/World.nqp:4660 (blib/Perl6/World.moarvm:throw) from src/Perl6/Grammar.nqp:272 (blib/Perl6/Grammar.moarvm:typed_panic) from src/Perl6/Grammar.nqp:262 (blib/Perl6/Grammar.moarvm:panic) from src/Perl6/Grammar.nqp:607 (blib/Perl6/Grammar.moarvm:kok) from :1 (blib/Perl6/Grammar.moarvm:terminator:sym) from gen/moar/stage2/QRegex.nqp:1721 (/home/alex/git/rakudo/install/share/nqp/lib/QRegex.moarvm:!protoregex) from :1 (blib/Perl6/Grammar.moarvm:terminator) from :1 (blib/Perl6/Grammar.moarvm:stdstopper) from src/Perl6/Grammar.nqp:3996 (blib/Perl6/Grammar.moarvm:infixish) from gen/moar/stage2/NQPHLL.nqp:939 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:EXPR) from src/Perl6/Grammar.nqp:3981 (blib/Perl6/Grammar.moarvm:EXPR) from :1 (blib/Perl6/Grammar.moarvm:arglist) from src/Perl6/Grammar.nqp:3478 (blib/Perl6/Grammar.moarvm:args) from src/Perl6/Grammar.nqp:3425 (blib/Perl6/Grammar.moarvm:term:sym) from gen/moar/stage2/QRegex.nqp:1721 (/home/alex/git/rakudo/install/share/nqp/lib/QRegex.moarvm:!protoregex) from :1 (blib/Perl6/Grammar.moarvm:term) from src/Perl6/Grammar.nqp:3941 (blib/Perl6/Grammar.moarvm:termish) from gen/moar/stage2/NQPHLL.nqp:875 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:EXPR) from src/Perl6/Grammar.nqp:3981 (blib/Perl6/Grammar.moarvm:EXPR) from src/Perl6/Grammar.nqp:1306 (blib/Perl6/Grammar.moarvm:statement) from src/Perl6/Grammar.nqp:1238 (blib/Perl6/Grammar.moarvm:statementlist) from gen/moar/stage2/NQPHLL.nqp:1105 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:LANG) from src/Perl6/Grammar.nqp:1677 (blib/Perl6/Grammar.moarvm:FOREIGN_LANG) from src/Perl6/Grammar.nqp:1202 (blib/Perl6/Grammar.moarvm:comp_unit) from src/Perl6/Grammar.nqp:508 (blib/Perl6/Grammar.moarvm:TOP) from gen/moar/stage2/QRegex.nqp:2330 (/home/alex/git/rakudo/install/share/nqp/lib/QRegex.moarvm:parse) from gen/moar/stage2/NQPHLL.nqp:1864 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:parse) from gen/moar/stage2/NQPHLL.nqp:1780 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:execute_stage) from gen/moar/stage2/NQPHLL.nqp:1813 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:run) from gen/moar/stage2/NQPHLL.nqp:1816 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:) from gen/moar/stage2/NQPHLL.nqp:1802 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:compile) from gen/moar/stage2/NQPHLL.nqp:1511 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:eval) from gen/moar/stage2/NQPHLL.nqp:1636 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:) from gen/moar/stage2/NQPHLL.nqp:1682 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:command_eval) from src/Perl6/Compiler.nqp:42 (blib/Perl6/Compiler.moarvm:command_eval) from gen/moar/stage2/NQPHLL.nqp:1617 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:command_line) from gen/moar/main.nqp:47 (/home/alex/git/rakudo/perl6.moarvm:MAIN) from gen/moar/main.nqp:38 (/home/alex/git/rakudo/perl6.moarvm:) from :1 (/home/alex/git/rakudo/perl6.moarvm:) from :1 (/home/alex/git/rakudo/perl6.moarvm:) 2 debug at SETTING::src/core/Exception.pm:57 (./CORE.setting.moarvm:throw) from src/Perl6/World.nqp:4660 (blib/Perl6/World.moarvm:throw) from src/Perl6/Grammar.nqp:272 (blib/Perl6/Grammar.moarvm:typed_panic) from src/Perl6/Grammar.nqp:262 (blib/Perl6/Grammar.moarvm:panic) from src/Perl6/Grammar.nqp:607 (blib/Perl6/Grammar.moarvm:kok) from :1 (blib/Perl6/Grammar.moarvm:terminator:sym) from gen/moar/stage2/QRegex.nqp:1721 (/home/alex/git/rakudo/install/share/nqp/lib/QRegex.moarvm:!protoregex) from :1 (blib/Perl6/Grammar.moarvm:terminator) from :1 (blib/Perl6/Grammar.moarvm:stdstopper) from src/Perl6/Grammar.nqp:4042 (blib/Perl6/Grammar.moarvm:postfixish) from src/Perl6/Grammar.nqp:3955 (blib/Perl6/Grammar.moarvm:termish) from gen/moar/stage2/NQPHLL.nqp:875 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:EXPR) from src/Perl6/Grammar.nqp:3981 (blib/Perl6/Grammar.moarvm:EXPR) from src/Perl6/Grammar.nqp:1306 (blib/Perl6/Grammar.moarvm:statement) from src/Perl6/Grammar.nqp:1238 (blib/Perl6/Grammar.moarvm:statementlist) from gen/moar/stage2/NQPHLL.nqp:1105 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:LANG) from src/Perl6/Grammar.nqp:1677 (blib/Perl6/Grammar.moarvm:FOREIGN_LANG) from src/Perl6/Grammar.nqp:1202 (blib/Perl6/Grammar.moarvm:comp_unit) from src/Perl6/Grammar.nqp:508 (blib/Perl6/Grammar.moarvm:TOP) from gen/moar/stage2/QRegex.nqp:2330 (/home/alex/git/rakudo/install/share/nqp/lib/QRegex.moarvm:parse) from gen/moar/stage2/NQPHLL.nqp:1864 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:parse) from gen/moar/stage2/NQPHLL.nqp:1780 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:execute_stage) from gen/moar/stage2/NQPHLL.nqp:1813 (/home/alex/git/rakudo/install/share/nqp/lib/NQPHLL.moarvm:run) from gen/moar/stage2/NQPHLL.nq
[perl #127279] [BUG] Infinite loop with |"a".."z"
On Fri, 15 Jan 2016 10:24:16 -0800, c...@zoffix.com wrote: > The slip (|) before a range has higher precedence and it interprets > the starting point of the range as a single-item list. This leads to > two types of bugs, and both situations should likely be error > messages: > > 1) Infinite loop when range contains letters, as the range starts from > 1 and tries to reach the second letter by increasing a number: > > m: .say for |"g".."z"; > rakudo-moar 3259ba: > OUTPUT«(timeout)1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515…» > > 2) Incorrect range is produced when numbers are used for the range. > It'll always start at 1 and proceed until the end number: > m: .say for |10..20 > rakudo-moar 3259ba: > OUTPUT«1234567891011121314151617181920» > m: .say for |10..5 > rakudo-moar 3259ba: OUTPUT«12345» > > Relevant IRC conversation: http://irclog.perlgeek.de/perl6/2016-01- > 15#i_11894289 I submitted: https://github.com/rakudo/rakudo/pull/1182 ...which warns on these: $ perl6 -e 'say |4..5' Potential difficulties: To apply a Slip flattener to a range, parenthesize the whole range. (Or parenthesize the whole endpoint expression, if you meant that.) at -e:1 --> say ⏏|4..5 1..5 $ perl6 -e 'say ~4..5' Potential difficulties: To stringify a range, parenthesize the whole range. (Or parenthesize the whole endpoint expression, if you meant that.) at -e:1 --> say ⏏~4..5 "4"..5 $ perl6 -e 'say |4 R.. 5' Potential difficulties: To apply a Slip flattener to a range, parenthesize the whole range. (Or parenthesize the whole endpoint expression, if you meant that.) at -e:1 --> say ⏏|4 R.. 5 5..1 $ perl6 -e 'say ~4 R.. 5' Potential difficulties: To stringify a range, parenthesize the whole range. (Or parenthesize the whole endpoint expression, if you meant that.) at -e:1 --> say ⏏~4 R.. 5 5..4 (don't know why that last one "works", but still worth warning.) It also handles all the ^..^ variants.
[perl #125641] [LTA] error messages when right bracket is missing: $<> , <>, () and so on
See this pull request: https://github.com/rakudo/rakudo/pull/1183 Unfortunately not all of the things are covered. For example: perl6 -e 'my $x = q:to/foo/; blah ' ===SORRY!=== Error while compiling -e Ending delimiter foo not found at -e:3 --> ⏏ expecting any of: whitespace Then there's also: * https://github.com/rakudo/rakudo/blob/f62ae60c48d1372df18b49aca44e10af44ead2d6/src/Perl6 /Grammar.nqp#L3741 * https://github.com/rakudo/rakudo/blob/f62ae60c48d1372df18b49aca44e10af44ead2d6/src/Perl6/Grammar.nqp#L3780-L3792 * https://github.com/rakudo/rakudo/blob/f62ae60c48d1372df18b49aca44e10af44ead2d6/src/Perl6/Grammar.nqp#L3820-L3826 And maybe other things too. For example, nqp itself prints a similar error message and does not mention the starter. I don't know if any user will ever see the error message from NQP though. So there's a lot to be done to resolve this ticket fully… Oh, also! I did not remove “expecting any of:” part. This has to be done also. On 2015-07-18 12:38:41, alex.jakime...@gmail.com wrote: > Similar issue: https://rt.perl.org/Public/Bug/Display.html?id=125247 > (unclosed multiline comments). This time it is about other unclosed things. > > Code: > say $ # some code here > > Error: > Unable to parse quote-words subscript; couldn't find right angle quote > at ./test.pl:25 > --> ⏏ > expecting any of: > argument list > term > > Similar problem with: > say say < say (word; > say [word; > ... more? > > 1) "expecting any of" section does not help that much. There is no need to > add terms or argument lists to the end of your file to fix the problem, the > only thing that is actually expected is a closing bracket. > 2) The end of file does not count as a helpful line number, especially if > the file is long. It would be great to have the same "(corresponding < was > at line 1)"-like message as with multiline comments
[perl #125247] [LTA] Error message for unclosed multiline comments points to last line of the file
FWIW for those wondering how exactly it was resolved, here's the commit: https://github.com/rakudo/rakudo/commit/382c78a97ae6132d0054e0112cf19ceb2d50fef6 On 2016-12-10 10:10:48, c...@zoffix.com wrote: > Tests now exist: > https://github.com/perl6/roast/commit/da6fde44ab97cdcbb50bf181528f55671914612c
[perl #131814] quote bug in shell command on windows
There does seem to be a quoting bug in Windows shell but none of the above examples show it. See #132183: Insufficient debug messages from zef/perl6.bat when package build fails I propose this ticket be closed.
[perl #131814] quote bug in shell command on windows
I don't think this is a bug in the shell command on windows since cmd.exe behaves differently to Bourne type shells. UNIX $ echo "foo" foo Windows C:\Windows\system32>echo "foo" "foo"
[perl #125674] [LTA] error message prints wrong eject position (if True if { };)
This one is a bit harder than it seems. So here is what throws: https://github.com/rakudo/rakudo/blob/f62ae60c48d1372df18b49aca44e10af44ead2d6/src/Perl6/Grammar.nqp#L315 However, the cursor has wrong position for some reason. Looking at the lines above, it may seem that doing this: self.'!cursor_pos'($pos); should fix the problem… but it doesn't! $pos variable is set correctly, but !cursor_pos does absolutely nothing. In fact, you can try setting it to 0 or any other value, no effect whatsoever. This suggests that the use of !cursor_pos in the same method does not work too. What is the right way to set the cursor? And why does the cursor even have the incorrect value there? As a bonus, this line seems to be unreachable: self.missing("block (taken by some undeclared routine?)"); I tried various things but nothing can trigger it. I found (via google) some code snippets that used to result in this error message, but nowadays it simply says “Missing block”. I bisected that change to https://github.com/rakudo/rakudo/commit/8a70c921e98ed260d3198d81b81b0960c8daa83b On 2015-07-24 05:13:59, alex.jakime...@gmail.com wrote: > Code: > if True if { }; > > ===SORRY!=== Error while compiling ./test.pl > Missing block > at ./test.pl:3 > --> if True if ⏏{ }; > > Clearly the block is there. It seems like it expects a block before the > second "if", but the cursor is placed incorrectly. STD gets it right: > > 15:03:25 std: if True if { }; > 15:03:26 std 28329a7: OUTPUT«===SORRY!===Missing block at > /tmp/XbS0PJUJZo line 1:--> if True ⏏if { };Parse > failedFAILED 00:00 135m» > > Similar problem with "unless", "while" and maybe some others. > > Tiny IRC discussion: http://irclog.perlgeek.de/perl6/2015-07-24#i_10947603