diff options
-rw-r--r-- | ChangeLog | 25 | ||||
-rw-r--r-- | posix/regex.c | 12 | ||||
-rw-r--r-- | sysdeps/generic/termbits.h | 27 | ||||
-rw-r--r-- | sysdeps/gnu/errlist.awk | 2 | ||||
-rw-r--r-- | sysdeps/mach/hurd/errnos.awk | 2 | ||||
-rw-r--r-- | sysdeps/mach/hurd/ioctls.h | 21 | ||||
-rw-r--r-- | sysdeps/stub/setdomain.c | 2 |
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; |