about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--libio/stdio.h8
-rw-r--r--signal/signal.h18
-rw-r--r--stdio-common/psiginfo.c5
4 files changed, 25 insertions, 11 deletions
diff --git a/ChangeLog b/ChangeLog
index e825d5e0d2..f4a652ddd5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2009-02-26  Ulrich Drepper  <drepper@redhat.com>
+
+	* libio/stdio.h: dprintf, fmemopen, getdelim, getline,
+	open_memstream, and vdprintf are in POSIX 2008.
+
 2009-02-25  Ulrich Drepper  <drepper@redhat.com>
 
 	* include/features.h: Define macros for XPG7/POSIX 2008.
diff --git a/libio/stdio.h b/libio/stdio.h
index 9dacbe2455..d7d241c925 100644
--- a/libio/stdio.h
+++ b/libio/stdio.h
@@ -1,5 +1,5 @@
 /* Define ISO C stdio on top of C++ iostreams.
-   Copyright (C) 1991, 1994-2007, 2008 Free Software Foundation, Inc.
+   Copyright (C) 1991, 1994-2007, 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
@@ -289,7 +289,9 @@ extern FILE *fdopen (int __fd, __const char *__modes) __THROW __wur;
 extern FILE *fopencookie (void *__restrict __magic_cookie,
 			  __const char *__restrict __modes,
 			  _IO_cookie_io_functions_t __io_funcs) __THROW __wur;
+#endif
 
+#ifdef __USE_XOPEN2K8
 /* Create a new stream that refers to a memory buffer.  */
 extern FILE *fmemopen (void *__s, size_t __len, __const char *__modes)
   __THROW __wur;
@@ -380,7 +382,9 @@ extern int __asprintf (char **__restrict __ptr,
 extern int asprintf (char **__restrict __ptr,
 		     __const char *__restrict __fmt, ...)
      __THROW __attribute__ ((__format__ (__printf__, 2, 3))) __wur;
+#endif
 
+#ifdef __USE_XOPEN2K8
 /* Write formatted output to a file descriptor.
 
    These functions are not part of POSIX and therefore no official
@@ -620,7 +624,7 @@ extern char *fgets_unlocked (char *__restrict __s, int __n,
 #endif
 
 
-#ifdef	__USE_GNU
+#ifdef	__USE_XOPEN2K8
 /* Read up to (and including) a DELIMITER from STREAM into *LINEPTR
    (and null-terminate it). *LINEPTR is a pointer returned from malloc (or
    NULL), pointing to *N characters of space.  It is realloc'd as
diff --git a/signal/signal.h b/signal/signal.h
index a5fa8d4583..67f8cb4d3c 100644
--- a/signal/signal.h
+++ b/signal/signal.h
@@ -70,6 +70,15 @@ typedef __uid_t uid_t;
 # endif
 #endif	/* Unix98 */
 
+#ifdef __USE_POSIX199309
+/* We need `struct timespec' later on.  */
+# define __need_timespec
+# include <time.h>
+
+/* Get the `siginfo_t' type plus the needed symbols.  */
+# include <bits/siginfo.h>
+#endif
+
 
 /* Type of a signal handler.  */
 typedef void (*__sighandler_t) (int);
@@ -209,15 +218,6 @@ typedef __sighandler_t sig_t;
 
 #ifdef __USE_POSIX
 
-# ifdef __USE_POSIX199309
-/* We need `struct timespec' later on.  */
-#  define __need_timespec
-#  include <time.h>
-
-/* Get the `siginfo_t' type plus the needed symbols.  */
-#  include <bits/siginfo.h>
-# endif
-
 /* Clear all signals from SET.  */
 extern int sigemptyset (sigset_t *__set) __THROW __nonnull ((1));
 
diff --git a/stdio-common/psiginfo.c b/stdio-common/psiginfo.c
index e5d06a23ab..9fc2911fd1 100644
--- a/stdio-common/psiginfo.c
+++ b/stdio-common/psiginfo.c
@@ -26,6 +26,11 @@
 #include <not-cancel.h>
 
 
+/* Defined in sys_siglist.c.  */
+extern const char *const _sys_siglist[];
+extern const char *const _sys_siglist_internal[] attribute_hidden;
+
+
 #define MF(l) MF1 (l)
 #define MF1(l) str_##l
 #define C(s1, s2) C1 (s1, s2)