This is the mail archive of the
glibc-cvs@sourceware.org
mailing list for the glibc project.
GNU C Library master sources branch master updated. glibc-2.20-177-g01cad84
- From: jsm28 at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 12 Nov 2014 22:38:39 -0000
- Subject: GNU C Library master sources branch master updated. glibc-2.20-177-g01cad84
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 01cad84e1996a6f20bf19609d0554c73f2ee33d5 (commit)
from 939da41143341bbcdd3dd50ee7b57776603da260 (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 -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=01cad84e1996a6f20bf19609d0554c73f2ee33d5
commit 01cad84e1996a6f20bf19609d0554c73f2ee33d5
Author: Joseph Myers <joseph@codesourcery.com>
Date: Wed Nov 12 22:38:11 2014 +0000
Fix __printf_fp wmemset namespace (bug 17574).
__printf_fp calls wmemset, but that is not an ISO C90 function. This
patch fixes it to call a new __wmemset name instead (with wmemset
being a weak alias).
Tested for x86_64 (testsuite, and that disassembly of installed shared
libraries is unchanged by the patch).
[BZ #17574]
* wcsmbs/wmemset.c (wmemset): Rename to __wmemset and define as
weak alias of __wmemset. Use libc_hidden_weak.
(__wmemset): Use libc_hidden_def.
* include/wchar.h (__wmemset): Declare. Use libc_hidden_proto.
* stdio-common/printf_fp.c (___printf_fp): Call __wmemset instead
of wmemset.
diff --git a/ChangeLog b/ChangeLog
index f33d582..56fff4c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,13 @@
2014-11-12 Joseph Myers <joseph@codesourcery.com>
+ [BZ #17574]
+ * wcsmbs/wmemset.c (wmemset): Rename to __wmemset and define as
+ weak alias of __wmemset. Use libc_hidden_weak.
+ (__wmemset): Use libc_hidden_def.
+ * include/wchar.h (__wmemset): Declare. Use libc_hidden_proto.
+ * stdio-common/printf_fp.c (___printf_fp): Call __wmemset instead
+ of wmemset.
+
[BZ #17573]
* include/string.h [NOT_IN_libc || !SHARED] (mempcpy): Declare
with asm name __mempcpy.
diff --git a/NEWS b/NEWS
index befd5e5..222696d 100644
--- a/NEWS
+++ b/NEWS
@@ -11,7 +11,7 @@ Version 2.21
6652, 12926, 14132, 14138, 14171, 15215, 15884, 17266, 17344, 17363,
17370, 17371, 17411, 17460, 17475, 17485, 17501, 17506, 17508, 17522,
- 17555, 17570, 17571, 17572, 17573, 17583, 17584.
+ 17555, 17570, 17571, 17572, 17573, 17574, 17583, 17584.
* New locales: tu_IN, bh_IN.
diff --git a/include/wchar.h b/include/wchar.h
index f927a95..8207a53 100644
--- a/include/wchar.h
+++ b/include/wchar.h
@@ -88,8 +88,10 @@ libc_hidden_proto (wcschr)
libc_hidden_proto (wcscoll)
libc_hidden_proto (wcspbrk)
+extern typeof (wmemset) __wmemset;
libc_hidden_proto (wmemchr)
libc_hidden_proto (wmemset)
+libc_hidden_proto (__wmemset)
/* Now define the internal interfaces. */
extern int __wcscasecmp (const wchar_t *__s1, const wchar_t *__s2)
diff --git a/stdio-common/printf_fp.c b/stdio-common/printf_fp.c
index c8061cb..406180c 100644
--- a/stdio-common/printf_fp.c
+++ b/stdio-common/printf_fp.c
@@ -1112,7 +1112,7 @@ ___printf_fp (FILE *fp,
wstartp[1] = decimalwc;
if (wcp >= wstartp + 2)
{
- wmemset (wstartp + 6, L'0', wcp - (wstartp + 2));
+ __wmemset (wstartp + 6, L'0', wcp - (wstartp + 2));
wcp += 4;
}
else
diff --git a/wcsmbs/wmemset.c b/wcsmbs/wmemset.c
index c499545..a80b815 100644
--- a/wcsmbs/wmemset.c
+++ b/wcsmbs/wmemset.c
@@ -20,7 +20,7 @@
wchar_t *
-wmemset (s, c, n)
+__wmemset (s, c, n)
wchar_t *s;
wchar_t c;
size_t n;
@@ -52,4 +52,6 @@ wmemset (s, c, n)
return s;
}
-libc_hidden_def (wmemset)
+libc_hidden_def (__wmemset)
+weak_alias (__wmemset, wmemset)
+libc_hidden_weak (wmemset)
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 8 ++++++++
NEWS | 2 +-
include/wchar.h | 2 ++
stdio-common/printf_fp.c | 2 +-
wcsmbs/wmemset.c | 6 ++++--
5 files changed, 16 insertions(+), 4 deletions(-)
hooks/post-receive
--
GNU C Library master sources