diff options
author | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-12-20 07:07:35 +0000 |
---|---|---|
committer | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-12-20 07:07:35 +0000 |
commit | 314bef7ef149d7ce87c57fa0c95e30fc8fb9b27f (patch) | |
tree | 0d4ec9f1e50ea5fb278260d7ac8517210761df6e /eval_jump.ci | |
parent | e42fac7c061283180cbc630bd930ef16f5074d33 (diff) | |
download | ruby-314bef7ef149d7ce87c57fa0c95e30fc8fb9b27f.tar.gz |
* insnhelper.ci, vm.c, vm_core.h: change interface of
vm_invoke_block() to specify block ptr. [ruby-talk:266422]
* cont.c, eval_jump.ci, insns.def, proc.c, signal.c, thread.c:
apply above change.
* bootstraptest/test_knownbug.rb: move fixed bug.
* bootstraptest/test_block.rb: ditto. and add a test.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14356 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'eval_jump.ci')
-rw-r--r-- | eval_jump.ci | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/eval_jump.ci b/eval_jump.ci index db32bba8f5..948ac635be 100644 --- a/eval_jump.ci +++ b/eval_jump.ci @@ -159,13 +159,10 @@ rb_catch_obj(VALUE tag, VALUE (*func)(), VALUE data) /* exit */ -static void call_end_proc _((VALUE data)); - -static void -call_end_proc(VALUE data) +void +rb_call_end_proc(VALUE data) { - /* TODO: fix me */ - proc_invoke(data, rb_ary_new2(0), Qundef, 0); + rb_proc_call(data, rb_ary_new()); } /* @@ -198,7 +195,7 @@ rb_f_at_exit(void) rb_raise(rb_eArgError, "called without a block"); } proc = rb_block_proc(); - rb_set_end_proc(call_end_proc, proc); + rb_set_end_proc(rb_call_end_proc, proc); return proc; } |