]> git.ipfire.org Git - thirdparty/gnulib.git/commitdiff
strerror_r: Remove support for IRIX.
authorBruno Haible <bruno@clisp.org>
Wed, 10 Sep 2025 21:16:45 +0000 (23:16 +0200)
committerBruno Haible <bruno@clisp.org>
Wed, 10 Sep 2025 21:16:45 +0000 (23:16 +0200)
* lib/strerror_r.c: Remove code for IRIX.
(strerror_r): Assume that strerror() returns non-NULL.

ChangeLog
lib/strerror_r.c

index 98b9f54953bfb49fbdb75ebb1d0186f9363632a8..c7df8df4d328d1956b0be96b449ea4ddbbe6c387 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2025-09-10  Bruno Haible  <bruno@clisp.org>
 
+       strerror_r: Remove support for IRIX.
+       * lib/strerror_r.c: Remove code for IRIX.
+       (strerror_r): Assume that strerror() returns non-NULL.
+
        stdio-h: Remove support for IRIX.
        * lib/stdio.in.h (_PRINTF_NAN_LEN_MAX): Remove code for IRIX.
 
index 23106ea7c3083156a2680ac6fc86979d3e65f1b5..9c0161cd01c2dfb6e257fc316583cdc2a855d245 100644 (file)
@@ -54,7 +54,7 @@ _GL_EXTERN_C int __xpg_strerror_r (int errnum, char *buf, size_t buflen);
    strerror_r clobbers strerror.  */
 # undef strerror
 
-# if defined __NetBSD__ || defined __hpux || (defined _WIN32 && !defined __CYGWIN__) || defined __sgi || (defined __sun && !defined _LP64) || defined __CYGWIN__
+# if defined __NetBSD__ || defined __hpux || (defined _WIN32 && !defined __CYGWIN__) || (defined __sun && !defined _LP64) || defined __CYGWIN__
 
 /* No locking needed.  */
 
@@ -67,9 +67,8 @@ _GL_EXTERN_C int __xpg_strerror_r (int errnum, char *buf, size_t buflen);
 extern "C" {
 #endif
 
-/* Get sys_nerr, sys_errlist on HP-UX (otherwise only declared in C++ mode).
-   Get sys_nerr, sys_errlist on IRIX (otherwise only declared with _SGIAPI).  */
-#  if defined __hpux || defined __sgi
+/* Get sys_nerr, sys_errlist on HP-UX (otherwise only declared in C++ mode).  */
+#  if defined __hpux
 extern int sys_nerr;
 extern char *sys_errlist[];
 #  endif
@@ -294,7 +293,7 @@ strerror_r (int errnum, char *buf, size_t buflen)
     else
       ret = EINVAL;
 
-# elif defined __sgi || (defined __sun && !defined _LP64) /* IRIX, Solaris <= 9 32-bit */
+# elif defined __sun && !defined _LP64 /* Solaris <= 9 32-bit */
 
     /* For a valid error number, the system's strerror() function returns
        a pointer to a not copied string, not to a buffer.  */
@@ -317,10 +316,9 @@ strerror_r (int errnum, char *buf, size_t buflen)
     {
       char *errmsg = strerror (errnum);
 
-      /* For invalid error numbers, strerror() on
-           - IRIX 6.5 returns NULL,
-           - HP-UX 11 returns an empty string.  */
-      if (errmsg == NULL || *errmsg == '\0')
+      /* For invalid error numbers, strerror() on HP-UX 11 returns an empty
+         string.  */
+      if (*errmsg == '\0')
         ret = EINVAL;
       else
         ret = safe_copy (buf, buflen, errmsg);