Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Index: parse.y
- ===================================================================
- --- parse.y (revision 6446)
- +++ parse.y (working copy)
- @@ -6168,6 +6168,11 @@
- * :wait2, :$>]
- */
- +struct st_table *
- +rb_parse_sym_tbl() {
- + return sym_tbl;
- +}
- +
- VALUE
- rb_sym_all_symbols()
- {
- Index: parse.c
- ===================================================================
- --- parse.c (revision 6446)
- +++ parse.c (working copy)
- @@ -11157,6 +11157,11 @@
- * :wait2, :$>]
- */
- +struct st_table *
- +rb_parse_sym_tbl() {
- + return sym_tbl;
- +}
- +
- VALUE
- rb_sym_all_symbols()
- {
- Index: gc.c
- ===================================================================
- --- gc.c (revision 6446)
- +++ gc.c (working copy)
- @@ -260,8 +260,6 @@
- }
- }
- -#undef GC_DEBUG
- -
- void
- rb_global_variable(var)
- VALUE *var;
- @@ -296,10 +294,8 @@
- struct RVarmap varmap;
- struct SCOPE scope;
- } as;
- -#ifdef GC_DEBUG
- char *file;
- int line;
- -#endif
- } RVALUE;
- #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__CYGWIN__)
- @@ -318,6 +314,22 @@
- static int heaps_length = 0;
- static int heaps_used = 0;
- +struct heaps_slot *
- +rb_gc_heap_slots()
- +{
- + return heaps;
- +}
- +
- +int
- +rb_gc_heaps_used() {
- + return heaps_used;
- +}
- +
- +int
- +rb_gc_heaps_length() {
- + return heaps_length;
- +}
- +
- #define HEAP_MIN_SLOTS 10000
- static int heap_slots = HEAP_MIN_SLOTS;
- @@ -386,16 +398,19 @@
- rb_newobj()
- {
- VALUE obj;
- -
- +
- if (!freelist) garbage_collect();
- obj = (VALUE)freelist;
- freelist = freelist->as.free.next;
- - MEMZERO((void*)obj, RVALUE, 1);
- -#ifdef GC_DEBUG
- - RANY(obj)->file = ruby_sourcefile;
- - RANY(obj)->line = ruby_sourceline;
- -#endif
- +
- + MEMZERO((void*)obj, RVALUE, 1);
- +
- + if (ruby_current_node && ruby_current_node->nd_file) {
- + RANY(obj)->file = ruby_current_node->nd_file;
- + RANY(obj)->line = nd_line(ruby_current_node);
- + }
- +
- return obj;
- }
- @@ -732,7 +747,10 @@
- if (rb_special_const_p(ptr)) return; /* special const not marked */
- if (obj->as.basic.flags == 0) return; /* free cell */
- if (obj->as.basic.flags & FL_MARK) return; /* already marked */
- +
- obj->as.basic.flags |= FL_MARK;
- + /* mark our new reference point for sourcefile objects */
- + mark_source_filename(RANY(obj)->file);
- if (lev > GC_LEVEL_MAX || (lev == 0 && ruby_stack_check())) {
- if (!mark_stack_overflow) {
- Index: version.h
- ===================================================================
- --- version.h (revision 6439)
- +++ version.h (working copy)
- @@ -2,7 +2,7 @@
- #define RUBY_RELEASE_DATE "2008-06-20"
- #define RUBY_VERSION_CODE 186
- #define RUBY_RELEASE_CODE 20080620
- -#define RUBY_PATCHLEVEL 230
- +#define RUBY_PATCHLEVEL 902
- #define RUBY_VERSION_MAJOR 1
- #define RUBY_VERSION_MINOR 8
Add Comment
Please, Sign In to add comment