* eval.c (ruby_exec_internal): do nothing if no code.
* compile.c (rb_iseq_compile): check node if NULL before check nd_type. [ruby-talk:252956] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12386 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
a1cb9efd34
commit
b904e87f08
@ -1,3 +1,10 @@
|
|||||||
|
Sat May 26 00:38:21 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||||
|
|
||||||
|
* eval.c (ruby_exec_internal): do nothing if no code.
|
||||||
|
|
||||||
|
* compile.c (rb_iseq_compile): check node if NULL before check
|
||||||
|
nd_type. [ruby-talk:252956]
|
||||||
|
|
||||||
Sat May 26 00:05:22 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
Sat May 26 00:05:22 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||||
|
|
||||||
|
|
||||||
|
@ -144,7 +144,10 @@ rb_iseq_compile(VALUE self, NODE *node)
|
|||||||
rb_iseq_t *iseq;
|
rb_iseq_t *iseq;
|
||||||
GetISeqPtr(self, iseq);
|
GetISeqPtr(self, iseq);
|
||||||
|
|
||||||
if (nd_type(node) == NODE_SCOPE) {
|
if (node == 0) {
|
||||||
|
COMPILE(ret, "nil", node);
|
||||||
|
}
|
||||||
|
else if (nd_type(node) == NODE_SCOPE) {
|
||||||
/* iseq type of top, method, class, block */
|
/* iseq type of top, method, class, block */
|
||||||
set_local_table(iseq, node->nd_tbl);
|
set_local_table(iseq, node->nd_tbl);
|
||||||
set_arguments(iseq, ret, node->nd_args);
|
set_arguments(iseq, ret, node->nd_args);
|
||||||
@ -197,9 +200,6 @@ rb_iseq_compile(VALUE self, NODE *node)
|
|||||||
else if (iseq->type == ISEQ_TYPE_DEFINED_GUARD) {
|
else if (iseq->type == ISEQ_TYPE_DEFINED_GUARD) {
|
||||||
COMPILE(ret, "defined guard", node);
|
COMPILE(ret, "defined guard", node);
|
||||||
}
|
}
|
||||||
else if (node == 0) {
|
|
||||||
COMPILE(ret, "nil", node);
|
|
||||||
}
|
|
||||||
else {
|
else {
|
||||||
rb_bug("unknown scope");
|
rb_bug("unknown scope");
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user