aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--misc/error.c12
-rw-r--r--stdio-common/perror.c5
2 files changed, 11 insertions, 6 deletions
diff --git a/misc/error.c b/misc/error.c
index 8306fd569f..1c9c4a6850 100644
--- a/misc/error.c
+++ b/misc/error.c
@@ -127,7 +127,7 @@ static void
error_tail (int status, int errnum, const char *message, va_list args)
{
# if HAVE_VPRINTF || _LIBC
-# ifdef _LIBC
+# if _LIBC && USE_IN_LIBIO
if (_IO_fwide (stderr, 0) > 0)
{
# define ALLOCA_LIMIT 2000
@@ -181,7 +181,7 @@ error_tail (int status, int errnum, const char *message, va_list args)
#if defined HAVE_STRERROR_R || _LIBC
char errbuf[1024];
char *s = __strerror_r (errnum, errbuf, sizeof errbuf);
-# ifdef _LIBC
+# if _LIBC && USE_IN_LIBIO
if (_IO_fwide (stderr, 0) > 0)
__fwprintf (stderr, L": %s", s);
else
@@ -191,7 +191,7 @@ error_tail (int status, int errnum, const char *message, va_list args)
fprintf (stderr, ": %s", strerror (errnum));
#endif
}
-#ifdef _LIBC
+#if _LIBC && USE_IN_LIBIO
if (_IO_fwide (stderr, 0) > 0)
putwc (L'\n', stderr);
else
@@ -236,7 +236,7 @@ error (status, errnum, message, va_alist)
(*error_print_progname) ();
else
{
-#ifdef _LIBC
+#if _LIBC && USE_IN_LIBIO
if (_IO_fwide (stderr, 0) > 0)
__fwprintf (stderr, L"%s: ", program_name);
else
@@ -317,7 +317,7 @@ error_at_line (status, errnum, file_name, line_number, message, va_alist)
(*error_print_progname) ();
else
{
-#ifdef _LIBC
+#if _LIBC && USE_IN_LIBIO
if (_IO_fwide (stderr, 0) > 0)
__fwprintf (stderr, L"%s: ", program_name);
else
@@ -327,7 +327,7 @@ error_at_line (status, errnum, file_name, line_number, message, va_alist)
if (file_name != NULL)
{
-#ifdef _LIBC
+#if _LIBC && USE_IN_LIBIO
if (_IO_fwide (stderr, 0) > 0)
__fwprintf (stderr, L"%s:%d: ", file_name, line_number);
else
diff --git a/stdio-common/perror.c b/stdio-common/perror.c
index b6f8d5e13e..a1995e975e 100644
--- a/stdio-common/perror.c
+++ b/stdio-common/perror.c
@@ -55,9 +55,11 @@ perror_internal (FILE *fp, const char *s)
void
perror (const char *s)
{
+#ifdef USE_IN_LIBIO
FILE *fp;
int fd = -1;
+
/* The standard says that 'perror' must not change the orientation
of the stream. What is supposed to happen when the stream isn't
oriented yet? In this case we'll create a new stream which is
@@ -84,4 +86,7 @@ perror (const char *s)
((_IO_FILE *) stderr)->_offset = _IO_pos_BAD;
}
+#else
+ perror_internal (stderr, s);
+#endif
}