1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
$NetBSD: patch-al,v 1.2 2004/03/20 04:39:34 taca Exp $
--- eval.c.orig 2002-12-16 16:34:22.000000000 +0900
+++ eval.c
@@ -3531,7 +3531,8 @@ rb_jump_tag(tag)
int
rb_block_given_p()
{
- if (ruby_frame->iter) return Qtrue;
+ if (ruby_frame->iter && ruby_block)
+ return Qtrue;
return Qfalse;
}
@@ -4489,7 +4490,7 @@ rb_call0(klass, recv, id, argc, argv, bo
rb_raise(rb_eArgError, "wrong # of arguments(%d for %d)",
argc, i);
}
- if (node->nd_rest == -1) {
+ if ((int)node->nd_rest == -1) {
int opt = i;
NODE *optnode = node->nd_opt;
@@ -4525,7 +4526,7 @@ rb_call0(klass, recv, id, argc, argv, bo
rb_eval(recv, opt);
}
}
- if (node->nd_rest >= 0) {
+ if ((int)node->nd_rest >= 0) {
VALUE v;
if (argc > 0)
|