bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: another stdio patch for UnixWare


From: Bruno Haible
Subject: Re: another stdio patch for UnixWare
Date: Sun, 11 Oct 2020 16:48:43 +0200
User-agent: KMail/5.1.3 (Linux/4.4.0-189-generic; KDE/5.18.0; x86_64; ; )

Tim Rice wrote:
>         * lib/fflush.c: Update comments for UnixWare
>         * lib/fpending.c: Likewise.
>         * lib/freadable.c: Likewise.
>         * lib/freadptr.c: Likewise.
>         * lib/freadseek.c: Likewise.
>         * lib/fseterr.c: Likewise.
>         * lib/fwritable.c: Likewise.
>         * lib/fwriting.c: Likewise.

Regarding the comments, I prefer to keep UnixWare and OpenServer close
together, since UnixWare 7 seems to be quite similar to OpenServer 6.


2020-10-11  Bruno Haible  <bruno@clisp.org>

        stdioext: Update comments regarding UnixWare.
        Reported by Tim Rice <tim@multitalents.net> in
        <https://lists.gnu.org/archive/html/bug-gnulib/2020-10/msg00005.html>.
        * lib/fbufmode.c: Update comments.
        * lib/fflush.c: Likewise.
        * lib/fpending.c: Likewise.
        * lib/fpurge.c: Likewise.
        * lib/freadable.h: Likewise.
        * lib/freadable.c: Likewise.
        * lib/freadahead.c: Likewise.
        * lib/freading.h: Likewise.
        * lib/freading.c: Likewise.
        * lib/freadptr.c: Likewise.
        * lib/freadseek.c: Likewise.
        * lib/fseeko.c: Likewise.
        * lib/fseterr.c: Likewise.
        * lib/fwritable.h: Likewise.
        * lib/fwritable.c: Likewise.
        * lib/fwriting.h: Likewise.
        * lib/fwriting.c: Likewise.

diff --git a/lib/fbufmode.c b/lib/fbufmode.c
index a528a63..87fa3a6 100644
--- a/lib/fbufmode.c
+++ b/lib/fbufmode.c
@@ -56,7 +56,7 @@ fbufmode (FILE *fp)
   return fp->_flags & (_IOLBF | _IONBF | _IOFBF);
 #elif defined __minix               /* Minix */
   return fp->_flags & (_IOLBF | _IONBF | _IOFBF);
-#elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, mingw, MSVC, NonStop Kernel, OpenVMS */
+#elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, UnixWare, mingw, MSVC, NonStop Kernel, OpenVMS */
 # if defined WINDOWS_OPAQUE_FILE
   if (fp_->_flag & 0x100)
     return _IOFBF; /* Impossible to distinguish _IOFBF and _IOLBF.  */
diff --git a/lib/fflush.c b/lib/fflush.c
index b3a40e8..2161b22 100644
--- a/lib/fflush.c
+++ b/lib/fflush.c
@@ -64,7 +64,7 @@ clear_ungetc_buffer (FILE *fp)
       fp->_ungetc_count = 0;
       fp->_rcount = - fp->_rcount;
     }
-# elif defined _IOERR               /* Minix, AIX, HP-UX, IRIX, OSF/1, 
Solaris, OpenServer, mingw, MSVC, NonStop Kernel, OpenVMS */
+# elif defined _IOERR               /* Minix, AIX, HP-UX, IRIX, OSF/1, 
Solaris, OpenServer, UnixWare, mingw, MSVC, NonStop Kernel, OpenVMS */
   /* Nothing to do.  */
 # else                              /* other implementations */
   fseeko (fp, 0, SEEK_CUR);
diff --git a/lib/fpending.c b/lib/fpending.c
index 4cc0ea7..836a3a9 100644
--- a/lib/fpending.c
+++ b/lib/fpending.c
@@ -25,7 +25,8 @@
 #include "stdio-impl.h"
 
 /* This file is not used on systems that already have the __fpending function,
-   namely glibc >= 2.2, Solaris >= 7, Cygwin >= 1.7.34, Android API >= 23.  */
+   namely glibc >= 2.2, Solaris >= 7, UnixWare >= 7.1.4.MP4, Cygwin >= 1.7.34,
+   Android API >= 23.  */
 
 /* Return the number of pending (aka buffered, unflushed)
    bytes on the stream, FP, that is open for writing.  */
@@ -45,7 +46,7 @@ __fpending (FILE *fp)
   return fp->_ptr - fp->_buffer;
 #elif defined __minix                /* Minix */
   return fp_->_ptr - fp_->_buf;
-#elif defined _IOERR                 /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, mingw, MSVC, NonStop Kernel, OpenVMS */
+#elif defined _IOERR                 /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, UnixWare, mingw, MSVC, NonStop Kernel, OpenVMS */
   return (fp_->_ptr ? fp_->_ptr - fp_->_base : 0);
 #elif defined __UCLIBC__             /* uClibc */
   return (fp->__modeflags & __FLAG_WRITING ? fp->__bufpos - fp->__bufstart : 
0);
diff --git a/lib/fpurge.c b/lib/fpurge.c
index 9469ce4..9df90de 100644
--- a/lib/fpurge.c
+++ b/lib/fpurge.c
@@ -19,7 +19,7 @@
 /* Specification.  */
 #include <stdio.h>
 
-#if HAVE___FPURGE                   /* glibc >= 2.2, Haiku, Solaris >= 7, 
Cygwin >= 1.7.10, Android API >= 23, musl libc */
+#if HAVE___FPURGE                   /* glibc >= 2.2, Haiku, Solaris >= 7, 
UnixWare >= 7.1.4.MP4, Cygwin >= 1.7.10, Android API >= 23, musl libc */
 # if HAVE_STDIO_EXT_H
 #  include <stdio_ext.h>
 # endif
@@ -31,7 +31,7 @@
 int
 fpurge (FILE *fp)
 {
-#if HAVE___FPURGE                   /* glibc >= 2.2, Haiku, Solaris >= 7, 
Cygwin >= 1.7.10, Android API >= 23, musl libc */
+#if HAVE___FPURGE                   /* glibc >= 2.2, Haiku, Solaris >= 7, 
UnixWare >= 7.1.4.MP4, Cygwin >= 1.7.10, Android API >= 23, musl libc */
 
   __fpurge (fp);
   /* The __fpurge function does not have a return value.  */
@@ -101,7 +101,7 @@ fpurge (FILE *fp)
   if (fp->_ptr != NULL)
     fp->_count = 0;
   return 0;
-# elif defined _IOERR               /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, mingw, MSVC, NonStop Kernel, OpenVMS */
+# elif defined _IOERR               /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, UnixWare, mingw, MSVC, NonStop Kernel, OpenVMS */
   fp_->_ptr = fp_->_base;
   if (fp_->_ptr != NULL)
     fp_->_cnt = 0;
diff --git a/lib/freadable.c b/lib/freadable.c
index b7110cb..def8647 100644
--- a/lib/freadable.c
+++ b/lib/freadable.c
@@ -26,8 +26,8 @@
 #endif
 
 /* This file is not used on systems that have the __freadable function,
-   namely glibc >= 2.2, Solaris >= 7, Cygwin >= 1.7.34, Android API >= 23,
-   musl libc.  */
+   namely glibc >= 2.2, Solaris >= 7, UnixWare >= 7.1.4.MP4, Cygwin >= 1.7.34,
+   Android API >= 23, musl libc.  */
 
 bool
 freadable (FILE *fp)
@@ -45,7 +45,7 @@ freadable (FILE *fp)
   return (fp->_flags & (_IORW | _IOREAD)) != 0;
 #elif defined __minix               /* Minix */
   return (fp->_flags & _IOREAD) != 0;
-#elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, mingw, MSVC, NonStop Kernel, OpenVMS */
+#elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, UnixWare, mingw, MSVC, NonStop Kernel, OpenVMS */
   return (fp_->_flag & (_IORW | _IOREAD)) != 0;
 #elif defined __QNX__               /* QNX */
   return (fp->_Mode & 0x1 /* _MOPENR */) != 0;
diff --git a/lib/freadable.h b/lib/freadable.h
index 9139865..37fe47d 100644
--- a/lib/freadable.h
+++ b/lib/freadable.h
@@ -22,7 +22,8 @@
    STREAM must not be wide-character oriented.
    The result doesn't change until the stream is closed or re-opened.  */
 
-#if HAVE___FREADABLE /* glibc >= 2.2, Solaris >= 7, Cygwin >= 1.7.34, Android 
API >= 23, musl libc */
+#if HAVE___FREADABLE
+/* glibc >= 2.2, Solaris >= 7, UnixWare >= 7.1.4.MP4, Cygwin >= 1.7.34, 
Android API >= 23, musl libc */
 
 # if HAVE_STDIO_EXT_H
 #  include <stdio_ext.h>
diff --git a/lib/freadahead.c b/lib/freadahead.c
index be14a3d..cf2cd0e 100644
--- a/lib/freadahead.c
+++ b/lib/freadahead.c
@@ -62,7 +62,7 @@ freadahead (FILE *fp)
   if ((fp_->_flags & _IOWRITING) != 0)
     return 0;
   return fp_->_count;
-#elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, mingw, MSVC, NonStop Kernel, OpenVMS */
+#elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, UnixWare, mingw, MSVC, NonStop Kernel, OpenVMS */
   if ((fp_->_flag & _IOWRT) != 0)
     return 0;
   return fp_->_cnt;
diff --git a/lib/freading.c b/lib/freading.c
index f046676..38f998c 100644
--- a/lib/freading.c
+++ b/lib/freading.c
@@ -43,7 +43,7 @@ freading (FILE *fp)
   return (fp->_flags & _IOREAD) != 0;
 # elif defined __minix               /* Minix */
   return (fp->_flags & _IOREADING) != 0;
-# elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, mingw, MSVC, NonStop Kernel, OpenVMS */
+# elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, UnixWare, mingw, MSVC, NonStop Kernel, OpenVMS */
 #  if defined __sun                  /* Solaris */
   return (fp_->_flag & _IOREAD) != 0 && (fp_->_flag & _IOWRT) == 0;
 #  else
diff --git a/lib/freading.h b/lib/freading.h
index 7bef18e..e606b41 100644
--- a/lib/freading.h
+++ b/lib/freading.h
@@ -33,7 +33,7 @@
    STREAM must not be wide-character oriented.  */
 
 #if HAVE___FREADING && (!defined __GLIBC__ || defined __UCLIBC__ || __GLIBC__ 
> 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 7))
-/* Solaris >= 7, Cygwin >= 1.7.34, Android API >= 29, not glibc >= 2.2, but 
glibc >= 2.7, or musl libc  */
+/* Solaris >= 7, UnixWare >= 7.1.4.MP4, Cygwin >= 1.7.34, Android API >= 29, 
not glibc >= 2.2, but glibc >= 2.7, or musl libc  */
 
 # if HAVE_STDIO_EXT_H
 #  include <stdio_ext.h>
diff --git a/lib/freadptr.c b/lib/freadptr.c
index 8972cb1..74304da 100644
--- a/lib/freadptr.c
+++ b/lib/freadptr.c
@@ -69,7 +69,7 @@ freadptr (FILE *fp, size_t *sizep)
     return NULL;
   *sizep = size;
   return (const char *) fp_->_ptr;
-#elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, mingw, MSVC, NonStop Kernel, OpenVMS */
+#elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, UnixWare, mingw, MSVC, NonStop Kernel, OpenVMS */
   if ((fp_->_flag & _IOWRT) != 0)
     return NULL;
   size = fp_->_cnt;
diff --git a/lib/freadseek.c b/lib/freadseek.c
index a2ef61c..cad3619 100644
--- a/lib/freadseek.c
+++ b/lib/freadseek.c
@@ -49,7 +49,7 @@ freadptrinc (FILE *fp, size_t increment)
 #elif defined __minix               /* Minix */
   fp_->_ptr += increment;
   fp_->_count -= increment;
-#elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, mingw, MSVC, NonStop Kernel, OpenVMS */
+#elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, UnixWare, mingw, MSVC, NonStop Kernel, OpenVMS */
   fp_->_ptr += increment;
   fp_->_cnt -= increment;
 #elif defined __UCLIBC__            /* uClibc */
diff --git a/lib/fseeko.c b/lib/fseeko.c
index bebb360..6c03095 100644
--- a/lib/fseeko.c
+++ b/lib/fseeko.c
@@ -81,7 +81,7 @@ fseeko (FILE *fp, off_t offset, int whence)
 #elif defined __minix               /* Minix */
   if (fp_->_ptr == fp_->_buf
       && (fp_->_ptr == NULL || fp_->_count == 0))
-#elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, mingw, MSVC, NonStop Kernel, OpenVMS */
+#elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, UnixWare, mingw, MSVC, NonStop Kernel, OpenVMS */
   if (fp_->_ptr == fp_->_base
       && (fp_->_ptr == NULL || fp_->_cnt == 0))
 #elif defined __UCLIBC__            /* uClibc */
@@ -152,7 +152,7 @@ fseeko (FILE *fp, off_t offset, int whence)
       fp_->_flags &= ~__SEOF;
 #elif defined __EMX__               /* emx+gcc */
       fp->_flags &= ~_IOEOF;
-#elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, mingw, MSVC, NonStop Kernel, OpenVMS */
+#elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, UnixWare, mingw, MSVC, NonStop Kernel, OpenVMS */
       fp_->_flag &= ~_IOEOF;
 #elif defined __MINT__              /* Atari FreeMiNT */
       fp->__offset = pos;
diff --git a/lib/fseterr.c b/lib/fseterr.c
index 8f32b7e..7cf267f 100644
--- a/lib/fseterr.c
+++ b/lib/fseterr.c
@@ -42,7 +42,7 @@ fseterr (FILE *fp)
   fp->_flags |= _IOERR;
 #elif defined __minix               /* Minix */
   fp->_flags |= _IOERR;
-#elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, mingw, MSVC, NonStop Kernel, OpenVMS */
+#elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, UnixWare, mingw, MSVC, NonStop Kernel, OpenVMS */
   fp_->_flag |= _IOERR;
 #elif defined __UCLIBC__            /* uClibc */
   fp->__modeflags |= __FLAG_ERROR;
diff --git a/lib/fwritable.c b/lib/fwritable.c
index 51407d7..948aa7d 100644
--- a/lib/fwritable.c
+++ b/lib/fwritable.c
@@ -26,8 +26,8 @@
 #endif
 
 /* This file is not used on systems that have the __fwritable function,
-   namely glibc >= 2.2, Solaris >= 7, Cygwin >= 1.7.34, Android API >= 23,
-   musl libc.  */
+   namely glibc >= 2.2, Solaris >= 7, UnixWare >= 7.1.4.MP4, Cygwin >= 1.7.34,
+   Android API >= 23, musl libc.  */
 
 bool
 fwritable (FILE *fp)
@@ -45,7 +45,7 @@ fwritable (FILE *fp)
   return (fp->_flags & (_IORW | _IOWRT)) != 0;
 #elif defined __minix               /* Minix */
   return (fp->_flags & _IOWRITE) != 0;
-#elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, mingw, MSVC, NonStop Kernel, OpenVMS */
+#elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, UnixWare, mingw, MSVC, NonStop Kernel, OpenVMS */
   return (fp_->_flag & (_IORW | _IOWRT)) != 0;
 #elif defined __QNX__               /* QNX */
   return (fp->_Mode & 0x2 /* _MOPENW */) != 0;
diff --git a/lib/fwritable.h b/lib/fwritable.h
index fb9c871..b0d2a40 100644
--- a/lib/fwritable.h
+++ b/lib/fwritable.h
@@ -22,7 +22,8 @@
    STREAM must not be wide-character oriented.
    The result doesn't change until the stream is closed or re-opened.  */
 
-#if HAVE___FWRITABLE /* glibc >= 2.2, Solaris >= 7, Cygwin >= 1.7.34, Android 
API >= 23, musl libc */
+#if HAVE___FWRITABLE
+/* glibc >= 2.2, Solaris >= 7, UnixWare >= 7.1.4.MP4, Cygwin >= 1.7.34, 
Android API >= 23, musl libc */
 
 # if HAVE_STDIO_EXT_H
 #  include <stdio_ext.h>
diff --git a/lib/fwriting.c b/lib/fwriting.c
index 466d277..e08f94d 100644
--- a/lib/fwriting.c
+++ b/lib/fwriting.c
@@ -22,8 +22,8 @@
 #include "stdio-impl.h"
 
 /* This file is not used on systems that have the __fwriting function,
-   namely glibc >= 2.2, Solaris >= 7, Cygwin >= 1.7.34, Android API >= 29,
-   musl libc.  */
+   namely glibc >= 2.2, Solaris >= 7, UnixWare >= 7.1.4.MP4, Cygwin >= 1.7.34,
+   Android API >= 29, musl libc.  */
 
 bool
 fwriting (FILE *fp)
@@ -41,7 +41,7 @@ fwriting (FILE *fp)
   return (fp->_flags & _IOWRT) != 0;
 #elif defined __minix               /* Minix */
   return (fp->_flags & _IOWRITING) != 0;
-#elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, mingw, MSVC, NonStop Kernel, OpenVMS */
+#elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, UnixWare, mingw, MSVC, NonStop Kernel, OpenVMS */
   return (fp_->_flag & _IOWRT) != 0;
 #elif defined __UCLIBC__            /* uClibc */
   return (fp->__modeflags & __FLAG_WRITING) != 0;
diff --git a/lib/fwriting.h b/lib/fwriting.h
index 3aa5d7f..833aa5a 100644
--- a/lib/fwriting.h
+++ b/lib/fwriting.h
@@ -33,7 +33,8 @@
 
    STREAM must not be wide-character oriented.  */
 
-#if HAVE___FWRITING /* glibc >= 2.2, Solaris >= 7, Cygwin >= 1.7.34, Android 
API >= 29, musl libc */
+#if HAVE___FWRITING
+/* glibc >= 2.2, Solaris >= 7, UnixWare >= 7.1.4.MP4, Cygwin >= 1.7.34, 
Android API >= 29, musl libc */
 
 # if HAVE_STDIO_EXT_H
 #  include <stdio_ext.h>




reply via email to

[Prev in Thread] Current Thread [Next in Thread]