aboutsummaryrefslogtreecommitdiff
path: root/posix/regex.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1998-01-31 02:43:20 +0000
committerUlrich Drepper <drepper@redhat.com>1998-01-31 02:43:20 +0000
commit07b51ba59a50eadbda72fad0b2e55a4f0e26a291 (patch)
treebb65ad1cd7e3262bd6c20832d20e5891b4141a2c /posix/regex.c
parentacaee4d7aa686e058f3cce22fda157c572f4de2c (diff)
downloadglibc-07b51ba59a50eadbda72fad0b2e55a4f0e26a291.tar
glibc-07b51ba59a50eadbda72fad0b2e55a4f0e26a291.tar.gz
glibc-07b51ba59a50eadbda72fad0b2e55a4f0e26a291.tar.bz2
glibc-07b51ba59a50eadbda72fad0b2e55a4f0e26a291.zip
Update.
1998-01-31 11:18 Ulrich Drepper <drepper@cygnus.com> * misc/efgcvt_r.c (fcvt_r): Handle illegal NDIGIT correctly. [PR libc/410] * misc/Makefile (tests): Add tst-efgcvt. * misc/tst-efgcvt.c: New file. * manual/arith.texi (Parsing of Integers): Correct description of strtoul. Pointed out by Scott Snyder <snyder@fnald0.fnal.gov>. [PR libc/396] * misc/lsearch.c (lsearch): Return a pointer to the new element if one was "allocated". * string/strsignal.c: NSIG is not a valid index into _sys_siglist. Don't zap the last character of the "Unknown signal" message.
Diffstat (limited to 'posix/regex.c')
-rw-r--r--posix/regex.c37
1 files changed, 27 insertions, 10 deletions
diff --git a/posix/regex.c b/posix/regex.c
index b80ad1b815..1bc609621b 100644
--- a/posix/regex.c
+++ b/posix/regex.c
@@ -2,7 +2,7 @@
version 0.12.
(Implements POSIX draft P1003.2/D11.2, except for some of the
internationalization features.)
- Copyright (C) 1993, 1994, 1995, 1996, 1997 Free Software Foundation, Inc.
+ Copyright (C) 1993, 94, 95, 96, 97, 98 Free Software Foundation, Inc.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public License as
@@ -31,6 +31,14 @@
# include <config.h>
#endif
+#ifndef PARAMS
+# if defined __GNUC__ || (defined __STDC__ && __STDC__)
+# define PARAMS(args) args
+# else
+# define PARAMS(args) ()
+# endif /* GCC. */
+#endif /* Not PARAMS. */
+
#if defined STDC_HEADERS && !defined emacs
# include <stddef.h>
#else
@@ -329,7 +337,12 @@ typedef char boolean;
#define false 0
#define true 1
-static int re_match_2_internal ();
+static int re_match_2_internal PARAMS ((struct re_pattern_buffer *bufp,
+ const char *string1, int size1,
+ const char *string2, int size2,
+ int pos,
+ struct re_registers *regs,
+ int stop));
/* These are the command codes that appear in compiled regular
expressions. Some opcodes are followed by argument bytes. A
@@ -2368,10 +2381,12 @@ regex_compile (pattern, size, syntax, bufp)
if (syntax & RE_NO_BK_PARENS) goto normal_backslash;
if (COMPILE_STACK_EMPTY)
- if (syntax & RE_UNMATCHED_RIGHT_PAREN_ORD)
- goto normal_backslash;
- else
- FREE_STACK_RETURN (REG_ERPAREN);
+ {
+ if (syntax & RE_UNMATCHED_RIGHT_PAREN_ORD)
+ goto normal_backslash;
+ else
+ FREE_STACK_RETURN (REG_ERPAREN);
+ }
handle_close:
if (fixup_alt_jump)
@@ -2388,10 +2403,12 @@ regex_compile (pattern, size, syntax, bufp)
/* See similar code for backslashed left paren above. */
if (COMPILE_STACK_EMPTY)
- if (syntax & RE_UNMATCHED_RIGHT_PAREN_ORD)
- goto normal_char;
- else
- FREE_STACK_RETURN (REG_ERPAREN);
+ {
+ if (syntax & RE_UNMATCHED_RIGHT_PAREN_ORD)
+ goto normal_char;
+ else
+ FREE_STACK_RETURN (REG_ERPAREN);
+ }
/* Since we just checked for an empty stack above, this
``can't happen''. */