diff options
-rw-r--r-- | ChangeLog | 2 | ||||
-rw-r--r-- | stdio-common/vfprintf.c | 23 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/preadv.c | 6 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/pwritev.c | 6 |
4 files changed, 17 insertions, 20 deletions
diff --git a/ChangeLog b/ChangeLog index 200c8187d1..fe0a899819 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,7 @@ 2009-04-09 Ulrich Drepper <drepper@redhat.com> + * stdio-common/vfprintf.c (vfprintf): Slightly more compact code. + * sysdeps/unix/sysv/linux/preadv.c: Avoid prototype for static function if it is not defined. Add some necessary casts. * sysdeps/unix/sysv/linux/pwritev.c: Likewise. diff --git a/stdio-common/vfprintf.c b/stdio-common/vfprintf.c index 5d5bb5e578..819865f61e 100644 --- a/stdio-common/vfprintf.c +++ b/stdio-common/vfprintf.c @@ -1,5 +1,4 @@ -/* Copyright (C) 1991-2002, 2003, 2004, 2005, 2006, 2007, 2008 - Free Software Foundation, Inc. +/* Copyright (C) 1991-2008, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -1743,13 +1742,21 @@ do_positional: args_value[cnt].mem = va_arg (ap_save, type); \ break - T (PA_CHAR, pa_int, int); /* Promoted. */ T (PA_WCHAR, pa_wchar, wint_t); - T (PA_INT|PA_FLAG_SHORT, pa_int, int); /* Promoted. */ + case PA_CHAR: /* Promoted. */ + case PA_INT|PA_FLAG_SHORT: /* Promoted. */ +#if LONG_MAX == INT_MAX + case PA_INT|PA_FLAG_LONG: +#endif T (PA_INT, pa_int, int); - T (PA_INT|PA_FLAG_LONG, pa_long_int, long int); +#if LONG_MAX == LONG_LONG_MAX + case PA_INT|PA_FLAG_LONG: +#endif T (PA_INT|PA_FLAG_LONG_LONG, pa_long_long_int, long long int); - T (PA_FLOAT, pa_double, double); /* Promoted. */ +#if LONG_MAX != INT_MAX && LONG_MAX != LONG_LONG_MAX +# error "he?" +#endif + case PA_FLOAT: /* Promoted. */ T (PA_DOUBLE, pa_double, double); case PA_DOUBLE|PA_FLAG_LONG_DOUBLE: if (__ldbl_is_dbl) @@ -1760,8 +1767,8 @@ do_positional: else args_value[cnt].pa_long_double = va_arg (ap_save, long double); break; - T (PA_STRING, pa_string, const char *); - T (PA_WSTRING, pa_wstring, const wchar_t *); + case PA_STRING: /* All pointers are the same */ + case PA_WSTRING: /* All pointers are the same */ T (PA_POINTER, pa_pointer, void *); #undef T default: diff --git a/sysdeps/unix/sysv/linux/preadv.c b/sysdeps/unix/sysv/linux/preadv.c index 8c89d9200e..0d4a6c3803 100644 --- a/sysdeps/unix/sysv/linux/preadv.c +++ b/sysdeps/unix/sysv/linux/preadv.c @@ -29,12 +29,6 @@ #include <sys/syscall.h> #include <kernel-features.h> -#ifdef __x86_64__ -#define __NR_preadv 295 -#elif defined __i386__ -#define __NR_preadv 333 -#endif - #ifndef PREADV # define PREADV preadv diff --git a/sysdeps/unix/sysv/linux/pwritev.c b/sysdeps/unix/sysv/linux/pwritev.c index 1916abe485..5c30eae51f 100644 --- a/sysdeps/unix/sysv/linux/pwritev.c +++ b/sysdeps/unix/sysv/linux/pwritev.c @@ -29,12 +29,6 @@ #include <sys/syscall.h> #include <kernel-features.h> -#ifdef __x86_64__ -#define __NR_pwritev 296 -#elif defined __i386__ -#define __NR_pwritev 334 -#endif - #ifndef PWRITEV # define PWRITEV pwritev |