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 locale/18589] sort-test.sh fails at random


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

--- Comment #15 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot gnu.org> ---
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, gentoo/2.22 has been updated
       via  d717c3fd0e1a5bf9a2fdb61234363ce805fcc148 (commit)
      from  68baefe5b845e0a035ccc393d32a128542ea837b (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=d717c3fd0e1a5bf9a2fdb61234363ce805fcc148

commit d717c3fd0e1a5bf9a2fdb61234363ce805fcc148
Author: Carlos O'Donell <carlos@systemhalted.org>
Date:   Thu Oct 8 16:34:53 2015 -0400

    strcoll: Remove incorrect STRDIFF-based optimization (Bug 18589).

    The optimization introduced in commit
    f13c2a8dff2329c6692a80176262ceaaf8a6f74e, causes regressions in
    sorting for languages that have digraphs that change sort order, like
    cs_CZ which sorts ch between h and i.

    My analysis shows the fast-forwarding optimization in STRCOLL advances
    through a digraph while possibly stopping in the middle which results
    in a subsequent skipping of the digraph and incorrect sorting. The
    optimization is incorrect as implemented and because of that I'm
    removing it for 2.23, and I will also commit this fix for 2.22 where
    it was originally introduced.

    This patch reverts the optimization, introduces a new bug-strcoll2.c
    regression test that tests both cs_CZ.UTF-8 and da_DK.ISO-8859-1 and
    ensures they sort one digraph each correctly. The optimization can't be
    applied without regressing this test.

    Checked on x86_64, bug-strcoll2.c fails without this patch and passes
    after. This will also get a fix on 2.22 which has the same bug.

    (cherry picked from commit 87701a58e291bd7ac3b407d10a829dac52c9c16e)
    (cherry picked from commit 6c84109cfa26f35c3dfed3acb97d347361bd5849)

-----------------------------------------------------------------------

Summary of changes:
 locale/C-collate.c           |    4 +-
 locale/categories.def        |    1 -
 locale/langinfo.h            |    1 -
 locale/localeinfo.h          |    8 ----
 locale/programs/ld-collate.c |    9 ----
 string/bug-strcoll2.c        |   93 ++++++++++++++++++++++++++++++++++++++++++
 string/strcoll_l.c           |   38 +-----------------
 wcsmbs/wcscoll_l.c           |    1 -
 8 files changed, 95 insertions(+), 60 deletions(-)
 create mode 100644 string/bug-strcoll2.c

-- 
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]