* vm_eval.c (rb_call0): refine exception message for hidden objects.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23696 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
04388f9f9d
commit
5aac65484e
@ -1,3 +1,7 @@
|
||||
Tue Jun 16 01:50:02 2009 Tanaka Akira <akr@fsij.org>
|
||||
|
||||
* vm_eval.c (rb_call0): refine exception message for hidden objects.
|
||||
|
||||
Mon Jun 15 22:35:31 2009 Tadayoshi Funaba <tadf@dotrb.org>
|
||||
|
||||
* bignum.c (rb_big2db): (-Float::MAX.to_i*2).to_f should return
|
||||
|
@ -187,9 +187,12 @@ rb_call0(VALUE klass, VALUE recv, ID mid, int argc, const VALUE *argv,
|
||||
rb_thread_t *th = GET_THREAD();
|
||||
|
||||
if (!klass) {
|
||||
const char *adj = "terminated";
|
||||
if (!IMMEDIATE_P(recv) && RBASIC(recv)->flags != 0)
|
||||
adj = "hidden";
|
||||
rb_raise(rb_eNotImpError,
|
||||
"method `%s' called on terminated object (%p)",
|
||||
rb_id2name(mid), (void *)recv);
|
||||
"method `%s' called on %s object (%p)",
|
||||
rb_id2name(mid), adj, (void *)recv);
|
||||
}
|
||||
/* is it in the method cache? */
|
||||
ent = cache + EXPR1(klass, mid);
|
||||
|
Loading…
x
Reference in New Issue
Block a user