[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#18762: [PATCH] dfa: don't consider RE_DOT_NEWLINE and RE_DOT_NOT_NUL
From: |
Jim Meyering |
Subject: |
bug#18762: [PATCH] dfa: don't consider RE_DOT_NEWLINE and RE_DOT_NOT_NULL in matching with a bracket expression |
Date: |
Sat, 18 Oct 2014 17:16:13 -0700 |
On Sat, Oct 18, 2014 at 4:30 PM, Norihiro Tanaka <address@hidden> wrote:
> Thanks for the review.
>
> This is a potential bug fix. However, match_mb_charset function isn't
> used in grep and gawk, as DFA treats MBCSET as BACKREF by following code
> if `backref' is provided.
dfa.c's match_mb_charset function *is* used, e.g., in a
command like this one:
printf '\0' |src/grep -aE '^\s?$'
However, as I mentioned, so far I have been unable to
construct a combination of syntax_bits settings and input/RE pairs
that induces a change in behavior.
> Therefore the fix never induces any semantic
> change in grep and gawk.
>
> if (d->states[s].has_mbcset && backref)
> {
> *backref = 1;
> goto done;
> }
>
> Essentially, the function is able to be removed. However, if we regard
> DFA as a library, we should keep it.