ruby-changes:24180
From: nobu <ko1@a...>
Date: Wed, 27 Jun 2012 13:11:28 +0900 (JST)
Subject: [ruby-changes:24180] nobu:r36231 (trunk): NOEX_NOREDEF
nobu 2012-06-27 13:10:12 +0900 (Wed, 27 Jun 2012) New Revision: 36231 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=36231 Log: NOEX_NOREDEF * vm_method.c (rb_method_entry_make): use NOEX_NOREDEF itself for the condition. Modified files: trunk/vm_method.c Index: vm_method.c =================================================================== --- vm_method.c (revision 36230) +++ vm_method.c (revision 36231) @@ -6,7 +6,10 @@ #define CACHE_MASK 0x7ff #define EXPR1(c,m) ((((c)>>3)^(m))&CACHE_MASK) +#define NOEX_NOREDEF 0 +#ifndef NOEX_NOREDEF #define NOEX_NOREDEF NOEX_RESPONDS +#endif static void rb_vm_check_redefinition_opt_method(const rb_method_entry_t *me, VALUE klass); @@ -199,9 +202,10 @@ rb_method_definition_t *old_def = old_me->def; if (rb_method_definition_eq(old_def, def)) return old_me; -#if 0 +#if NOEX_NOREDEF if (old_me->flag & NOEX_NOREDEF) { - rb_raise(rb_eTypeError, "cannot redefine %s#%s", rb_class2name(klass), rb_id2name(mid)); + rb_raise(rb_eTypeError, "cannot redefine %"PRIsVALUE"#%"PRIsVALUE, + klass, rb_id2str(mid)); } #endif rb_vm_check_redefinition_opt_method(old_me, klass); -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/