about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--conform/conformtest.pl5
-rw-r--r--libio/stdio.h14
3 files changed, 16 insertions, 8 deletions
diff --git a/ChangeLog b/ChangeLog
index 1f0d25f4d0..49b2dc5f99 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -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;