aboutsummaryrefslogtreecommitdiff
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)