summaryrefslogtreecommitdiff
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;