Use libc_hidden_* for strtoumax (bug 15105)
Commit Message
On sparc, localplt test failures appear when building with -Os because
of a call to strtoumax from
sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c, and strtoumax
is not inlined when building with -Os. This patch fixes those
failures by using libc_hidden_proto and libc_hidden_def for strtoumax.
Tested with build-many-glibcs.py for
sparc64-linux-gnu-disable-multi-arch, sparc64-linux-gnu,
sparcv9-linux-gnu-disable-multi-arch, sparcv9-linux-gnu that this
fixes that test failure with -Os.
2018-02-27 Joseph Myers <joseph@codesourcery.com>
[BZ #15105]
* sysdeps/wordsize-32/strtoumax.c (strtoumax): Use
libc_hidden_def.
* sysdeps/wordsize-64/strtoumax.c (strtoumax): Likewise.
* include/inttypes.h: New file.
Comments
On Feb 27 2018, Joseph Myers <joseph@codesourcery.com> wrote:
> [BZ #15105]
> * sysdeps/wordsize-32/strtoumax.c (strtoumax): Use
> libc_hidden_def.
> * sysdeps/wordsize-64/strtoumax.c (strtoumax): Likewise.
> * include/inttypes.h: New file.
Ok.
Andreas.
new file mode 100644
@@ -0,0 +1,6 @@
+#ifndef _INTTYPES_H
+#include_next <inttypes.h>
+#ifndef _ISOMAC
+libc_hidden_proto (strtoumax)
+#endif
+#endif
@@ -25,3 +25,4 @@ strtoumax (const char *__restrict nptr, char **__restrict endptr, int base)
{
return __strtoull_internal (nptr, endptr, base, 0);
}
+libc_hidden_def (strtoumax)
@@ -25,3 +25,4 @@ strtoumax (const char *__restrict nptr, char **__restrict endptr, int base)
{
return __strtoul_internal (nptr, endptr, base, 0);
}
+libc_hidden_def (strtoumax)