# New Ticket Created by  Zefram 
# Please include the string:  [perl #128741]
# in the subject line of all future correspondence about this issue. 
# <URL: https://rt.perl.org/Ticket/Display.html?id=128741 >


I'd expect the delimiter pairing to work on all "opening punctuation"
graphemes.  Like this:

> /^<:Ps>$/.ACCEPTS("[").Bool
True
> "q[foo]".EVAL.perl
"foo"

But if the grapheme consists of a Ps base character plus a combining
diacritic, then it matches <:Ps> (identifying it as an "opening
punctuation" grapheme), but it doesn't get paired with a corresponding
Pe delimiter:

> /^<:Ps>$/.ACCEPTS("[\x[308]").Bool
True
> "q[\x[308]foo]\x[308]".EVAL.perl
===SORRY!=== Error while compiling /home/zefram/usr/perl/pg/EVAL_5
Couldn't find terminator [? (corresponding [? was at line 1)
at /home/zefram/usr/perl/pg/EVAL_5:1
------> q[?foo]?^<EOL>
    expecting any of:
        [?

Not sure whether this is really a bug, but the mismatch between the <:Ps>
regexp and the scope of delimiter pairing is at least less than awesome.

-zefram

Reply via email to