[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[commits] r3697 - in /fsf/trunk/libc: ./ localedata/ misc/sys/ string/bits/ wcsmbs/bits/



Author: eglibc
Date: Thu Oct  4 00:03:10 2007
New Revision: 3697

Log:
Import glibc-mainline for 2007-10-04

Modified:
    fsf/trunk/libc/ChangeLog
    fsf/trunk/libc/localedata/ChangeLog
    fsf/trunk/libc/localedata/tst-langinfo.sh
    fsf/trunk/libc/misc/sys/cdefs.h
    fsf/trunk/libc/string/bits/string3.h
    fsf/trunk/libc/wcsmbs/bits/wchar2.h

Modified: fsf/trunk/libc/ChangeLog
==============================================================================
--- fsf/trunk/libc/ChangeLog (original)
+++ fsf/trunk/libc/ChangeLog Thu Oct  4 00:03:10 2007
@@ -1,3 +1,16 @@
+2007-10-03  Jakub Jelinek
+
+	* string/bits/string3.h (memcpy, memmove, mempcpy, memset, bcopy,
+	bzero, strcpy, stpcpy, strncpy, strcat, strncat): Use
+	__extern_always_inline functions unconditionally, drop macros.
+
+	* misc/sys/cdefs.h (__REDIRECT_LDBL, __REDIRECT_NTH_LDBL): New macros.
+	* wcsmbs/bits/wchar2.h (__swprintf_alias, __vswprintf_alias): Use
+	__REDIRECT_NTH_LDBL macro rather than __REDIRECT_NTH.
+
+	* misc/sys/cdefs.h (__extern_always_inline): For GCC 4.3+
+	add __artificial__ attribute.
+
 2007-10-02  Ulrich Drepper  <drepper@xxxxxxxxxx>
 
 	* string/strcoll_l.c (STRCOLL): Correct handling of switching from

Modified: fsf/trunk/libc/localedata/ChangeLog
==============================================================================
--- fsf/trunk/libc/localedata/ChangeLog (original)
+++ fsf/trunk/libc/localedata/ChangeLog Thu Oct  4 00:03:10 2007
@@ -1,3 +1,7 @@
+2007-10-04  Jakub Jelinek  <jakub@xxxxxxxxxx>
+
+	* tst-langinfo.sh: Update expected THOUSEP for fr_FR.
+
 2007-10-02  Ulrich Drepper  <drepper@xxxxxxxxxx>
 
 	* charmaps/UTF-8: Fix U06FF definition.  Remove double U074A

Modified: fsf/trunk/libc/localedata/tst-langinfo.sh
==============================================================================
--- fsf/trunk/libc/localedata/tst-langinfo.sh (original)
+++ fsf/trunk/libc/localedata/tst-langinfo.sh Thu Oct  4 00:03:10 2007
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Test nl_langinfo.
-# Copyright (C) 2000, 2001, 2003 Free Software Foundation, Inc.
+# Copyright (C) 2000, 2001, 2003, 2007 Free Software Foundation, Inc.
 # This file is part of the GNU C Library.
 #
 
@@ -287,7 +287,7 @@
 fr_FR.ISO-8859-1     D_FMT       "%d.%m.%Y"
 fr_FR.ISO-8859-1     T_FMT       "%T"
 fr_FR.ISO-8859-1     RADIXCHAR   ,
-fr_FR.ISO-8859-1     THOUSEP     ""
+fr_FR.ISO-8859-1     THOUSEP     " "
 fr_FR.ISO-8859-1     YESEXPR     ^[oOyY].*
 fr_FR.ISO-8859-1     NOEXPR      ^[nN].*
 ja_JP.EUC-JP         ABDAY_1     Æü

Modified: fsf/trunk/libc/misc/sys/cdefs.h
==============================================================================
--- fsf/trunk/libc/misc/sys/cdefs.h (original)
+++ fsf/trunk/libc/misc/sys/cdefs.h Thu Oct  4 00:03:10 2007
@@ -294,8 +294,13 @@
 #if !defined __cplusplus || __GNUC_PREREQ (4,3)
 # if defined __GNUC_STDC_INLINE__ || defined __cplusplus
 #  define __extern_inline extern __inline __attribute__ ((__gnu_inline__))
-#  define __extern_always_inline \
+#  if __GNUC_PREREQ (4,3)
+#   define __extern_always_inline \
+  extern __always_inline __attribute__ ((__gnu_inline__, __artificial__))
+#  else
+#   define __extern_always_inline \
   extern __always_inline __attribute__ ((__gnu_inline__))
+#  endif
 # else
 #  define __extern_inline extern __inline
 #  define __extern_always_inline extern __always_inline
@@ -355,6 +360,10 @@
   extern __typeof (name) name __asm (__ASMNAME (#alias));
 #  define __LDBL_REDIR_DECL(name) \
   extern __typeof (name) name __asm (__ASMNAME ("__nldbl_" #name));
+#  define __REDIRECT_LDBL(name, proto, alias) \
+  __LDBL_REDIR1 (name, proto, __nldbl_##alias)
+#  define __REDIRECT_NTH_LDBL(name, proto, alias) \
+  __LDBL_REDIR1_NTH (name, proto, __nldbl_##alias)
 # endif
 #endif
 #if !defined __LDBL_COMPAT || !defined __REDIRECT
@@ -363,6 +372,11 @@
 # define __LDBL_REDIR1_NTH(name, proto, alias) name proto __THROW
 # define __LDBL_REDIR_NTH(name, proto) name proto __THROW
 # define __LDBL_REDIR_DECL(name)
+# ifdef __REDIRECT
+#  define __REDIRECT_LDBL(name, proto, alias) __REDIRECT (name, proto, alias)
+#  define __REDIRECT_NTH_LDBL(name, proto, alias) \
+  __REDIRECT_NTH (name, proto, alias)
+# endif
 #endif
 
 #endif	 /* sys/cdefs.h */

Modified: fsf/trunk/libc/string/bits/string3.h
==============================================================================
--- fsf/trunk/libc/string/bits/string3.h (original)
+++ fsf/trunk/libc/string/bits/string3.h Thu Oct  4 00:03:10 2007
@@ -45,65 +45,27 @@
 #endif
 
 
-#ifdef __cplusplus
 __extern_always_inline void *
 __NTH (memcpy (void *__restrict __dest, __const void *__restrict __src,
 	       size_t __len))
 {
   return __builtin___memcpy_chk (__dest, __src, __len, __bos0 (__dest));
 }
-#else
-# define memcpy(dest, src, len) \
-  ((__bos0 (dest) != (size_t) -1)					\
-   ? __builtin___memcpy_chk (dest, src, len, __bos0 (dest))		\
-   : __memcpy_ichk (dest, src, len))
-static __always_inline void *
-__NTH (__memcpy_ichk (void *__restrict __dest, __const void *__restrict __src,
-		      size_t __len))
-{
-  return __builtin___memcpy_chk (__dest, __src, __len, __bos0 (__dest));
-}
-#endif
 
-#ifdef __cplusplus
 __extern_always_inline void *
 __NTH (memmove (void *__restrict __dest, __const void *__restrict __src,
 		size_t __len))
 {
   return __builtin___memmove_chk (__dest, __src, __len, __bos0 (__dest));
 }
-#else
-# define memmove(dest, src, len) \
-  ((__bos0 (dest) != (size_t) -1)					\
-   ? __builtin___memmove_chk (dest, src, len, __bos0 (dest))		\
-   : __memmove_ichk (dest, src, len))
-static __always_inline void *
-__NTH (__memmove_ichk (void *__dest, __const void *__src, size_t __len))
-{
-  return __builtin___memmove_chk (__dest, __src, __len, __bos0 (__dest));
-}
-#endif
 
 #ifdef __USE_GNU
-# ifdef __cplusplus
 __extern_always_inline void *
 __NTH (mempcpy (void *__restrict __dest, __const void *__restrict __src,
 		size_t __len))
 {
   return __builtin___mempcpy_chk (__dest, __src, __len, __bos0 (__dest));
 }
-# else
-#  define mempcpy(dest, src, len) \
-  ((__bos0 (dest) != (size_t) -1)					\
-   ? __builtin___mempcpy_chk (dest, src, len, __bos0 (dest))		\
-   : __mempcpy_ichk (dest, src, len))
-static __always_inline void *
-__NTH (__mempcpy_ichk (void *__restrict __dest,
-		       __const void *__restrict __src, size_t __len))
-{
-  return __builtin___mempcpy_chk (__dest, __src, __len, __bos0 (__dest));
-}
-# endif
 #endif
 
 
@@ -112,7 +74,6 @@
    especially problematic if the intended fill value is zero.  In this
    case no work is done at all.  We detect these problems by referring
    non-existing functions.  */
-#ifdef __cplusplus
 __extern_always_inline void *
 __NTH (memset (void *__dest, int __ch, size_t __len))
 {
@@ -123,103 +84,43 @@
     }
   return __builtin___memset_chk (__dest, __ch, __len, __bos0 (__dest));
 }
-#else
-# define memset(dest, ch, len) \
-  (__builtin_constant_p (len) && (len) == 0				      \
-   ? (__warn_memset_zero_len (), (void) (ch), (void) (len), (void *) (dest))  \
-   : ((__bos0 (dest) != (size_t) -1)					      \
-      ? __builtin___memset_chk (dest, ch, len, __bos0 (dest))		      \
-      : __memset_ichk (dest, ch, len)))
-static __always_inline void *
-__NTH (__memset_ichk (void *__dest, int __ch, size_t __len))
-{
-  return __builtin___memset_chk (__dest, __ch, __len, __bos0 (__dest));
-}
-#endif
 
 #ifdef __USE_BSD
-# ifdef __cplusplus
 __extern_always_inline void
 __NTH (bcopy (__const void *__restrict __src, void *__restrict __dest,
 	      size_t __len))
 {
-  __builtin___memmove_chk (__dest, __src, __len, __bos0 (__dest));
+  (void) __builtin___memmove_chk (__dest, __src, __len, __bos0 (__dest));
 }
+
 __extern_always_inline void
 __NTH (bzero (void *__dest, size_t __len))
 {
-  __builtin___memset_chk (__dest, '\0', __len, __bos0 (__dest));
+  (void) __builtin___memset_chk (__dest, '\0', __len, __bos0 (__dest));
 }
-# else
-#  define bcopy(src, dest, len) ((void) \
-  ((__bos0 (dest) != (size_t) -1)					\
-   ? __builtin___memmove_chk (dest, src, len, __bos0 (dest))		\
-   : __memmove_ichk (dest, src, len)))
-#  define bzero(dest, len) ((void) \
-  ((__bos0 (dest) != (size_t) -1)					\
-   ? __builtin___memset_chk (dest, '\0', len, __bos0 (dest))		\
-   : __memset_ichk (dest, '\0', len)))
-# endif
 #endif
 
-#ifdef __cplusplus
 __extern_always_inline char *
 __NTH (strcpy (char *__restrict __dest, __const char *__restrict __src))
 {
   return __builtin___strcpy_chk (__dest, __src, __bos (__dest));
 }
-#else
-# define strcpy(dest, src) \
-  ((__bos (dest) != (size_t) -1)					\
-   ? __builtin___strcpy_chk (dest, src, __bos (dest))			\
-   : __strcpy_ichk (dest, src))
-static __always_inline char *
-__NTH (__strcpy_ichk (char *__restrict __dest, __const char *__restrict __src))
-{
-  return __builtin___strcpy_chk (__dest, __src, __bos (__dest));
-}
-#endif
 
 #ifdef __USE_GNU
-# ifdef __cplusplus
 __extern_always_inline char *
 __NTH (stpcpy (char *__restrict __dest, __const char *__restrict __src))
 {
   return __builtin___stpcpy_chk (__dest, __src, __bos (__dest));
 }
-# else
-#  define stpcpy(dest, src) \
-  ((__bos (dest) != (size_t) -1)					\
-   ? __builtin___stpcpy_chk (dest, src, __bos (dest))			\
-   : __stpcpy_ichk (dest, src))
-static __always_inline char *
-__NTH (__stpcpy_ichk (char *__restrict __dest, __const char *__restrict __src))
-{
-  return __builtin___stpcpy_chk (__dest, __src, __bos (__dest));
-}
-# endif
 #endif
 
 
-#ifdef __cplusplus
 __extern_always_inline char *
 __NTH (strncpy (char *__restrict __dest, __const char *__restrict __src,
 		size_t __len))
 {
   return __builtin___strncpy_chk (__dest, __src, __len, __bos (__dest));
 }
-#else
-# define strncpy(dest, src, len) \
-  ((__bos (dest) != (size_t) -1)					\
-   ? __builtin___strncpy_chk (dest, src, len, __bos (dest))		\
-   : __strncpy_ichk (dest, src, len))
-static __always_inline char *
-__NTH (__strncpy_ichk (char *__restrict __dest, __const char *__restrict __src,
-		       size_t __len))
-{
-  return __builtin___strncpy_chk (__dest, __src, __len, __bos (__dest));
-}
-#endif
 
 // XXX We have no corresponding builtin yet.
 extern char *__stpncpy_chk (char *__dest, __const char *__src, size_t __n,
@@ -238,41 +139,16 @@
 }
 
 
-#ifdef __cplusplus
 __extern_always_inline char *
 __NTH (strcat (char *__restrict __dest, __const char *__restrict __src))
 {
   return __builtin___strcat_chk (__dest, __src, __bos (__dest));
 }
-#else
-# define strcat(dest, src) \
-  ((__bos (dest) != (size_t) -1)					\
-   ? __builtin___strcat_chk (dest, src, __bos (dest))			\
-   : __strcat_ichk (dest, src))
-static __always_inline char *
-__NTH (__strcat_ichk (char *__restrict __dest, __const char *__restrict __src))
-{
-  return __builtin___strcat_chk (__dest, __src, __bos (__dest));
-}
-#endif
 
 
-#ifdef __cplusplus
 __extern_always_inline char *
 __NTH (strncat (char *__restrict __dest, __const char *__restrict __src,
 		size_t __len))
 {
   return __builtin___strncat_chk (__dest, __src, __len, __bos (__dest));
 }
-#else
-# define strncat(dest, src, len) \
-  ((__bos (dest) != (size_t) -1)					\
-   ? __builtin___strncat_chk (dest, src, len, __bos (dest))		\
-   : __strncat_ichk (dest, src, len))
-static __always_inline char *
-__NTH (__strncat_ichk (char *__restrict __dest, __const char *__restrict __src,
-		       size_t __len))
-{
-  return __builtin___strncat_chk (__dest, __src, __len, __bos (__dest));
-}
-#endif

Modified: fsf/trunk/libc/wcsmbs/bits/wchar2.h
==============================================================================
--- fsf/trunk/libc/wcsmbs/bits/wchar2.h (original)
+++ fsf/trunk/libc/wcsmbs/bits/wchar2.h Thu Oct  4 00:03:10 2007
@@ -274,10 +274,10 @@
 			   __const wchar_t *__restrict __format, ...)
      __THROW /* __attribute__ ((__format__ (__wprintf__, 5, 6))) */;
 
-extern int __REDIRECT_NTH (__swprintf_alias,
-			   (wchar_t *__restrict __s, size_t __n,
-			    __const wchar_t *__restrict __fmt, ...),
-			    swprintf);
+extern int __REDIRECT_NTH_LDBL (__swprintf_alias,
+				(wchar_t *__restrict __s, size_t __n,
+				 __const wchar_t *__restrict __fmt, ...),
+				swprintf);
 
 #ifdef __va_arg_pack
 __extern_always_inline int
@@ -305,10 +305,10 @@
 			    __gnuc_va_list __arg)
      __THROW /* __attribute__ ((__format__ (__wprintf__, 5, 0))) */;
 
-extern int __REDIRECT_NTH (__vswprintf_alias,
-			   (wchar_t *__restrict __s, size_t __n,
-			    __const wchar_t *__restrict __fmt,
-			    __gnuc_va_list __ap), vswprintf);
+extern int __REDIRECT_NTH_LDBL (__vswprintf_alias,
+				(wchar_t *__restrict __s, size_t __n,
+				 __const wchar_t *__restrict __fmt,
+				 __gnuc_va_list __ap), vswprintf);
 
 __extern_always_inline int
 __NTH (vswprintf (wchar_t *__restrict __s, size_t __n,