Commit 3f69bd93 by Bruce Korb Committed by Bruce Korb

use #def constant for sub-pattern count

From-SVN: r33961
parent 5e36475b
...@@ -7,7 +7,9 @@ ...@@ -7,7 +7,9 @@
* fixinc/fixincl.c: improve the debug displays, ignore SIGPIPE * fixinc/fixincl.c: improve the debug displays, ignore SIGPIPE
* fixinc/server.c: likewise * fixinc/server.c: likewise
* fixinc/fixfixes.c( char_macro_def_fix ): fix regex + #ifdef debugging code * fixinc/fixfixes.c( char_macro_def_fix ): fix regex
+ #ifdef debugging code + use #def constant for
sub-pattern count
* fixinc/inclhack.def( hpux11_fabsf ): Keep HP-UX 11 from stomping * fixinc/inclhack.def( hpux11_fabsf ): Keep HP-UX 11 from stomping
on C++ math namespace on C++ math namespace
......
...@@ -296,11 +296,12 @@ FIX_PROC_HEAD( char_macro_use_fix ) ...@@ -296,11 +296,12 @@ FIX_PROC_HEAD( char_macro_use_fix )
#endif #endif
; ;
# define SUB_PAT_CT 1
char *pz_pat; char *pz_pat;
static regex_t re; static regex_t re;
regmatch_t rm[2]; regmatch_t rm[SUB_PAT_CT+1];
if (p_fixd->patch_args[1] == NULL) if (p_fixd->patch_args[1] == NULL)
{ {
...@@ -316,10 +317,10 @@ FIX_PROC_HEAD( char_macro_use_fix ) ...@@ -316,10 +317,10 @@ FIX_PROC_HEAD( char_macro_use_fix )
exit(3); exit(3);
} }
compile_re (pz_pat, &re, 2, "macro pattern", "char_macro_use_fix"); compile_re (pz_pat, &re, 1, "macro pattern", "char_macro_use_fix");
free (pz_pat); free (pz_pat);
while (regexec (&re, text, 3, rm, 0) == 0) while (regexec (&re, text, SUB_PAT_CT+1, rm, 0) == 0)
{ {
const char* pz = text + rm[1].rm_so; const char* pz = text + rm[1].rm_so;
...@@ -334,6 +335,7 @@ FIX_PROC_HEAD( char_macro_use_fix ) ...@@ -334,6 +335,7 @@ FIX_PROC_HEAD( char_macro_use_fix )
} }
fputs (text, stdout); fputs (text, stdout);
# undef SUB_PAT_CT
} }
...@@ -382,8 +384,8 @@ FIX_PROC_HEAD( char_macro_def_fix ) ...@@ -382,8 +384,8 @@ FIX_PROC_HEAD( char_macro_def_fix )
char *pz_pat; char *pz_pat;
static regex_t re; static regex_t re;
# define SUB_PAT_CT 2
regmatch_t rm[3]; regmatch_t rm[SUB_PAT_CT+1];
const char *p; const char *p;
int rerr; int rerr;
...@@ -404,7 +406,7 @@ FIX_PROC_HEAD( char_macro_def_fix ) ...@@ -404,7 +406,7 @@ FIX_PROC_HEAD( char_macro_def_fix )
compile_re (pz_pat, &re, 1, "macro pattern", "char_macro_def_fix"); compile_re (pz_pat, &re, 1, "macro pattern", "char_macro_def_fix");
#ifdef DEBUG #ifdef DEBUG
if ((rerr = regexec (&re, text, 3, rm, 0)) != 0) if ((rerr = regexec (&re, text, SUB_PAT_CT+1, rm, 0)) != 0)
{ {
fprintf( stderr, "Match error %d:\n%s\n", rerr, pz_pat ); fprintf( stderr, "Match error %d:\n%s\n", rerr, pz_pat );
exit(3); exit(3);
...@@ -413,7 +415,7 @@ FIX_PROC_HEAD( char_macro_def_fix ) ...@@ -413,7 +415,7 @@ FIX_PROC_HEAD( char_macro_def_fix )
free (pz_pat); free (pz_pat);
while ((rerr = regexec (&re, text, 3, rm, 0)) == 0) while ((rerr = regexec (&re, text, SUB_PAT_CT+1, rm, 0)) == 0)
{ {
const char* pz = text + rm[2].rm_so; const char* pz = text + rm[2].rm_so;
...@@ -450,6 +452,7 @@ FIX_PROC_HEAD( char_macro_def_fix ) ...@@ -450,6 +452,7 @@ FIX_PROC_HEAD( char_macro_def_fix )
* Emit the rest of the text * Emit the rest of the text
*/ */
fputs (text, stdout); fputs (text, stdout);
# undef SUB_PAT_CT
} }
/* Fix for machine name #ifdefs that are not in the namespace reserved /* Fix for machine name #ifdefs that are not in the namespace reserved
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment