summaryrefslogtreecommitdiffstats
path: root/ruby.c
diff options
context:
space:
mode:
authoraamine <aamine@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2002-09-02 12:19:30 +0000
committeraamine <aamine@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2002-09-02 12:19:30 +0000
commite5e77efb2d9832fe3d9fc1df33037307f2ea897f (patch)
treee76417887fb3e3fe98f895eac82cfbd1ff060953 /ruby.c
parente909a59788359ab4d39fed1bb05583e03a33daf9 (diff)
downloadruby-e5e77efb2d9832fe3d9fc1df33037307f2ea897f.tar.gz
ruby-e5e77efb2d9832fe3d9fc1df33037307f2ea897f.tar.xz
ruby-e5e77efb2d9832fe3d9fc1df33037307f2ea897f.zip
* gc.c (gc_sweep): does reclaim nodes in also compile time, if we can.
* ruby.c (load_file): omit GC if we can. * parse.y (ruby_parser_stack_on_heap): new function. * intern.h (ruby_parser_stack_on_heap): added. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@2780 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ruby.c')
-rw-r--r--ruby.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/ruby.c b/ruby.c
index 8aa20ce11..dfaa2e1c9 100644
--- a/ruby.c
+++ b/ruby.c
@@ -856,7 +856,10 @@ load_file(fname, script)
else if (f != rb_stdin) {
rb_io_close(f);
}
- rb_gc();
+
+ if (ruby_parser_stack_on_heap()) {
+ rb_gc();
+ }
}
void