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 libc/16915] nl_langinfo doesn't work with static linking


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

--- Comment #1 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, master has been updated
       via  4406c41c1d6088abf01c216e49700cd3f8f01fcc (commit)
       via  ae75a883f2eb312165d1e1f423cea320f3c92ef5 (commit)
      from  de9d8f2098caeb19684710a3c0774f4fe38a5e2c (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=4406c41c1d6088abf01c216e49700cd3f8f01fcc

commit 4406c41c1d6088abf01c216e49700cd3f8f01fcc
Author: Aurelien Jarno <aurelien@aurel32.net>
Date:   Tue May 20 14:41:44 2014 +0200

    Fix strtold on 32-bit sparc (and probably others) (BZ #16965)

    This patch fixes an issue observed running the tst-strtod-round test on
    32 bit sparc. In some conditions, strtold calls round_and_return, which in
    turn calls __mpn_rshift with cnt = 0, while stdlib/rshift.c explicitly says
    that cnts should satisfy 0 < CNT < BITS_PER_MP_LIMB. In this case, the code
    end up doing a logical shift right of the same amount than the register,
    which is undefined in the C standard.

    Due to this bug, 32-bit sparc does not correctly convert the value
    "0x1p-16446", but it is likely that other architectures are also
    affected for other input values.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=ae75a883f2eb312165d1e1f423cea320f3c92ef5

commit ae75a883f2eb312165d1e1f423cea320f3c92ef5
Author: Aurelien Jarno <aurelien@aurel32.net>
Date:   Fri May 16 00:06:54 2014 +0200

    fix nl_langinfo with static linking (BZ #16915)

    For static linking the locale code avoids linking code and data for
    unused categories. However for nl_langinfo we know only at runtime which
    categories are used, so direct reference to every nl_current_CATEGORY
    symbol should be done.

    This was broken by commit bc3e1c127392da88d0c8bf2ae728147982a3d1bc where
    nl_langinfo_l and nl_langinfo have been merged and some code has been
    lost in the process.

    In order to detect locales issues with static linking, compile a version
    of tst-langinfo with static linking.

    Note: this is Debian bug#747103 reported by Raphael
<raphael.astier@eliot-sa.com>

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

Summary of changes:
 ChangeLog                        |   17 +++++++++++++++++
 NEWS                             |    3 ++-
 locale/nl_langinfo_l.c           |   15 +++++++++++++++
 localedata/Makefile              |   13 ++++++++++---
 localedata/tst-langinfo-static.c |    1 +
 localedata/tst-langinfo.sh       |    3 +--
 stdlib/strtod_l.c                |   11 ++++++++---
 7 files changed, 54 insertions(+), 9 deletions(-)
 create mode 100644 localedata/tst-langinfo-static.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]