diff options
| author | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2017-12-02 10:30:25 +0100 | 
|---|---|---|
| committer | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2017-12-02 10:30:25 +0100 | 
| commit | 44a3eaeba04ef78835ca741592c376428ada5f71 (patch) | |
| tree | 29cc935fd475678dcbe38972bfa77fdc68ffb10d /lib/wchar.in.h | |
| parent | 6b73edd95d603e27d55d4905134ac1327d426534 (diff) | |
New upstream version 0.9.8upstream/0.9.8
Diffstat (limited to 'lib/wchar.in.h')
| -rw-r--r-- | lib/wchar.in.h | 57 | 
1 files changed, 44 insertions, 13 deletions
diff --git a/lib/wchar.in.h b/lib/wchar.in.h index 4c009f6a..d6ce25f8 100644 --- a/lib/wchar.in.h +++ b/lib/wchar.in.h @@ -1,6 +1,6 @@  /* A substitute for ISO C99 <wchar.h>, for platforms that have issues. -   Copyright (C) 2007-2016 Free Software Foundation, Inc. +   Copyright (C) 2007-2017 Free Software Foundation, Inc.     This program is free software: you can redistribute it and/or     modify it under the terms of either: @@ -22,7 +22,7 @@     GNU General Public License for more details.     You should have received a copy of the GNU General Public License -   along with this program; if not, see <http://www.gnu.org/licenses/>.  */ +   along with this program; if not, see <https://www.gnu.org/licenses/>.  */  /* Written by Eric Blake.  */ @@ -40,7 +40,7 @@  @PRAGMA_COLUMNS@  #if (((defined __need_mbstate_t || defined __need_wint_t)               \ -      && !defined __MINGW32__ && !defined __KLIBC__)                    \ +      && !defined __MINGW32__)                                          \       || (defined __hpux                                                 \           && ((defined _INTTYPES_INCLUDED && !defined strtoimax)         \               || defined _GL_JUST_INCLUDE_SYSTEM_WCHAR_H))               \ @@ -122,12 +122,16 @@  #  define WEOF -1  # endif  #else -/* MSVC defines wint_t as 'unsigned short' in <crtdefs.h>. -   This is too small: ISO C 99 section 7.24.1.(2) says that wint_t must be -   "unchanged by default argument promotions".  Override it.  */ -# if defined _MSC_VER +/* mingw and MSVC define wint_t as 'unsigned short' in <crtdefs.h> or +   <stddef.h>.  This is too small: ISO C 99 section 7.24.1.(2) says that +   wint_t must be "unchanged by default argument promotions".  Override it.  */ +# if @GNULIB_OVERRIDES_WINT_T@  #  if !GNULIB_defined_wint_t -#   include <crtdefs.h> +#   if @HAVE_CRTDEFS_H@ +#    include <crtdefs.h> +#   else +#    include <stddef.h> +#   endif  typedef unsigned int rpl_wint_t;  #   undef wint_t  #   define wint_t rpl_wint_t @@ -457,11 +461,6 @@ _GL_CXXALIAS_RPL (wcwidth, int, (wchar_t));  #  if !@HAVE_DECL_WCWIDTH@  /* wcwidth exists but is not declared.  */  _GL_FUNCDECL_SYS (wcwidth, int, (wchar_t) _GL_ATTRIBUTE_PURE); -#  elif defined __KLIBC__ -/* On OS/2 kLIBC, wcwidth is a macro that expands to the name of a -   static inline function.  The implementation of wcwidth in wcwidth.c -   causes a "conflicting types" error. */ -#   undef wcwidth  #  endif  _GL_CXXALIAS_SYS (wcwidth, int, (wchar_t));  # endif @@ -1045,6 +1044,38 @@ _GL_WARN_ON_USE (wcswidth, "wcswidth is unportable - "  #endif +/* Convert *TP to a date and time wide string.  See +   <http://pubs.opengroup.org/onlinepubs/9699919799/functions/wcsftime.html>.  */ +#if @GNULIB_WCSFTIME@ +# if @REPLACE_WCSFTIME@ +#  if !(defined __cplusplus && defined GNULIB_NAMESPACE) +#   undef wcsftime +#   define wcsftime rpl_wcsftime +#  endif +_GL_FUNCDECL_RPL (wcsftime, size_t, (wchar_t *__buf, size_t __bufsize, +                                     const wchar_t *__fmt, const struct tm *__tp) +                                    _GL_ARG_NONNULL ((1, 3, 4))); +_GL_CXXALIAS_RPL (wcsftime, size_t, (wchar_t *__buf, size_t __bufsize, +                                     const wchar_t *__fmt, const struct tm *__tp)); +# else +#  if !@HAVE_WCSFTIME@ +_GL_FUNCDECL_SYS (wcsftime, size_t, (wchar_t *__buf, size_t __bufsize, +                                     const wchar_t *__fmt, const struct tm *__tp) +                                    _GL_ARG_NONNULL ((1, 3, 4))); +#  endif +_GL_CXXALIAS_SYS (wcsftime, size_t, (wchar_t *__buf, size_t __bufsize, +                                     const wchar_t *__fmt, const struct tm *__tp)); +# endif +_GL_CXXALIASWARN (wcsftime); +#elif defined GNULIB_POSIXCHECK +# undef wcsftime +# if HAVE_RAW_DECL_WCSFTIME +_GL_WARN_ON_USE (wcsftime, "wcsftime is unportable - " +                 "use gnulib module wcsftime for portability"); +# endif +#endif + +  #endif /* _@GUARD_PREFIX@_WCHAR_H */  #endif /* _@GUARD_PREFIX@_WCHAR_H */  #endif  | 
