From aabb7851972e36291ca53551815a3b7f3dea046e Mon Sep 17 00:00:00 2001 From: matz Date: Mon, 16 Jun 2003 04:49:25 +0000 Subject: [PATCH] * 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] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3944 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 8 ++++++++ regex.c | 7 +++++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 06019849f5..6307433226 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +Sat Jun 14 16:58:41 2003 Guy Decoux + + * 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 * eval.c (method_arity): should handle NODE_BMETHOD and diff --git a/regex.c b/regex.c index 57ce31fe33..4ac18cb3a0 100644 --- a/regex.c +++ b/regex.c @@ -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: