Subject: Re: bug#16481: dfa.c and Rational Range Interpretation

From: Paul Eggert <[email-masked]>
Date: Tue, 11 Feb 2014 13:42:04 -0800

On 02/10/2014 02:13 PM, Paolo Bonzini wrote:
> Ok, so there is a real bug.  But it is not immediately obvious what 
> the problem is, and the bug has (AFAICS) no test case and no mention 
> in the commit message.  Without this, I am not sure that the fix 
> should not be the one in this commit.
You're right, it should have had a test case.I'll add this to my to-do list.

> It only does so if the fallback to regex is not requested (dfaexec 
> invoked with backref = NULL).  This is never the case for grep. In 
> fact, as far as I know it is never the case, and I've been tempted 
> many times to completely remove the mostly dead code dealing with 
> multibyte ranges if backref = NULL.
>

Ouch, I wasn't aware of this.  Clearly the patch I put in was wrong -- 
at least for the documentation that got put into NEWS.

Perhaps you're right, and the best thing to do for now is to revert the 
patch while we can think about a better solution. This should be done 
soon, since Jim wants to do a grep release. Please let me think about it 
for a day or two.  I would like to fix the bug, anyway, even if that 
patch wasn't the right way to do it.  Longer term, it'd be better to 
simplify the code (perhaps along the lines that you suggested) as it's 
too full of gotchas now.