summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author卜部昌平 <shyouhei@ruby-lang.org>2020-06-18 15:24:16 +0900
committer卜部昌平 <shyouhei@ruby-lang.org>2020-06-29 11:05:41 +0900
commit673ddea934db68a074e25925602a32b2994e3b06 (patch)
tree42da00d2c0f5d1ade3fea9c142957a5a86b4120e
parent31e5d138d71f186c5ab86b6a13b3b7472a693f80 (diff)
get_pat: do not goto into a branch
I'm not necessarily against every goto in general, but jumping into a branch is definitely a bad idea. Better refactor.
Notes
Notes: Merged: https://github.com/ruby/ruby/pull/3247
-rw-r--r--string.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/string.c b/string.c
index f7a26f5eef..dc1df0671d 100644
--- a/string.c
+++ b/string.c
@@ -5009,8 +5009,7 @@ get_pat(VALUE pat)
{
VALUE val;
- if (SPECIAL_CONST_P(pat)) goto to_string;
- switch (BUILTIN_TYPE(pat)) {
+ switch (OBJ_BUILTIN_TYPE(pat)) {
case T_REGEXP:
return pat;
@@ -5018,7 +5017,6 @@ get_pat(VALUE pat)
break;
default:
- to_string:
val = rb_check_string_type(pat);
if (NIL_P(val)) {
Check_Type(pat, T_REGEXP);