diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | variable.c | 4 | ||||
-rw-r--r-- | vm_method.c | 5 |
3 files changed, 17 insertions, 0 deletions
@@ -1,3 +1,11 @@ +Sat Dec 3 20:49:16 2011 Yusuke Endoh <mame@tsg.ne.jp> + + * variable.c (set_const_visibility): print a warning when no argument + is passwd to Module#private_constant. [ruby-list:48558] + + * vm_method.c (set_method_visibility): ditto for + Module#private_class_method. + Sat Dec 3 20:43:14 2011 Yusuke Endoh <mame@tsg.ne.jp> * variable.c (set_const_visibility): Module#private_constant has diff --git a/variable.c b/variable.c index fc912d64f8..7f8988c579 100644 --- a/variable.c +++ b/variable.c @@ -2111,6 +2111,10 @@ set_const_visibility(VALUE mod, int argc, VALUE *argv, rb_const_flag_t flag) "Insecure: can't change constant visibility"); } + if (argc == 0) { + rb_warning("%s with no argument is just ignored", rb_id2name(rb_frame_callee())); + } + for (i = 0; i < argc; i++) { VALUE val = argv[i]; id = rb_check_id(&val); diff --git a/vm_method.c b/vm_method.c index f1235dcd47..3811f48246 100644 --- a/vm_method.c +++ b/vm_method.c @@ -985,6 +985,11 @@ set_method_visibility(VALUE self, int argc, VALUE *argv, rb_method_flag_t ex) { int i; secure_visibility(self); + + if (argc == 0) { + rb_warning("%s with no argument is just ignored", rb_id2name(rb_frame_callee())); + } + for (i = 0; i < argc; i++) { VALUE v = argv[i]; ID id = rb_check_id(&v); |