diff options
Diffstat (limited to 'vm_insnhelper.c')
-rw-r--r-- | vm_insnhelper.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/vm_insnhelper.c b/vm_insnhelper.c index 185178797c..81493a4fa5 100644 --- a/vm_insnhelper.c +++ b/vm_insnhelper.c @@ -4372,6 +4372,10 @@ vm_opt_regexpmatch2(VALUE recv, VALUE obj) BASIC_OP_UNREDEFINED_P(BOP_MATCH, STRING_REDEFINED_OP_FLAG)) { return rb_reg_match(obj, recv); } + else if (CLASS_OF(recv) == rb_cRegexp && + BASIC_OP_UNREDEFINED_P(BOP_MATCH, REGEXP_REDEFINED_OP_FLAG)) { + return rb_reg_match(recv, obj); + } else { return Qundef; } |