# HG changeset patch # User Eric Blake # Date 1256919885 21600 # Node ID 5e0e6e795550a1314493ddac3198a518cf2e08f9 # Parent 2f51d61a26ea3429b87cfc4bb0c32fdfd1c8bbb9 vasnprintf: avoid compiler warnings * lib/vasnprintf.c (VASNPRINTF): Avoid shadowing our own local variables. * lib/printf-args.c (PRINTF_FETCHARGS): Avoid type mismatch. Signed-off-by: Eric Blake diff --git a/ChangeLog b/ChangeLog --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2009-11-17 Eric Blake + + vasnprintf: avoid compiler warnings + * lib/vasnprintf.c (VASNPRINTF): Avoid shadowing our own local + variables. + * lib/printf-args.c (PRINTF_FETCHARGS): Avoid type mismatch. + 2009-11-17 Simon Josefsson * modules/xalloc-die-tests (Makefile.am): Drop XFAIL_TESTS 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,6 @@ /* Decomposed printf argument list. - Copyright (C) 1999, 2002-2003, 2005-2007 Free Software Foundation, Inc. + Copyright (C) 1999, 2002-2003, 2005-2007, 2009 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 @@ -89,7 +90,7 @@ where wint_t is 'unsigned short'. */ ap->a.a_wide_char = (sizeof (wint_t) < sizeof (int) - ? va_arg (args, int) + ? (wint_t) va_arg (args, int) : va_arg (args, wint_t)); break; #endif diff --git a/lib/vasnprintf.c b/lib/vasnprintf.c --- a/lib/vasnprintf.c +++ b/lib/vasnprintf.c @@ -2375,16 +2375,16 @@ characters = 0; while (precision > 0) { - char buf[64]; /* Assume MB_CUR_MAX <= 64. */ + char cbuf[64]; /* Assume MB_CUR_MAX <= 64. */ int count; if (*arg_end == 0) /* Found the terminating null wide character. */ break; # if HAVE_WCRTOMB - count = wcrtomb (buf, *arg_end, &state); + count = wcrtomb (cbuf, *arg_end, &state); # else - count = wctomb (buf, *arg_end); + count = wctomb (cbuf, *arg_end); # endif if (count < 0) { @@ -2420,16 +2420,16 @@ characters = 0; for (;;) { - char buf[64]; /* Assume MB_CUR_MAX <= 64. */ + char cbuf[64]; /* Assume MB_CUR_MAX <= 64. */ int count; if (*arg_end == 0) /* Found the terminating null wide character. */ break; # if HAVE_WCRTOMB - count = wcrtomb (buf, *arg_end, &state); + count = wcrtomb (cbuf, *arg_end, &state); # else - count = wctomb (buf, *arg_end); + count = wctomb (cbuf, *arg_end); # endif if (count < 0) { @@ -2470,20 +2470,20 @@ # endif for (remaining = characters; remaining > 0; ) { - char buf[64]; /* Assume MB_CUR_MAX <= 64. */ + char cbuf[64]; /* Assume MB_CUR_MAX <= 64. */ int count; if (*arg == 0) abort (); # if HAVE_WCRTOMB - count = wcrtomb (buf, *arg, &state); + count = wcrtomb (cbuf, *arg, &state); # else - count = wctomb (buf, *arg); + count = wctomb (cbuf, *arg); # endif if (count <= 0) /* Inconsistency. */ abort (); - memcpy (tmpptr, buf, count); + memcpy (tmpptr, cbuf, count); tmpptr += count; arg++; remaining -= count; @@ -2552,20 +2552,20 @@ ENSURE_ALLOCATION (xsum (length, characters)); for (remaining = characters; remaining > 0; ) { - char buf[64]; /* Assume MB_CUR_MAX <= 64. */ + char cbuf[64]; /* Assume MB_CUR_MAX <= 64. */ int count; if (*arg == 0) abort (); # if HAVE_WCRTOMB - count = wcrtomb (buf, *arg, &state); + count = wcrtomb (cbuf, *arg, &state); # else - count = wctomb (buf, *arg); + count = wctomb (cbuf, *arg); # endif if (count <= 0) /* Inconsistency. */ abort (); - memcpy (result + length, buf, count); + memcpy (result + length, cbuf, count); length += count; arg++; remaining -= count; @@ -2581,21 +2581,21 @@ # endif while (arg < arg_end) { - char buf[64]; /* Assume MB_CUR_MAX <= 64. */ + char cbuf[64]; /* Assume MB_CUR_MAX <= 64. */ int count; if (*arg == 0) abort (); # if HAVE_WCRTOMB - count = wcrtomb (buf, *arg, &state); + count = wcrtomb (cbuf, *arg, &state); # else - count = wctomb (buf, *arg); + count = wctomb (cbuf, *arg); # endif if (count <= 0) /* Inconsistency. */ abort (); ENSURE_ALLOCATION (xsum (length, count)); - memcpy (result + length, buf, count); + memcpy (result + length, cbuf, count); length += count; arg++; }