summaryrefslogtreecommitdiff
path: root/regexp.h
diff options
context:
space:
mode:
authorDavid Mitchell <davem@iabyn.com>2012-12-25 18:09:32 +0000
committerDavid Mitchell <davem@iabyn.com>2012-12-25 18:09:32 +0000
commit984e6dd18b2c93d4a6ae228bb9d2d98aadf7ca6e (patch)
tree869b7de1f2b2401a7eda4134742ca35370778d07 /regexp.h
parent4fab19ce1519686c7468c2e8b79b34d7d9b7f5bc (diff)
downloadperl-984e6dd18b2c93d4a6ae228bb9d2d98aadf7ca6e.tar.gz
eliminate RF_utf8 flag from PL_reg_flags
This global flag indicates whether the currently executing regex is utf8. Replace it with a boolean var local to to the matching function, and pass it around via function args, or as a member of the regmatch_info struct. This is a first step to eliminating PL_reg_flags.
Diffstat (limited to 'regexp.h')
-rw-r--r--regexp.h5
1 files changed, 2 insertions, 3 deletions
diff --git a/regexp.h b/regexp.h
index 664915b0f6..035e2bab3b 100644
--- a/regexp.h
+++ b/regexp.h
@@ -575,6 +575,7 @@ typedef struct {
SV *sv;
char *ganch;
char *cutpoint;
+ bool is_utf8_pat;
} regmatch_info;
@@ -646,9 +647,7 @@ typedef struct regmatch_state {
struct regmatch_state *prev_eval;
struct regmatch_state *prev_curlyx;
REGEXP *prev_rex;
- U32 toggle_reg_flags; /* what bits in PL_reg_flags to
- flip when transitioning between
- inner and outer rexen */
+ bool saved_utf8_pat; /* saved copy of is_utf8_pat */
CHECKPOINT cp; /* remember current savestack indexes */
CHECKPOINT lastcp;
U32 close_paren; /* which close bracket is our end */