On 9/10/07, Dave Mitchell <davem iabyn.com> wrote:
> On Mon, Sep 10, 2007 at 01:04:59PM -0700, webmasters
ctosonline. org wrote:
> > The following snippet works in 5.9.4 and earlier
but fails in 5.10.0
> > patchlevel 31832:
> >
> > $ perl -e'$s="[a]a"; utf8::upgrade
$s; /$s/; print "okn"'
> > ok
> > $ perl5.10.0 -e'$s="[a]a";
utf8::upgrade $s; /$s/; print "okn"'
> > panic: sv_len_utf8 cache 3 real 2 for aa at -e
line 1.
> >
> > Apparently this error occurs when a string to be
interpolated in a
> > regexp has the utf8 flag on and contains a
character class followed
> > by literal text with a fixed quantifier > 1.
> >
> > A binary search points to change #31246 as being
the culprit.
>
> A closer look reveals that that change (one of mine)
accidentally
> unconditionally enabled the utf8 cache debugging code,
which then flagged
> up the error. That's now fixed (#31842).
>
> The regex/utf8 bug itself is older. I'll try to have a
look at it sometime
> if someone else doesn't beat me to it (hint hint).
Assuming that was aimed at me Ill note that i have put this
in my todo
list. However im extremely busy right now with $real_life
stuff and
will have very little time over the near future.
Yves
--
perl -Mre=debug -e "/just|another|perl|hacker/"
|