Skip Menu |
Report information
Id: 128875
Status: resolved
Worked: 4 hours (240 min)
Priority: 0/
Queue: perl6

Owner: samantham [at] posteo.net
Requestors: cpan [at] zoffix.com
Cc:
AdminCc:

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



Subject: [BUG] Ignore mark + Ignore case = Ignores everything but first letter
Download (untitled) / with headers
text/plain 407b
If :i and :m are used on the regex, it appears to match the first letter. The returned Match will contains the given string of length that matches the regex: m: say "All hell is breaking loose" ~~ m:i:m/"All is fine, I am sure of it"/ rakudo-moar fb4252: OUTPUT«「All hell is breaking loose」␤» m: say "Production Ready" ~~ m:i:m/"Pfft, Not Yet"/ rakudo-moar fb4252: OUTPUT«「Production Re」␤»
Subject: Re: [perl #128875] [BUG] Ignore mark + Ignore case = Ignores everything but first letter
To: perl6-compiler [...] perl.org
From: Timo Paulssen <timo [...] wakelift.de>
Date: Tue, 9 Aug 2016 02:34:25 +0200
Download (untitled) / with headers
text/plain 196b
to be more precise, the way we code-gen "literal" qregex nodes with subtype "ignoremark+ignorecase" will only ever check the ordbaseat of the first character in the literal against the haystack.
Download (untitled) / with headers
text/plain 749b
On Mon, 08 Aug 2016 17:34:57 -0700, timo wrote: Show quoted text
> to be more precise, the way we code-gen "literal" qregex nodes with > subtype "ignoremark+ignorecase" will only ever check the ordbaseat of > the first character in the literal against the haystack. >
This has been fixed as of https://github.com/perl6/nqp/commit/18e40936a on nqp, and the regex nodes cleaned up. With the new nqp::indexicim and eqaticim ops in MoarVM we should have greater maintainability of that code and less difference between the different types of regex, mostly using the same code now. The rakudo version where I bumped nqp is 2017.05-381-g1ac7996a4 Tests: I have added tests to roast here, https://github.com/perl6/roast/commit/0a80d0d2e84c824d0d5cfde1bbf40440ba0732d8


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