https://bugs.exim.org/show_bug.cgi?id=2792
--- Comment #8 from Philip Hazel <Philip.Hazel@???> ---
I wonder how PHP is programming it to make it loop? If you ask pcre2_match() to
match that pattern against that string, the result comes back with a match at
offset 21, with the end of the match at 22 - which is the same kind of result
you might get with any other pattern. Presumably PHP doesn't loop with other
patterns, so what is it doing to notice that there's a \K involved? It's not as
if \K is causing the start of the match to be later than the end, which is the
"bad" effect of \K in assertions.
Incidentally, I am not totally against banning \K in assertions. I just worry
about incompatible changes, and I *would* like to understand why PHP is looping
when very simple programs such as pcre2demo do not. Do you know where the loop
is happening? I presume it is not inside pcre2_match(). I suppose there may be
differences in the options settings.
--
You are receiving this mail because:
You are on the CC list for the bug.