mirror of
git://sourceware.org/git/glibc.git
synced 2024-11-27 03:41:23 +08:00
* sysdeps/ieee754/ldbl-opt/nldbl-compat.h (NLDBL_HIDDEN): Removed.
(NLDBL_DECL): Rewritten. Remove __THROW from NLDBL_DECL uses. Use NLDBL_DECL for __vstrfmon, __vstrfmon_l. * sysdeps/ieee754/ldbl-opt/nldbl-asinh.c: Restore attribute_hidden. 2006-01-14 Jakub Jelinek <jakub@redhat.com> * misc/sys/cdefs.h (__LDBL_REDIR1_DECL): Define. (__LDBL_REDIR_DECL): Stringize __nldbl and name. * stdlib/bits/monetary-ldbl.h: Remove pastos from wchar-ldbl.h. (strfmon, strfmon_l): Add __LDBL_REDIR_DECL. * stdlib/bits/stdlib-ldbl.h (strtold, strtold_l, __strtold_internal, qecvt, qfcvt, qgcvt, qecvt_r, qfcvt_r): Use __LDBL_REDIR1_DECL instead of __LDBL_REDIR_DECL. * wcsmbs/bits/wchar-ldbl.h: Remove stale #if. (__LDBL_REDIR_WCHAR): Remove. (fwprintf, wprintf, swprintf, vfwprintf, vwprintf, vswprintf, fwscanf, wscanf, swscanf, vfwscanf, vwscanf, vswscanf): Use __LDBL_REDIR_DECL instead of __LDBL_REDIR_WCHAR. (wcstold, wcstold_l, __wcstold_internal): Add __LDBL_REDIR1_DECL. * wcsmbs/wchar.h: Include bits/wchar-ldbl.h after bits/wchar2.h instead of before it. (wcstold inline): Move #ifndef __LDBL_COMPAT before extern keyword. * libio/bits/stdio-ldbl.h (__snprintf_chk, __vsnprintf_chk): Add __LDBL_REDIR_DECL. * misc/bits/syslog-ldbl.h (vsyslog): Protect with #ifdef __USE_BSD. (__syslog_chk, __vsyslog_chk): Add __LDBL_REDIR_DECL. 2006-01-14 Roland McGrath <roland@redhat.com>
This commit is contained in:
parent
5c9c640889
commit
54e98f69e0
33
ChangeLog
33
ChangeLog
@ -1,3 +1,36 @@
|
||||
2006-01-14 Roland McGrath <roland@redhat.com>
|
||||
|
||||
* sysdeps/ieee754/ldbl-opt/nldbl-compat.h (NLDBL_HIDDEN): Removed.
|
||||
(NLDBL_DECL): Rewritten.
|
||||
Remove __THROW from NLDBL_DECL uses.
|
||||
Use NLDBL_DECL for __vstrfmon, __vstrfmon_l.
|
||||
|
||||
* sysdeps/ieee754/ldbl-opt/nldbl-asinh.c: Restore attribute_hidden.
|
||||
|
||||
2006-01-14 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* misc/sys/cdefs.h (__LDBL_REDIR1_DECL): Define.
|
||||
(__LDBL_REDIR_DECL): Stringize __nldbl and name.
|
||||
* stdlib/bits/monetary-ldbl.h: Remove pastos from wchar-ldbl.h.
|
||||
(strfmon, strfmon_l): Add __LDBL_REDIR_DECL.
|
||||
* stdlib/bits/stdlib-ldbl.h (strtold, strtold_l, __strtold_internal,
|
||||
qecvt, qfcvt, qgcvt, qecvt_r, qfcvt_r): Use __LDBL_REDIR1_DECL
|
||||
instead of __LDBL_REDIR_DECL.
|
||||
* wcsmbs/bits/wchar-ldbl.h: Remove stale #if.
|
||||
(__LDBL_REDIR_WCHAR): Remove.
|
||||
(fwprintf, wprintf, swprintf, vfwprintf, vwprintf, vswprintf,
|
||||
fwscanf, wscanf, swscanf, vfwscanf, vwscanf, vswscanf): Use
|
||||
__LDBL_REDIR_DECL instead of __LDBL_REDIR_WCHAR.
|
||||
(wcstold, wcstold_l, __wcstold_internal): Add __LDBL_REDIR1_DECL.
|
||||
* wcsmbs/wchar.h: Include bits/wchar-ldbl.h after bits/wchar2.h
|
||||
instead of before it.
|
||||
(wcstold inline): Move #ifndef __LDBL_COMPAT before
|
||||
extern keyword.
|
||||
* libio/bits/stdio-ldbl.h (__snprintf_chk, __vsnprintf_chk): Add
|
||||
__LDBL_REDIR_DECL.
|
||||
* misc/bits/syslog-ldbl.h (vsyslog): Protect with #ifdef __USE_BSD.
|
||||
(__syslog_chk, __vsyslog_chk): Add __LDBL_REDIR_DECL.
|
||||
|
||||
2006-01-14 Roland McGrath <roland@redhat.com>
|
||||
|
||||
* sysdeps/ieee754/ldbl-opt/nldbl-compat.h (NLDBL_DECL): Fix typo.
|
||||
|
@ -61,6 +61,10 @@ __LDBL_REDIR_DECL (obstack_vprintf)
|
||||
#if __USE_FORTIFY_LEVEL > 0 && !defined __cplusplus
|
||||
__LDBL_REDIR_DECL (__sprintf_chk)
|
||||
__LDBL_REDIR_DECL (__vsprintf_chk)
|
||||
# if defined __USE_BSD || defined __USE_ISOC99 || defined __USE_UNIX98
|
||||
__LDBL_REDIR_DECL (__snprintf_chk)
|
||||
__LDBL_REDIR_DECL (__vsnprintf_chk)
|
||||
# endif
|
||||
# if __USE_FORTIFY_LEVEL > 1
|
||||
__LDBL_REDIR_DECL (__fprintf_chk)
|
||||
__LDBL_REDIR_DECL (__printf_chk)
|
||||
|
@ -22,4 +22,15 @@
|
||||
#endif
|
||||
|
||||
__LDBL_REDIR_DECL (syslog)
|
||||
|
||||
#ifdef __USE_BSD
|
||||
__LDBL_REDIR_DECL (vsyslog)
|
||||
#endif
|
||||
|
||||
#if __USE_FORTIFY_LEVEL > 0 && !defined __cplusplus
|
||||
__LDBL_REDIR_DECL (__syslog_chk)
|
||||
|
||||
# ifdef __USE_BSD
|
||||
__LDBL_REDIR_DECL (__vsyslog_chk)
|
||||
# endif
|
||||
#endif
|
||||
|
@ -321,8 +321,10 @@
|
||||
# define __LDBL_REDIR1_NTH(name, proto, alias) __REDIRECT_NTH (name, proto, alias)
|
||||
# define __LDBL_REDIR_NTH(name, proto) \
|
||||
__LDBL_REDIR1_NTH (name, proto, __nldbl_##name)
|
||||
# define __LDBL_REDIR1_DECL(name, alias) \
|
||||
extern __typeof (name) name __asm (__ASMNAME (#alias));
|
||||
# define __LDBL_REDIR_DECL(name) \
|
||||
extern __typeof (name) name __asm (__ASMNAME (__nldbl_##name));
|
||||
extern __typeof (name) name __asm (__ASMNAME ("__nldbl_" #name));
|
||||
# endif
|
||||
#endif
|
||||
#if !defined __LDBL_COMPAT || !defined __REDIRECT
|
||||
|
@ -21,40 +21,8 @@
|
||||
# error "Never include <bits/monetary-ldbl.h> directly; use <monetary.h> instead."
|
||||
#endif
|
||||
|
||||
#if defined __LDBL_COMPAT && defined __GNUC__ && __GNUC__ >= 2
|
||||
__LDBL_REDIR_DECL (strfmon)
|
||||
|
||||
# define __LDBL_REDIR_WCHAR(name) \
|
||||
extern __typeof (name) name __asm (__ASMNAME (__nldbl_##name))
|
||||
|
||||
# if defined __USE_ISOC99 || defined __USE_UNIX98
|
||||
__BEGIN_NAMESPACE_C99
|
||||
__LDBL_REDIR_WCHAR (fwprintf);
|
||||
__LDBL_REDIR_WCHAR (wprintf);
|
||||
__LDBL_REDIR_WCHAR (swprintf);
|
||||
__LDBL_REDIR_WCHAR (vfwprintf);
|
||||
__LDBL_REDIR_WCHAR (vwprintf);
|
||||
__LDBL_REDIR_WCHAR (vswprintf);
|
||||
__LDBL_REDIR_WCHAR (fwscanf);
|
||||
__LDBL_REDIR_WCHAR (wscanf);
|
||||
__LDBL_REDIR_WCHAR (swscanf);
|
||||
__END_NAMESPACE_C99
|
||||
# endif
|
||||
|
||||
# ifdef __USE_ISOC99
|
||||
__BEGIN_NAMESPACE_C99
|
||||
__LDBL_REDIR_WCHAR (vfwscanf);
|
||||
__LDBL_REDIR_WCHAR (vwscanf);
|
||||
__LDBL_REDIR_WCHAR (vswscanf);
|
||||
__END_NAMESPACE_C99
|
||||
# endif
|
||||
|
||||
#if __USE_FORTIFY_LEVEL > 0 && !defined __cplusplus
|
||||
__LDBL_REDIR_DECL (__swprintf_chk)
|
||||
__LDBL_REDIR_DECL (__vswprintf_chk)
|
||||
# if __USE_FORTIFY_LEVEL > 1
|
||||
__LDBL_REDIR_DECL (__fwprintf_chk)
|
||||
__LDBL_REDIR_DECL (__wprintf_chk)
|
||||
__LDBL_REDIR_DECL (__vfwprintf_chk)
|
||||
__LDBL_REDIR_DECL (__vwprintf_chk)
|
||||
# endif
|
||||
#ifdef __USE_GNU
|
||||
__LDBL_REDIR_DECL (strfmon_l)
|
||||
#endif
|
||||
|
@ -23,20 +23,20 @@
|
||||
|
||||
#ifdef __USE_ISOC99
|
||||
__BEGIN_NAMESPACE_C99
|
||||
__LDBL_REDIR_DECL (strtold)
|
||||
__LDBL_REDIR1_DECL (strtold, strtod)
|
||||
__END_NAMESPACE_C99
|
||||
#endif
|
||||
|
||||
#ifdef __USE_GNU
|
||||
__LDBL_REDIR_DECL (strtold_l)
|
||||
__LDBL_REDIR1_DECL (strtold_l, strtod_l)
|
||||
#endif
|
||||
|
||||
__LDBL_REDIR_DECL (__strtold_internal)
|
||||
__LDBL_REDIR1_DECL (__strtold_internal, __strtod_internal)
|
||||
|
||||
#ifdef __USE_MISC
|
||||
__LDBL_REDIR_DECL (qecvt)
|
||||
__LDBL_REDIR_DECL (qfcvt)
|
||||
__LDBL_REDIR_DECL (qgcvt)
|
||||
__LDBL_REDIR_DECL (qecvt_r)
|
||||
__LDBL_REDIR_DECL (qfcvt_r)
|
||||
__LDBL_REDIR1_DECL (qecvt, ecvt)
|
||||
__LDBL_REDIR1_DECL (qfcvt, fcvt)
|
||||
__LDBL_REDIR1_DECL (qgcvt, gcvt)
|
||||
__LDBL_REDIR1_DECL (qecvt_r, ecvt_r)
|
||||
__LDBL_REDIR1_DECL (qfcvt_r, fcvt_r)
|
||||
#endif
|
||||
|
@ -1,6 +1,7 @@
|
||||
#include "nldbl-compat.h"
|
||||
|
||||
double
|
||||
attribute_hidden
|
||||
asinhl (double x)
|
||||
{
|
||||
return asinh (x);
|
||||
|
@ -32,60 +32,54 @@
|
||||
#include <monetary.h>
|
||||
#include <sys/syslog.h>
|
||||
|
||||
#ifdef SHARED
|
||||
# define NLDBL_HIDDEN
|
||||
#else
|
||||
# define NLDBL_HIDDEN attribute_hidden
|
||||
#endif
|
||||
|
||||
/* Declare the __nldbl_NAME function the wrappers call that's in libc.so,
|
||||
and then redeclare NAME to mark it hidden for the nldbl-*.c definition. */
|
||||
#define NLDBL_DECL(name) \
|
||||
extern __typeof (name) __nldbl_##name NLDBL_HIDDEN
|
||||
extern __typeof (name) __nldbl_##name; \
|
||||
extern __typeof (name) name attribute_hidden
|
||||
|
||||
NLDBL_DECL (_IO_vfscanf);
|
||||
NLDBL_DECL (vfscanf);
|
||||
NLDBL_DECL (vfwscanf);
|
||||
NLDBL_DECL (obstack_vprintf) __THROW;
|
||||
NLDBL_DECL (vasprintf) __THROW;
|
||||
NLDBL_DECL (obstack_vprintf);
|
||||
NLDBL_DECL (vasprintf);
|
||||
NLDBL_DECL (dprintf);
|
||||
NLDBL_DECL (vdprintf);
|
||||
NLDBL_DECL (fprintf);
|
||||
NLDBL_DECL (vfprintf);
|
||||
NLDBL_DECL (vfwprintf);
|
||||
NLDBL_DECL (vsnprintf) __THROW;
|
||||
NLDBL_DECL (vsprintf) __THROW;
|
||||
NLDBL_DECL (vsscanf) __THROW;
|
||||
NLDBL_DECL (vswprintf) __THROW;
|
||||
NLDBL_DECL (vswscanf) __THROW;
|
||||
NLDBL_DECL (vsnprintf);
|
||||
NLDBL_DECL (vsprintf);
|
||||
NLDBL_DECL (vsscanf);
|
||||
NLDBL_DECL (vswprintf);
|
||||
NLDBL_DECL (vswscanf);
|
||||
NLDBL_DECL (__asprintf);
|
||||
NLDBL_DECL (asprintf);
|
||||
NLDBL_DECL (__printf_fp);
|
||||
NLDBL_DECL (printf_size) __THROW;
|
||||
NLDBL_DECL (printf_size);
|
||||
NLDBL_DECL (syslog);
|
||||
NLDBL_DECL (vsyslog);
|
||||
NLDBL_DECL (qecvt);
|
||||
NLDBL_DECL (qfcvt);
|
||||
NLDBL_DECL (qgcvt);
|
||||
NLDBL_DECL (__vstrfmon);
|
||||
NLDBL_DECL (__vstrfmon_l);
|
||||
|
||||
/* These don't use __typeof because they were not declared by the headers,
|
||||
since we don't compile with _FORTIFY_SOURCE. */
|
||||
extern int __nldbl___vfprintf_chk (FILE *__restrict, int,
|
||||
const char *__restrict, _G_va_list)
|
||||
NLDBL_HIDDEN;
|
||||
const char *__restrict, _G_va_list);
|
||||
extern int __nldbl___vfwprintf_chk (FILE *__restrict, int,
|
||||
const wchar_t *__restrict, __gnuc_va_list)
|
||||
NLDBL_HIDDEN;
|
||||
const wchar_t *__restrict, __gnuc_va_list);
|
||||
extern int __nldbl___vsprintf_chk (char *__restrict, int, size_t,
|
||||
const char *__restrict, _G_va_list) __THROW
|
||||
NLDBL_HIDDEN;
|
||||
const char *__restrict, _G_va_list) __THROW;
|
||||
extern int __nldbl___vsnprintf_chk (char *__restrict, size_t, int, size_t,
|
||||
const char *__restrict, _G_va_list)
|
||||
__THROW NLDBL_HIDDEN;
|
||||
__THROW;
|
||||
extern int __nldbl___vswprintf_chk (wchar_t *__restrict, size_t, int, size_t,
|
||||
const wchar_t *__restrict, __gnuc_va_list)
|
||||
__THROW NLDBL_HIDDEN;
|
||||
extern void __nldbl___vsyslog_chk (int, int, const char *, va_list)
|
||||
NLDBL_HIDDEN;
|
||||
extern ssize_t __nldbl___vstrfmon (char *, size_t, const char *, va_list)
|
||||
__THROW NLDBL_HIDDEN;
|
||||
extern ssize_t __nldbl___vstrfmon_l (char *, size_t, __locale_t,
|
||||
const char *, va_list)
|
||||
__THROW NLDBL_HIDDEN;
|
||||
__THROW;
|
||||
|
||||
|
||||
#endif /* __NLDBL_COMPAT_H */
|
||||
|
@ -21,32 +21,34 @@
|
||||
# error "Never include <bits/wchar-ldbl.h> directly; use <wchar.h> instead."
|
||||
#endif
|
||||
|
||||
#if defined __LDBL_COMPAT && defined __GNUC__ && __GNUC__ >= 2
|
||||
|
||||
# define __LDBL_REDIR_WCHAR(name) \
|
||||
extern __typeof (name) name __asm (__ASMNAME (__nldbl_##name))
|
||||
|
||||
# if defined __USE_ISOC99 || defined __USE_UNIX98
|
||||
#if defined __USE_ISOC99 || defined __USE_UNIX98
|
||||
__BEGIN_NAMESPACE_C99
|
||||
__LDBL_REDIR_WCHAR (fwprintf);
|
||||
__LDBL_REDIR_WCHAR (wprintf);
|
||||
__LDBL_REDIR_WCHAR (swprintf);
|
||||
__LDBL_REDIR_WCHAR (vfwprintf);
|
||||
__LDBL_REDIR_WCHAR (vwprintf);
|
||||
__LDBL_REDIR_WCHAR (vswprintf);
|
||||
__LDBL_REDIR_WCHAR (fwscanf);
|
||||
__LDBL_REDIR_WCHAR (wscanf);
|
||||
__LDBL_REDIR_WCHAR (swscanf);
|
||||
__LDBL_REDIR_DECL (fwprintf);
|
||||
__LDBL_REDIR_DECL (wprintf);
|
||||
__LDBL_REDIR_DECL (swprintf);
|
||||
__LDBL_REDIR_DECL (vfwprintf);
|
||||
__LDBL_REDIR_DECL (vwprintf);
|
||||
__LDBL_REDIR_DECL (vswprintf);
|
||||
__LDBL_REDIR_DECL (fwscanf);
|
||||
__LDBL_REDIR_DECL (wscanf);
|
||||
__LDBL_REDIR_DECL (swscanf);
|
||||
__END_NAMESPACE_C99
|
||||
# endif
|
||||
#endif
|
||||
|
||||
# ifdef __USE_ISOC99
|
||||
#ifdef __USE_ISOC99
|
||||
__BEGIN_NAMESPACE_C99
|
||||
__LDBL_REDIR_WCHAR (vfwscanf);
|
||||
__LDBL_REDIR_WCHAR (vwscanf);
|
||||
__LDBL_REDIR_WCHAR (vswscanf);
|
||||
__LDBL_REDIR1_DECL (wcstold, wcstod);
|
||||
__LDBL_REDIR_DECL (vfwscanf);
|
||||
__LDBL_REDIR_DECL (vwscanf);
|
||||
__LDBL_REDIR_DECL (vswscanf);
|
||||
__END_NAMESPACE_C99
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifdef __USE_GNU
|
||||
__LDBL_REDIR1_DECL (wcstold_l, wcstod_l);
|
||||
#endif
|
||||
|
||||
__LDBL_REDIR1_DECL (__wcstold_internal, __wcstod_internal);
|
||||
|
||||
#if __USE_FORTIFY_LEVEL > 0 && !defined __cplusplus
|
||||
__LDBL_REDIR_DECL (__swprintf_chk)
|
||||
|
@ -561,8 +561,8 @@ extern __inline float
|
||||
__NTH (wcstof (__const wchar_t *__restrict __nptr,
|
||||
wchar_t **__restrict __endptr))
|
||||
{ return __wcstof_internal (__nptr, __endptr, 0); }
|
||||
extern __inline long double
|
||||
# ifndef __LDBL_COMPAT
|
||||
extern __inline long double
|
||||
__NTH (wcstold (__const wchar_t *__restrict __nptr,
|
||||
wchar_t **__restrict __endptr))
|
||||
{ return __wcstold_internal (__nptr, __endptr, 0); }
|
||||
@ -833,16 +833,15 @@ extern size_t wcsftime_l (wchar_t *__restrict __s, size_t __maxsize,
|
||||
# include <wctype.h>
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef __LDBL_COMPAT
|
||||
# include <bits/wchar-ldbl.h>
|
||||
#endif
|
||||
|
||||
/* Define some macros helping to catch buffer overflows. */
|
||||
#if __USE_FORTIFY_LEVEL > 0 && !defined __cplusplus
|
||||
# include <bits/wchar2.h>
|
||||
#endif
|
||||
|
||||
#ifdef __LDBL_COMPAT
|
||||
# include <bits/wchar-ldbl.h>
|
||||
#endif
|
||||
|
||||
__END_DECLS
|
||||
|
||||
#endif /* _WCHAR_H defined */
|
||||
|
Loading…
Reference in New Issue
Block a user