diff options
author | Jim Meyering <jim@meyering.net> | 2003-01-16 18:30:31 +0000 |
---|---|---|
committer | Jim Meyering <jim@meyering.net> | 2003-01-16 18:30:31 +0000 |
commit | b081927a0415be99df7e48128e1cd42f6657510e (patch) | |
tree | 42c0b6fd276195d55e297ba1bb8b23551b728abb | |
parent | 8dbd5176161a8b0d48d3a205accb2319a0dd879c (diff) | |
download | gnulib-b081927a0415be99df7e48128e1cd42f6657510e.tar.gz |
The `regex' struct is both input and output.
Initialize it before each use. Patch by Tim Waugh.
-rw-r--r-- | m4/regex.m4 | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/m4/regex.m4 b/m4/regex.m4 index d80eafb2ce..a31ef2c070 100644 --- a/m4/regex.m4 +++ b/m4/regex.m4 @@ -1,4 +1,4 @@ -#serial 13 +#serial 14 dnl Initially derived from code in GNU grep. dnl Mostly written by Jim Meyering. @@ -27,6 +27,7 @@ AC_DEFUN([jm_INCLUDED_REGEX], jm_cv_func_working_re_compile_pattern, AC_TRY_RUN( [#include <stdio.h> +#include <string.h> #include <regex.h> int main () @@ -35,12 +36,14 @@ AC_DEFUN([jm_INCLUDED_REGEX], const char *s; struct re_registers regs; re_set_syntax (RE_SYNTAX_POSIX_EGREP); + memset (®ex, 0, sizeof (regex)); [s = re_compile_pattern ("a[[:@:>@:]]b\n", 9, ®ex);] /* This should fail with _Invalid character class name_ error. */ if (!s) exit (1); /* This should succeed, but doesn't for e.g. glibc-2.1.3. */ + memset (®ex, 0, sizeof (regex)); s = re_compile_pattern ("{1", 2, ®ex); if (s) @@ -48,6 +51,7 @@ AC_DEFUN([jm_INCLUDED_REGEX], /* The following example is derived from a problem report against gawk from Jorge Stolfi <stolfi@ic.unicamp.br>. */ + memset (®ex, 0, sizeof (regex)); s = re_compile_pattern ("[[anù]]*n", 7, ®ex); if (s) exit (1); |