[#1147] Copying RVALUE — why the lucky stiff <ruby-core@...>

Hello, everyone. Hope you are all doing well.

18 messages 2003/06/17
[#1155] Re: Copying RVALUE — matz@... (Yukihiro Matsumoto) 2003/06/20

Hi,

[#1157] Re: Copying RVALUE — why the lucky stiff <ruby-core@...> 2003/06/20

Yukihiro Matsumoto (matz@ruby-lang.org) wrote:

[#1173] class.c code cleanup (rb_class_*_instance_methods) — Matthew Dempsky <jivera@...>

Hi, I'm new to this mailing list so I don't know the procedure for

15 messages 2003/06/22
[#1174] Re: [Patch] class.c code cleanup (rb_class_*_instance_methods) — nobu.nokada@... 2003/06/22

Hi,

[#1175] Re: [Patch] class.c code cleanup (rb_class_*_instance_methods) — Matthew Dempsky <jivera@...> 2003/06/22

On Sun, 2003-06-22 at 05:36, nobu.nokada@softhome.net wrote:

[#1176] Re: [Patch] class.c code cleanup (rb_class_*_instance_methods) — nobu.nokada@... 2003/06/22

Hi,

[#1193] Re: [Patch] class.c code cleanup (rb_class_*_instance_methods) — Matthew Dempsky <jivera@...> 2003/06/25

On Sun, 2003-06-22 at 07:41, nobu.nokada@softhome.net wrote:

[#1177] Re: In 1.8.0 nil.to_s is not the same as "" — ts <decoux@...>

14 messages 2003/06/22

Re: 'unexpected break' when captured block calls break

From: nobu.nokada@...
Date: 2003-06-20 16:42:19 UTC
List: ruby-core #1158
Hi,

At Fri, 20 Jun 2003 18:47:45 +0900,
Yukihiro Matsumoto wrote:
> |then Ruby stops with an 'unexpected break' error, which doesn't look right.
> 
> This is a bug.  Thank you for finding it.  I suspend preview3 release
> until I fix this.

Although I'm not sure what will be expected, kinds like this?


Index: eval.c
===================================================================
RCS file: /cvs/ruby/src/ruby/eval.c,v
retrieving revision 1.463
diff -u -2 -p -r1.463 eval.c
--- eval.c	20 Jun 2003 07:11:40 -0000	1.463
+++ eval.c	20 Jun 2003 16:09:49 -0000
@@ -6941,5 +6941,5 @@ proc_invoke(proc, args, self, klass)
     volatile VALUE old_wrapper = ruby_wrapper;
     struct RVarmap * volatile old_dvars = ruby_dyna_vars;
-    int pcall;
+    volatile int pcall;
 
     if (rb_block_given_p() && ruby_frame->last_func) {
@@ -6974,5 +6974,5 @@ proc_invoke(proc, args, self, klass)
     POP_ITER();
     incoming_state = state;
-    if (ruby_block->tag->dst == state) {
+    if (pcall || ruby_block->tag->dst == state) {
 	state &= TAG_MASK;
     }
@@ -7007,5 +7007,5 @@ proc_invoke(proc, args, self, klass)
 	break;
       default:
-	JUMP_TAG(state);
+	JUMP_TAG(incoming_state);
     }
     return result;


-- 
Nobu Nakada

In This Thread