about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog25
-rw-r--r--posix/regex.c12
-rw-r--r--sysdeps/generic/termbits.h27
-rw-r--r--sysdeps/gnu/errlist.awk2
-rw-r--r--sysdeps/mach/hurd/errnos.awk2
-rw-r--r--sysdeps/mach/hurd/ioctls.h21
-rw-r--r--sysdeps/stub/setdomain.c2
7 files changed, 79 insertions, 12 deletions
diff --git a/ChangeLog b/ChangeLog
index a52a1a273f..88cd5abd95 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+Tue Jul  9 00:14:52 1996  Michael I. Bushnell p/BSG  <mib@gnu.ai.mit.edu>
+
+	* sysdeps/mach/hurd/ioctls.h (MDMBUF, ECHO, TOSTOP, FLUSHO,
+ 	PENDIN, NOFLSH): Undefine these at start if they are already
+ 	defined to avoid collision with termbits.h.
+	* sysdeps/generic/termbits.h (ECHO, TOSTOP, NOFLSH): Likewise.
+	(MDMBUF, FLUSHO, PENDIN) [__USE_BSD]: Likewise.
+
+
 Mon Jul  8 13:37:40 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
 
 	* math/math.h (_Mfloat_, _Mlong_double_): New macros, defined iff not
@@ -11,7 +20,21 @@ Mon Jul  8 13:37:40 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
 	(routines): Remove s_modf, add s_frexpf, s_ldexpf; all but frexp and
 	ldexp have both f and l code, and those have f though not l code.
 
-Mon Jul  8 13:10:50 1996  Michael I. Bushnell p/BSG  <mib@psilocin.gnu.ai.mit.edu>
+Mon Jul  8 13:10:50 1996  Michael I. Bushnell p/BSG  <mib@gnu.ai.mit.edu>
+
+	* sysdeps/mach/hurd/errnos.awk: Skip entries where the
+ 	error is 0.  The "placeholder" entries recently added to 
+	errno.texi convert to zero since `???/' is at the front of them.
+	* sysdeps/gnu/errlist.awk (errnoh): Likewise.
+
+	* sysdeps/stub/setdomain.c (setdomainname): Declare NAME parm 
+	__const to conform with unistd.h.
+
+	* posix/regex.c (re_comp, re_exec): Use weak_function as
+	keyword in function defns instead of weak_symbol (NAME) after
+	the defn.
+
+	* stdlib/stdlib.h (random): Declare return type to be int32_t.
 
 	* string/argz-delete.c (argz_delete): Use memmove instead of
  	memcpy for possibly overlapping strings.
diff --git a/posix/regex.c b/posix/regex.c
index 3dd03b26c3..fdfd102cdb 100644
--- a/posix/regex.c
+++ b/posix/regex.c
@@ -5190,7 +5190,7 @@ re_compile_pattern (pattern, length, bufp)
 /* BSD has one and only one pattern buffer.  */
 static struct re_pattern_buffer re_comp_buf;
 
-char *
+char * weak_function
 re_comp (s)
     const char *s;
 {
@@ -5231,7 +5231,7 @@ re_comp (s)
 }
 
 
-int
+int weak_function
 re_exec (s)
     const char *s;
 {
@@ -5240,14 +5240,6 @@ re_exec (s)
     0 <= re_search (&re_comp_buf, s, len, 0, len, (struct re_registers *) 0);
 }
 
-#ifdef _LIBC
-/* Make these definitions weak in libc, so POSIX programs can redefine
-   these names if they don't use our functions, and still use
-   regcomp/regexec below without link errors.  */
-weak_symbol (re_comp)
-weak_symbol (re_exec)
-#endif
-
 #endif /* _REGEX_RE_COMP */
 
 /* POSIX.2 functions.  Don't define these for Emacs.  */
diff --git a/sysdeps/generic/termbits.h b/sysdeps/generic/termbits.h
index 542f915d97..4181ba1f33 100644
--- a/sysdeps/generic/termbits.h
+++ b/sysdeps/generic/termbits.h
@@ -17,6 +17,33 @@ License along with the GNU C Library; see the file COPYING.LIB.  If
 not, write to the Free Software Foundation, Inc., 675 Mass Ave,
 Cambridge, MA 02139, USA.  */
 
+/* These macros are also defined in some ioctls.h files (with numerically
+   identical values), but this serves to shut up cpp's complaining. */
+#ifdef __USE_BSD
+
+#ifdef MDMBUF
+#undef MDMBUF
+#endif
+#ifdef FLUSHO
+#undef FLUSHO
+#endif
+#ifdef PENDIN
+#undef PENDIN
+#endif
+
+#endif /* __USE_BSD */
+
+#ifdef ECHO
+#undef ECHO
+#endif
+#ifdef TOSTOP
+#undef TOSTOP
+#endif
+#ifdef NOFLSH
+#undef NOFLSH
+#endif
+
+
 /* These definitions match those used by the 4.4 BSD kernel.
    If the operating system has termios system calls or ioctls that
    correctly implement the POSIX.1 behavior, there should be a
diff --git a/sysdeps/gnu/errlist.awk b/sysdeps/gnu/errlist.awk
index e6ca81a4ad..6c84b2e4f4 100644
--- a/sysdeps/gnu/errlist.awk
+++ b/sysdeps/gnu/errlist.awk
@@ -50,6 +50,8 @@ errnoh == 2 && $1 == "@deftypevr" && $2 == "Macro" && $3 == "int" \
 errnoh == 3 && $1 == "@comment" && $2 == "errno" \
   {
     errno = $3 + 0;
+    if (errno == 0)
+      next;
     if (alias[e])
       printf "#if defined (%s) && %s != %s\n", e, e, alias[e];
     else
diff --git a/sysdeps/mach/hurd/errnos.awk b/sysdeps/mach/hurd/errnos.awk
index 24a01ba935..5c88d11210 100644
--- a/sysdeps/mach/hurd/errnos.awk
+++ b/sysdeps/mach/hurd/errnos.awk
@@ -55,6 +55,8 @@ errnoh == 2 && $1 == "@deftypevr"  && $2 == "Macro" && $3 == "int" \
 
 errnoh == 3 && $1 == "@comment" && $2 == "errno" {
     errno = $3 + 0;
+    if (errno == 0)
+      next;
     if (errno > maxerrno) maxerrno = errno;
     if (e == "EWOULDBLOCK")
       {
diff --git a/sysdeps/mach/hurd/ioctls.h b/sysdeps/mach/hurd/ioctls.h
index 8036fd700d..f6bb4b4ce7 100644
--- a/sysdeps/mach/hurd/ioctls.h
+++ b/sysdeps/mach/hurd/ioctls.h
@@ -20,6 +20,27 @@ Cambridge, MA 02139, USA.  */
 
 #define	_IOCTLS_H	1
 
+/* These macros are also defined in termbits.h (with numerically 
+   identical values) but this serves to shut up cpp's complaining. */
+#ifdef MDMBUF
+#undef MDMBUF
+#endif
+#ifdef ECHO
+#undef ECHO
+#endif
+#ifdef TOSTOP
+#undef TOSTOP
+#endif
+#ifdef FLUSHO
+#undef FLUSHO
+#endif
+#ifdef PENDIN
+#undef PENDIN
+#endif
+#ifdef NOFLSH
+#undef NOFLSH
+#endif
+
 /* Hurd ioctl request are made up of several fields:
 
     10987654321098765432109876543210
diff --git a/sysdeps/stub/setdomain.c b/sysdeps/stub/setdomain.c
index 74da5398b5..052b45b9bc 100644
--- a/sysdeps/stub/setdomain.c
+++ b/sysdeps/stub/setdomain.c
@@ -24,7 +24,7 @@ Cambridge, MA 02139, USA.  */
    This call is restricted to the super-user.  */
 int
 DEFUN(setdomainname, (name, len),
-      char *name AND size_t len)
+      __const char *name AND size_t len)
 {
   errno = ENOSYS;
   return -1;