diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | eval.c | 10 |
2 files changed, 13 insertions, 1 deletions
@@ -1,3 +1,7 @@ +Fri Jun 10 23:55:17 2005 Tanaka Akira <akr@m17n.org> + + * eval.c (unknown_node): show more information. [ruby-dev:26196] + Fri Jun 10 22:54:18 2005 Nobuyoshi Nakada <nobu@ruby-lang.org> * missing.h: fd_set stuffs need sys/types.h. fixed: [ruby-core:05179] @@ -2796,7 +2796,15 @@ unknown_node(node) NODE *volatile node; { ruby_current_node = 0; - rb_bug("unknown node type %d", nd_type(node)); + if (node->flags == 0) { + rb_bug("terminated node (0x%lx)", (long)node); + } + else if (BUILTIN_TYPE(node) != T_NODE) { + rb_bug("not a node 0x%02lx (0x%lx)", BUILTIN_TYPE(node), (long)node); + } + else { + rb_bug("unknown node type %d (0x%lx)", nd_type(node), (long)node); + } } static VALUE |