diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | regex.c | 7 |
2 files changed, 13 insertions, 2 deletions
@@ -1,3 +1,11 @@ +Sat Jun 14 16:58:41 2003 Guy Decoux <ts@moulon.inra.fr> + + * regex.c (calculate_must_string): should handle option_set + properly. [ruby-talk:73481] + + * regex.c (re_compile_fastmap): a bug in flag manipulation. + [ruby-talk:73549] + Sat Jun 14 17:59:59 2003 Guy Decoux <ts@moulon.inra.fr> * eval.c (method_arity): should handle NODE_BMETHOD and @@ -1037,6 +1037,7 @@ calculate_must_string(start, end) break; case duplicate: + case option_set: p++; break; @@ -1062,7 +1063,6 @@ calculate_must_string(start, end) case push_dummy_failure: case start_paren: case stop_paren: - case option_set: break; case charset: @@ -2815,8 +2815,11 @@ re_compile_fastmap(bufp) case casefold_on: bufp->options |= RE_MAY_IGNORECASE; + options |= RE_OPTION_IGNORECASE; + continue; + case casefold_off: - options ^= RE_OPTION_IGNORECASE; + options &= ~RE_OPTION_IGNORECASE; continue; case option_set: |