diff options
author | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-05-19 03:08:50 +0000 |
---|---|---|
committer | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-05-19 03:08:50 +0000 |
commit | 385f0e8af657b1334e477e6837b0846cc14fa00d (patch) | |
tree | c0b84dcfa47e0a9b3811ec64bcfad453b03b723b /proc.c | |
parent | 2e5e857a0bea7f0d784448550e9182c4cc477ee2 (diff) | |
download | ruby-385f0e8af657b1334e477e6837b0846cc14fa00d.tar.gz |
* vm.c, insns.def, eval.c, vm_insnhelper.c: fix CREF handling.
VM value stack frame of block contains cref information.
(dfp[-1] points CREF)
* compile.c, eval_intern.h, eval_method.c, load.c, proc.c,
vm_dump.h, vm_core.h: ditto.
* include/ruby/ruby.h, gc.c: remove T_VALUES because of above
changes.
* bootstraptest/test_eval.rb, test_knownbug.rb: move solved test.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16468 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'proc.c')
-rw-r--r-- | proc.c | 6 |
1 files changed, 0 insertions, 6 deletions
@@ -50,7 +50,6 @@ proc_mark(void *ptr) proc = ptr; RUBY_MARK_UNLESS_NULL(proc->envval); RUBY_MARK_UNLESS_NULL(proc->blockprocval); - RUBY_MARK_UNLESS_NULL((VALUE)proc->special_cref_stack); RUBY_MARK_UNLESS_NULL(proc->block.proc); RUBY_MARK_UNLESS_NULL(proc->block.self); if (proc->block.iseq && RUBY_VM_IFUNC_P(proc->block.iseq)) { @@ -94,7 +93,6 @@ proc_dup(VALUE self) dst->block.proc = procval; dst->envval = src->envval; dst->safe_level = dst->safe_level; - dst->special_cref_stack = src->special_cref_stack; dst->is_lambda = src->is_lambda; return procval; @@ -241,7 +239,6 @@ binding_mark(void *ptr) if (ptr) { bind = ptr; RUBY_MARK_UNLESS_NULL(bind->env); - RUBY_MARK_UNLESS_NULL((VALUE)bind->cref_stack); } RUBY_MARK_LEAVE("binding"); } @@ -264,7 +261,6 @@ binding_dup(VALUE self) GetBindingPtr(self, src); GetBindingPtr(bindval, dst); dst->env = src->env; - dst->cref_stack = src->cref_stack; return bindval; } @@ -286,7 +282,6 @@ rb_binding_new(void) GetBindingPtr(bindval, bind); bind->env = vm_make_env_object(th, cfp); - bind->cref_stack = ruby_cref(); return bindval; } @@ -1587,7 +1582,6 @@ proc_binding(VALUE self) } bind->env = proc->envval; - bind->cref_stack = proc->special_cref_stack; return bindval; } |