[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: |
Norihiro Tanaka |
Subject: |
bug#18762: [PATCH] dfa: don't consider RE_DOT_NEWLINE and RE_DOT_NOT_NULL in matching with a bracket expression |
Date: |
Sun, 19 Oct 2014 11:07:52 +0900 |
Jim Meyering <address@hidden> wrote:
> dfa.c's match_mb_charset function *is* used, e.g., in a
> command like this one:
>
> printf '\0' |src/grep -aE '^\s?$'
Wow, just it isn't good. I think that behavior of `fails' should be
same as of `trans' except `fails' checks accepted conditions, including
following part. match_mb_charset() should be avoided as far as possible,
as it doesn't support collating symbols and equivalence classes.
> /* Falling back to the glibc matcher in this case gives
> better performance (up to 25% better on [a-z], for
> example) and enables support for collating symbols and
> equivalence classes. */
> if (d->states[s].has_mbcset && backref)
> {
> *backref = 1;
> goto done;
> }
0001-dfa-fall-MBCSET-back-to-the-glibc-matcher-in-transit.patch
Description: Text document