diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | conform/conformtest.pl | 5 | ||||
-rw-r--r-- | libio/stdio.h | 14 |
3 files changed, 16 insertions, 8 deletions
@@ -1,7 +1,8 @@ 2001-01-28 Ulrich Drepper <drepper@redhat.com> - * conform/conformtest.pl: Define $mustprepend{"stdio.h"}. - * libio/stdio.h: Always define __need___va_list. + * conform/conformtest.pl: Undo last change. Define + $mustprepend{"stdio.h"}. + * libio/stdio.h: Define va_list correctly. * conform/data/pthread.h-data: Make priority protocol related functions optional. Fix typos. diff --git a/conform/conformtest.pl b/conform/conformtest.pl index 5a15760728..aa61d89948 100644 --- a/conform/conformtest.pl +++ b/conform/conformtest.pl @@ -56,7 +56,7 @@ $CFLAGS{"XOPEN2K"} = "-I. '-D__attribute__(x)=' -D_XOPEN_SOURCE=600"; $mustprepend{'regex.h'} = "#include <sys/types.h>\n"; $mustprepend{'sched.h'} = "#include <sys/types.h>\n"; $mustprepend{'signal.h'} = "#include <pthread.h>\n"; -$mustprepend{'stdio.h'} = "#include <stdarg.h>\n"; +$mustprepend{'stdio.h'} = "#include <sys/types.h>\n"; $mustprepend{'wchar.h'} = "#include <stdarg.h>\n"; $mustprepend{'wordexp.h'} = "#include <stddef.h>\n"; @@ -668,9 +668,8 @@ while ($#headers >= 0) { # Remember that this name is allowed. push @allow, $type; - # Generate a program to test for the availability of this constant. + # Generate a program to test for the availability of this type. open (TESTFILE, ">$fnamebase.c"); - print TESTFILE "$prepend"; print TESTFILE "#include <$h>\n"; if ($maybe_opaque == 1) { print TESTFILE "$type *a;\n"; diff --git a/libio/stdio.h b/libio/stdio.h index af9ab952eb..4c8cea62dc 100644 --- a/libio/stdio.h +++ b/libio/stdio.h @@ -32,9 +32,6 @@ __BEGIN_DECLS # define __need_NULL # include <stddef.h> -# define __need___va_list -# include <stdarg.h> - # include <bits/types.h> # define __need_FILE # define __need___FILE @@ -66,6 +63,17 @@ typedef struct _IO_FILE __FILE; #include <libio.h> +#ifdef __USE_XOPEN +# ifdef __GNUC__ +# ifndef _VA_LIST_DEFINED +typedef _G_va_list va_list; +# define _VA_LIST_DEFINED +# endif +# else +# include <stdarg.h> +# endif +#endif + /* The type of the second argument to `fgetpos' and `fsetpos'. */ #ifndef __USE_FILE_OFFSET64 typedef _G_fpos_t fpos_t; |