This is the mail archive of the glibc-bugs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug regex/23036] regex equivalence class regression


https://sourceware.org/bugzilla/show_bug.cgi?id=23036

--- Comment #9 from Florian Weimer <fweimer at redhat dot com> ---
(In reply to jim@meyering.net from comment #8)
> FYI, this now works for me on Fedora 28:
> 
> $ echo 'á' | LC_ALL=en_US.UTF-8 grep '[[=a=]]'
> á

I still get no output for that with:

glibc-all-langpacks-2.27-19.fc28.x86_64
glibc-2.27-19.fc28.i686
grep-3.1-5.fc28.x86_64

And running the slightly clarified reproducer:

#include <err.h>
#include <locale.h>
#include <regex.h>
#include <stdio.h>

int
main ()
{
  if (setlocale (LC_ALL, "en_US.UTF-8") == NULL)
    err (1, "setlocale");
  regex_t r;
  if (regcomp (&r, "[[=a=]]", 0))
    errx (1, "regcomp");
  printf ("%d\n", regexec (&r, "\303\241" /* á */ , 0, NULL, 0));
}

results in “1” being printed.  The latter also happens when running under
upstream glibc, against the upstream locale data.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]