# HG changeset patch # User Francesco Potort«À # Date 1024562637 0 # Node ID 1c3f7d78e90a7a1d4067b15f71d1815cae689d34 # Parent a013f84c55f6045211b123a3c8586d34c9bb17ca (add_regex): Invalid regexp modifiers are ignored. (Makefile_targets): Tag variables unless --no-globals. (LOOP_ON_INPUT_LINES): Serious bug corrected. diff -r a013f84c55f6 -r 1c3f7d78e90a lib-src/etags.c --- a/lib-src/etags.c Thu Jun 20 07:30:16 2002 +0000 +++ b/lib-src/etags.c Thu Jun 20 08:43:57 2002 +0000 @@ -31,10 +31,11 @@ * 2001 Nested classes by Francesco Potortì (concept by Mykola Dzyuba). * 2002 #line directives by Francesco Potortì. * - * Francesco Potortì has maintained it since 1993. + * Francesco Potortì has maintained and improved it since 1993. + * */ -char pot_etags_version[] = "@(#) pot revision number is 16.26"; +char pot_etags_version[] = "@(#) pot revision number is 16.27"; #define TRUE 1 #define FALSE 0 @@ -3831,8 +3832,9 @@ #define LOOP_ON_INPUT_LINES(file_pointer, line_buffer, char_pointer) \ for (; /* loop initialization */ \ !feof (file_pointer) /* loop test */ \ - && (char_pointer = lb.buffer, /* instructions at start of loop */ \ - readline (&line_buffer, file_pointer), \ + && /* instructions at start of loop */ \ + (readline (&line_buffer, file_pointer), \ + char_pointer = line_buffer.buffer, \ TRUE); \ ) #define LOOKING_AT(cp, keyword) /* keyword is a constant string */ \ @@ -4398,7 +4400,7 @@ /* * Makefile support - * Idea by Assar Westerlund (2001) + * Ideas by Assar Westerlund (2001) */ static void Makefile_targets (inf) @@ -4412,7 +4414,7 @@ continue; while (*bp != '\0' && *bp != '=' && *bp != ':') bp++; - if (*bp == ':') + if (*bp == ':' || (globals && *bp == '=')) pfnote (savenstr (lb.buffer, bp - lb.buffer), TRUE, lb.buffer, bp - lb.buffer + 1, lineno, linecharno); } @@ -5432,9 +5434,13 @@ need_filebuf = TRUE; break; default: - modifiers[1] = '\0'; - error ("invalid regexp modifier `%s'", modifiers); - return; + { + char wrongmod [2]; + wrongmod[0] = modifiers[0]; + wrongmod[1] = '\0'; + error ("invalid regexp modifier `%s', ignoring", wrongmod); + } + break; } patbuf = xnew (1, struct re_pattern_buffer);