From 800c7af73ccae7ef862674f682d1d82ba2149379 Mon Sep 17 00:00:00 2001 From: nobu Date: Sun, 15 Jun 2014 13:21:21 +0000 Subject: vm_method.c: separate ID selection * vm_method.c (rb_method_entry_make): separate selection of IDs to be private from condition of method to be defined. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46438 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- vm_method.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) (limited to 'vm_method.c') diff --git a/vm_method.c b/vm_method.c index d5513327c0..3095ac279f 100644 --- a/vm_method.c +++ b/vm_method.c @@ -261,11 +261,15 @@ rb_method_entry_make(VALUE klass, ID mid, rb_method_type_t type, } if (!FL_TEST(klass, FL_SINGLETON) && type != VM_METHOD_TYPE_NOTIMPLEMENTED && - type != VM_METHOD_TYPE_ZSUPER && - (mid == idInitialize || mid == idInitialize_copy || - mid == idInitialize_clone || mid == idInitialize_dup || - mid == idRespond_to_missing)) { - noex = NOEX_PRIVATE | noex; + type != VM_METHOD_TYPE_ZSUPER) { + switch (mid) { + case idInitialize: + case idInitialize_copy: + case idInitialize_clone: + case idInitialize_dup: + case idRespond_to_missing: + noex |= NOEX_PRIVATE; + } } rb_check_frozen(klass); -- cgit v1.2.3