summaryrefslogtreecommitdiff
path: root/vm.c
diff options
context:
space:
mode:
Diffstat (limited to 'vm.c')
-rw-r--r--vm.c9
1 files changed, 1 insertions, 8 deletions
diff --git a/vm.c b/vm.c
index c9a6866d6f..39efee27c9 100644
--- a/vm.c
+++ b/vm.c
@@ -1872,14 +1872,7 @@ vm_define_method(rb_thread_t *th, VALUE obj, ID id, VALUE iseqval,
}
if (is_singleton) {
- if (FIXNUM_P(obj) || SYMBOL_P(obj) || CLASS_OF(obj) == rb_cFloat) {
- rb_raise(rb_eTypeError,
- "can't define singleton method \"%s\" for %s",
- rb_id2name(id), rb_obj_classname(obj));
- }
-
- rb_check_frozen(obj);
- klass = rb_singleton_class(obj);
+ klass = rb_singleton_class(obj); /* class and frozen checked in this API */
noex = NOEX_PUBLIC;
}