diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | gc.c | 2 |
2 files changed, 7 insertions, 3 deletions
@@ -1,3 +1,8 @@ +Thu Jun 29 23:56:01 2006 Yukihiro Matsumoto <matz@ruby-lang.org> + + * gc.c (gc_mark_children): a bug in NODE_BLOCK_PASS marking. + [ruby-dev:28908] + Thu Jun 29 23:04:36 2006 Yukihiro Matsumoto <matz@ruby-lang.org> * parse.y: use ARGSPUSH instead of ARGSCAT to prevent too much @@ -8,8 +13,7 @@ Thu Jun 29 23:04:36 2006 Yukihiro Matsumoto <matz@ruby-lang.org> * eval.c (block_orphan): lambda and proc from method are always orphan. - * gc.c (gc_mark_children): proper marking for NODE_BLOCK_PASS and - NODE_LAMBDA. + * gc.c (gc_mark_children): proper marking for NODE_LAMBDA. Thu Jun 29 22:47:30 2006 Tanaka Akira <akr@m17n.org> @@ -794,6 +794,7 @@ gc_mark_children(VALUE ptr, int lev) case NODE_RESBODY: case NODE_CLASS: case NODE_ARGS: + case NODE_BLOCK_PASS: gc_mark((VALUE)obj->as.node.u2.node, lev); /* fall through */ case NODE_BLOCK: /* 1,3 */ @@ -833,7 +834,6 @@ gc_mark_children(VALUE ptr, int lev) case NODE_MODULE: case NODE_ALIAS: case NODE_VALIAS: - case NODE_BLOCK_PASS: case NODE_LAMBDA: gc_mark((VALUE)obj->as.node.u1.node, lev); /* fall through */ |