mirror of
https://sourceware.org/git/glibc.git
synced 2025-01-03 16:21:06 +00:00
Fix ecvt_r, fcvt_r namespace (bug 18522).
The functions ecvt, fcvt and gcvt, in some standards, bring in references to ecvt_r and fcvt_r, which aren't in any of those standards. The calls are correctly to __ecvt_r and __fcvt_r, but then the names ecvt_r and fcvt_r are defined as strong aliases; this patch changes them to weak aliases. Tested for x86_64 and x86 (testsuite, and that disassembly of installed stripped shared libraries is unchanged by the patch). [BZ #18522] * misc/efgcvt_r.c [LONG_DOUBLE_COMPAT (libc, GLIBC_2_0) && !LONG_DOUBLE_CVT] (cvt_symbol): Use weak_alias instead of strong_alias. [LONG_DOUBLE_COMPAT (libc, GLIBC_2_0)] (cvt_symbol): Likewise. * conform/Makefile (test-xfail-XPG4/stdlib.h/linknamespace): Remove variable. (test-xfail-UNIX98/stdlib.h/linknamespace): Likewise. (test-xfail-XOPEN2K/stdlib.h/linknamespace): Likewise.
This commit is contained in:
parent
9acacaa02f
commit
498c1f6a7c
10
ChangeLog
10
ChangeLog
@ -1,5 +1,15 @@
|
|||||||
2015-06-12 Joseph Myers <joseph@codesourcery.com>
|
2015-06-12 Joseph Myers <joseph@codesourcery.com>
|
||||||
|
|
||||||
|
[BZ #18522]
|
||||||
|
* misc/efgcvt_r.c
|
||||||
|
[LONG_DOUBLE_COMPAT (libc, GLIBC_2_0) && !LONG_DOUBLE_CVT]
|
||||||
|
(cvt_symbol): Use weak_alias instead of strong_alias.
|
||||||
|
[LONG_DOUBLE_COMPAT (libc, GLIBC_2_0)] (cvt_symbol): Likewise.
|
||||||
|
* conform/Makefile (test-xfail-XPG4/stdlib.h/linknamespace):
|
||||||
|
Remove variable.
|
||||||
|
(test-xfail-UNIX98/stdlib.h/linknamespace): Likewise.
|
||||||
|
(test-xfail-XOPEN2K/stdlib.h/linknamespace): Likewise.
|
||||||
|
|
||||||
[BZ #18520]
|
[BZ #18520]
|
||||||
* inet/herrno.c (h_errno): Rename to __h_errno.
|
* inet/herrno.c (h_errno): Rename to __h_errno.
|
||||||
(__libc_h_errno): Define as alias of __h_errno not h_errno.
|
(__libc_h_errno): Define as alias of __h_errno not h_errno.
|
||||||
|
2
NEWS
2
NEWS
@ -21,7 +21,7 @@ Version 2.22
|
|||||||
18211, 18217, 18220, 18221, 18234, 18244, 18247, 18287, 18319, 18324,
|
18211, 18217, 18220, 18221, 18234, 18244, 18247, 18287, 18319, 18324,
|
||||||
18333, 18346, 18397, 18409, 18410, 18412, 18418, 18422, 18434, 18444,
|
18333, 18346, 18397, 18409, 18410, 18412, 18418, 18422, 18434, 18444,
|
||||||
18468, 18469, 18470, 18479, 18483, 18495, 18496, 18497, 18498, 18507,
|
18468, 18469, 18470, 18479, 18483, 18495, 18496, 18497, 18498, 18507,
|
||||||
18520.
|
18520, 18522.
|
||||||
|
|
||||||
* Cache information can be queried via sysconf() function on s390 e.g. with
|
* Cache information can be queried via sysconf() function on s390 e.g. with
|
||||||
_SC_LEVEL1_ICACHE_SIZE as argument.
|
_SC_LEVEL1_ICACHE_SIZE as argument.
|
||||||
|
@ -351,7 +351,6 @@ test-xfail-XPG3/wordexp.h/linknamespace = yes
|
|||||||
test-xfail-XPG4/fmtmsg.h/linknamespace = yes
|
test-xfail-XPG4/fmtmsg.h/linknamespace = yes
|
||||||
test-xfail-XPG4/glob.h/linknamespace = yes
|
test-xfail-XPG4/glob.h/linknamespace = yes
|
||||||
test-xfail-XPG4/netdb.h/linknamespace = yes
|
test-xfail-XPG4/netdb.h/linknamespace = yes
|
||||||
test-xfail-XPG4/stdlib.h/linknamespace = yes
|
|
||||||
test-xfail-XPG4/syslog.h/linknamespace = yes
|
test-xfail-XPG4/syslog.h/linknamespace = yes
|
||||||
test-xfail-XPG4/unistd.h/linknamespace = yes
|
test-xfail-XPG4/unistd.h/linknamespace = yes
|
||||||
test-xfail-XPG4/wordexp.h/linknamespace = yes
|
test-xfail-XPG4/wordexp.h/linknamespace = yes
|
||||||
@ -361,13 +360,11 @@ test-xfail-POSIX/semaphore.h/linknamespace = yes
|
|||||||
test-xfail-UNIX98/fmtmsg.h/linknamespace = yes
|
test-xfail-UNIX98/fmtmsg.h/linknamespace = yes
|
||||||
test-xfail-UNIX98/mqueue.h/linknamespace = yes
|
test-xfail-UNIX98/mqueue.h/linknamespace = yes
|
||||||
test-xfail-UNIX98/netdb.h/linknamespace = yes
|
test-xfail-UNIX98/netdb.h/linknamespace = yes
|
||||||
test-xfail-UNIX98/stdlib.h/linknamespace = yes
|
|
||||||
test-xfail-UNIX98/syslog.h/linknamespace = yes
|
test-xfail-UNIX98/syslog.h/linknamespace = yes
|
||||||
test-xfail-UNIX98/unistd.h/linknamespace = yes
|
test-xfail-UNIX98/unistd.h/linknamespace = yes
|
||||||
test-xfail-UNIX98/wchar.h/linknamespace = yes
|
test-xfail-UNIX98/wchar.h/linknamespace = yes
|
||||||
test-xfail-XOPEN2K/fmtmsg.h/linknamespace = yes
|
test-xfail-XOPEN2K/fmtmsg.h/linknamespace = yes
|
||||||
test-xfail-XOPEN2K/netdb.h/linknamespace = yes
|
test-xfail-XOPEN2K/netdb.h/linknamespace = yes
|
||||||
test-xfail-XOPEN2K/stdlib.h/linknamespace = yes
|
|
||||||
test-xfail-XOPEN2K/syslog.h/linknamespace = yes
|
test-xfail-XOPEN2K/syslog.h/linknamespace = yes
|
||||||
test-xfail-POSIX2008/grp.h/linknamespace = yes
|
test-xfail-POSIX2008/grp.h/linknamespace = yes
|
||||||
test-xfail-POSIX2008/netdb.h/linknamespace = yes
|
test-xfail-POSIX2008/netdb.h/linknamespace = yes
|
||||||
|
@ -251,13 +251,13 @@ __APPEND (FUNC_PREFIX, ecvt_r) (value, ndigit, decpt, sign, buf, len)
|
|||||||
# define cvt_symbol(symbol) \
|
# define cvt_symbol(symbol) \
|
||||||
cvt_symbol_1 (libc, __APPEND (FUNC_PREFIX, symbol), \
|
cvt_symbol_1 (libc, __APPEND (FUNC_PREFIX, symbol), \
|
||||||
APPEND (q, symbol), GLIBC_2_0); \
|
APPEND (q, symbol), GLIBC_2_0); \
|
||||||
strong_alias (__APPEND (FUNC_PREFIX, symbol), APPEND (FUNC_PREFIX, symbol))
|
weak_alias (__APPEND (FUNC_PREFIX, symbol), APPEND (FUNC_PREFIX, symbol))
|
||||||
# define cvt_symbol_1(lib, local, symbol, version) \
|
# define cvt_symbol_1(lib, local, symbol, version) \
|
||||||
compat_symbol (lib, local, symbol, version)
|
compat_symbol (lib, local, symbol, version)
|
||||||
# endif
|
# endif
|
||||||
#else
|
#else
|
||||||
# define cvt_symbol(symbol) \
|
# define cvt_symbol(symbol) \
|
||||||
strong_alias (__APPEND (FUNC_PREFIX, symbol), APPEND (FUNC_PREFIX, symbol))
|
weak_alias (__APPEND (FUNC_PREFIX, symbol), APPEND (FUNC_PREFIX, symbol))
|
||||||
#endif
|
#endif
|
||||||
cvt_symbol(fcvt_r);
|
cvt_symbol(fcvt_r);
|
||||||
cvt_symbol(ecvt_r);
|
cvt_symbol(ecvt_r);
|
||||||
|
Loading…
Reference in New Issue
Block a user