diff options
author | aamine <aamine@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2002-09-06 02:44:51 +0000 |
---|---|---|
committer | aamine <aamine@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2002-09-06 02:44:51 +0000 |
commit | e389d3d1530e22be209afa7925deeb8409e225ae (patch) | |
tree | 56f93c87135e9ee80ba50fcc20c3f7ea1137d915 | |
parent | 5ef74b512cd7e8878dfadb8cc2cebc45466aeb0a (diff) | |
download | ruby-e389d3d1530e22be209afa7925deeb8409e225ae.tar.gz |
* parse.y (rb_gc_mark_parser): should mark parse.y global variables.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2806 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | parse.y | 12 |
2 files changed, 12 insertions, 5 deletions
@@ -1,3 +1,8 @@ +Fri Sep 6 11:47:37 2002 Minero Aoki <aamine@loveruby.net> + + * parse.y (rb_gc_mark_parser): should mark parse.y global + variables. + Fri Sep 6 10:34:32 2002 Minero Aoki <aamine@loveruby.net> * io.c (rb_io_puts): RSTRING(line)->ptr might be NULL. @@ -5356,9 +5356,13 @@ ruby_parser_stack_on_heap() void rb_gc_mark_parser() { - if (ruby_in_compile) { - rb_gc_mark_maybe((VALUE)yylval.node); - } + if (!ruby_in_compile) return; + + rb_gc_mark_maybe((VALUE)yylval.node); + rb_gc_mark((VALUE)ruby_eval_tree_begin); + rb_gc_mark((VALUE)ruby_eval_tree); + rb_gc_mark((VALUE)lex_lastline); + rb_gc_mark((VALUE)lex_strterm); } void @@ -5443,8 +5447,6 @@ Init_sym() { sym_tbl = st_init_strtable_with_size(200); sym_rev_tbl = st_init_numtable_with_size(200); - rb_global_variable((VALUE*)&lex_lastline); - rb_global_variable((VALUE*)&lex_strterm); } static ID last_id = LAST_TOKEN; |