# HG changeset patch # User Bruno Haible # Date 1153587282 0 # Node ID 3ea40dc19e437416bf1313fe21b4f123864c0193 # Parent f0e8d2c5efd03ae989c80857baf89a7f3fd5a8a7 Update from GNU gettext 0.15. diff --git a/lib/ChangeLog b/lib/ChangeLog --- a/lib/ChangeLog +++ b/lib/ChangeLog @@ -1,3 +1,8 @@ +2005-07-05 Bruno Haible + + * printf-args.c (printf_fetchargs): Work around broken definition of + wint_t on mingw. + 2005-02-12 Bruno Haible * xallocsa.h: Add extern "C" for C++. diff --git a/lib/printf-args.c b/lib/printf-args.c --- a/lib/printf-args.c +++ b/lib/printf-args.c @@ -1,5 +1,5 @@ /* Decomposed printf argument list. - Copyright (C) 1999, 2002-2003, 2006 Free Software Foundation, Inc. + Copyright (C) 1999, 2002-2003, 2005-2006 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -79,7 +79,13 @@ break; #ifdef HAVE_WINT_T case TYPE_WIDE_CHAR: - ap->a.a_wide_char = va_arg (args, wint_t); + /* Although ISO C 99 7.24.1.(2) says that wint_t is "unchanged by + default argument promotions", this is not the case in mingw32, + where wint_t is 'unsigned short'. */ + ap->a.a_wide_char = + (sizeof (wint_t) < sizeof (int) + ? va_arg (args, int) + : va_arg (args, wint_t)); break; #endif case TYPE_STRING: