Ruby Forum Ruby-dev > break in lambda

Posted by Tanaka Akira (Guest)
on 11.05.2008 08:14
(Received via mailing list)
lambda $BD>2<$K(B break $B$,$"$C$?$H$-!"$J$K$4$H$b$J$+$C$?$+$N$h$&(B
$B$K$=$3$rDL$j2a$.$k$N$OJQ$G$O$J$$$G$7$g$&$+!#(B

statement not reached $B$H$$$&7Y9p$b=P$^$9$7!#(B

% ./ruby -ve '
lambda {
  p 1
  break
  p 2
}.call
'
ruby 1.9.0 (2008-05-11 revision 16355) [i686-linux]
-e:4: warning: statement not reached
1
2
Posted by wanabe (Guest)
on 12.05.2008 12:51
(Received via mailing list)
$B%o%J%Y$H?=$7$^$9!#(B

2008/05/11 15:13 Tanaka Akira <akr@fsij.org>:
> lambda $BD>2<$K(B break $B$,$"$C$?$H$-!"$J$K$4$H$b$J$+$C$?$+$N$h$&(B
>  $B$K$=$3$rDL$j2a$.$k$N$OJQ$G$O$J$$$G$7$g$&$+!#(B

$B<+?.$O$"$j$^$;$s$,!"B?J,$3$l$G$$$$$N$G$O$J$$$+$H;W$$$^$9!#(B

Index: vm_insnhelper.c
===================================================================
--- vm_insnhelper.c  (revision 16344)
+++ vm_insnhelper.c  (working copy)
@@ -1238,7 +1238,7 @@
     if (VM_FRAME_TYPE(cfp) == FRAME_MAGIC_LAMBDA) {
         /* lambda{... break ...} */
         is_orphan = 0;
-        pt = dfp;
+        pt = GC_GUARDED_PTR_REF((VALUE *) *dfp);
     }
     else {
         dfp = GC_GUARDED_PTR_REF((VALUE *) *dfp);
Posted by Yukihiro Matsumoto (Guest)
on 13.05.2008 03:01
(Received via mailing list)
$B$^$D$b$H(B $B$f$-$R$m$G$9(B

In message "Re: [ruby-dev:34658] Re: break in lambda"
    on Mon, 12 May 2008 19:50:42 +0900, wanabe <s.wanabe@gmail.com> 
writes:

|2008/05/11 15:13 Tanaka Akira <akr@fsij.org>:
|> lambda $BD>2<$K(B break $B$,$"$C$?$H$-!"$J$K$4$H$b$J$+$C$?$+$N$h$&(B
|>  $B$K$=$3$rDL$j2a$.$k$N$OJQ$G$O$J$$$G$7$g$&$+!#(B
|
|$B<+?.$O$"$j$^$;$s$,!"B?J,$3$l$G$$$$$N$G$O$J$$$+$H;W$$$^$9!#(B

$B$5$5$@$/$s$5$(NI$1$l$P%3%_%C%H$7$^$9!#(B
Posted by SASADA Koichi (Guest)
on 13.05.2008 04:45
(Received via mailing list)
$B!!$5$5$@$G$9!%(B

Yukihiro Matsumoto wrote:
> |$B<+?.$O$"$j$^$;$s$,!"B?J,$3$l$G$$$$$N$G$O$J$$$+$H;W$$$^$9!#(B
> 
> $B$5$5$@$/$s$5$(NI$1$l$P%3%_%C%H$7$^$9!#(B

$B!!;d$b<+?.$,$"$j$^$;$s$,!$8!>Z$9$kM>M5$,$J$$$N$G$*G$$;$7$^$9!%%F%9%H(B
$B$ODL$C$F$$$k$s$G$9$h$M!)(B

$B!!3NG'$G$9$,!$(Blambda $BCf$N(B break $B$O!$(Breturn 
$B$HF1Ey$G$$$$$s$G$7$?$C$1!%(B
Posted by Yukihiro Matsumoto (Guest)
on 13.05.2008 08:43
(Received via mailing list)
$B$^$D$b$H(B $B$f$-$R$m$G$9(B

In message "Re: [ruby-dev:34670] Re: break in lambda"
    on Tue, 13 May 2008 11:45:09 +0900, SASADA Koichi <ko1@atdot.net> 
writes:

|> $B$5$5$@$/$s$5$(NI$1$l$P%3%_%C%H$7$^$9!#(B
|
|$B!!;d$b<+?.$,$"$j$^$;$s$,!$8!>Z$9$kM>M5$,$J$$$N$G$*G$$;$7$^$9!%%F%9%H(B
|$B$ODL$C$F$$$k$s$G$9$h$M!)(B

$B$8$c$"!"%o%J%Y$5$s$K%3%_%C%H8"$,$H$I$$$?$i%A%'%C%/%$%s$7$F$$(B
$B$?$@$/$H$$$&$3$H$G!#(B

|$B!!3NG'$G$9$,!$(Blambda $BCf$N(B break $B$O!$(Breturn $B$HF1Ey$G$$$$$s$G$7$?$C$1!%(B

$B$O$$!#(B
Posted by SASADA Koichi (Guest)
on 13.05.2008 09:35
(Received via mailing list)
$B!!$5$5$@$G$9!%(B

Yukihiro Matsumoto wrote:
> $B$8$c$"!"%o%J%Y$5$s$K%3%_%C%H8"$,$H$I$$$?$i%A%'%C%/%$%s$7$F$$(B
> $B$?$@$/$H$$$&$3$H$G!#(B

$B!!$"$j$c!$$9$_$^$;$s!%$9$G$KFO$$$F$$$k$H;W$C$F$$$^$7$?!%(B

> |$B!!3NG'$G$9$,!$(Blambda $BCf$N(B break $B$O!$(Breturn $B$HF1Ey$G$$$$$s$G$7$?$C$1!%(B
> 
> $B$O$$!#(B

$B!!$3$N$"$?$j!$5nG/@0M}$7$?$O$:$J$N$K!$$^$@;D$C$F$$$k$H8@$&$3$H$O!$%F(B
$B%9%H$,IT==J,$@$C$?$H$$$&$3$H$J$s$G$7$g$&$M!%$3$A$i$b$9$_$^$;$s!%:n$C(B
$B$?8e$G!$B>$NJQ99$,1F6A$7$?$N$+$J!%(B