ruby-changes:34654
From: ko1 <ko1@a...>
Date: Mon, 7 Jul 2014 12:42:48 +0900 (JST)
Subject: [ruby-changes:34654] ko1:r46737 (trunk): * parse.y: need to use updated (re-created) symbols.
ko1 2014-07-07 12:42:42 +0900 (Mon, 07 Jul 2014) New Revision: 46737 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=46737 Log: * parse.y: need to use updated (re-created) symbols. Modified files: trunk/ChangeLog trunk/gc.c trunk/internal.h trunk/parse.y Index: ChangeLog =================================================================== --- ChangeLog (revision 46736) +++ ChangeLog (revision 46737) @@ -1,3 +1,7 @@ https://github.com/ruby/ruby/blob/trunk/ChangeLog#L1 +Mon Jul 7 12:40:59 2014 Koichi Sasada <ko1@a...> + + * parse.y: need to use updated (re-created) symbols. + Mon Jul 7 11:02:55 2014 NARUSE, Yui <naruse@r...> * tool/mkconfig.rb: remove not to require rbconfig/obsolete.rb. Index: gc.c =================================================================== --- gc.c (revision 46736) +++ gc.c (revision 46737) @@ -204,7 +204,7 @@ static ruby_gc_params_t gc_params = { https://github.com/ruby/ruby/blob/trunk/gc.c#L204 * 4: show all references */ #ifndef RGENGC_CHECK_MODE -#define RGENGC_CHECK_MODE 0 +#define RGENGC_CHECK_MODE 3 #endif /* RGENGC_PROFILE Index: parse.y =================================================================== --- parse.y (revision 46736) +++ parse.y (revision 46737) @@ -10503,7 +10503,7 @@ lookup_str_id(st_data_t str, st_data_t * https://github.com/ruby/ruby/blob/trunk/parse.y#L10503 } id = (ID)*data; if (ID_DYNAMIC_SYM_P(id)) { - rb_pin_dynamic_symbol((VALUE)id); + *data = (st_data_t)rb_pin_dynamic_symbol((VALUE)id); } return TRUE; } @@ -10532,7 +10532,7 @@ rb_intern3(const char *name, long len, r https://github.com/ruby/ruby/blob/trunk/parse.y#L10532 id = intern_cstr_without_pindown(name, len, enc); if (ID_DYNAMIC_SYM_P(id)) { - rb_pin_dynamic_symbol((VALUE)id); + id = rb_pin_dynamic_symbol((VALUE)id); } return id; @@ -10974,7 +10974,7 @@ rb_check_id(volatile VALUE *namep) https://github.com/ruby/ruby/blob/trunk/parse.y#L10974 id = rb_check_id_without_pindown((VALUE *)namep); if (ID_DYNAMIC_SYM_P(id)) { - rb_pin_dynamic_symbol((VALUE)id); + id = rb_pin_dynamic_symbol((VALUE)id); } return id; @@ -10987,7 +10987,7 @@ rb_check_id_cstr(const char *ptr, long l https://github.com/ruby/ruby/blob/trunk/parse.y#L10987 id = rb_check_id_cstr_without_pindown(ptr, len, enc); if (ID_DYNAMIC_SYM_P(id)) { - rb_pin_dynamic_symbol((VALUE)id); + id = rb_pin_dynamic_symbol((VALUE)id); } return id; Index: internal.h =================================================================== --- internal.h (revision 46736) +++ internal.h (revision 46737) @@ -419,6 +419,8 @@ struct RSymbol { https://github.com/ruby/ruby/blob/trunk/internal.h#L419 }; #define RSYMBOL(obj) (R_CAST(RSymbol)(obj)) +#define SYMBOL_PINNED FL_USER1 +#define SYMBOL_PINNED_P(sym) FL_TEST((sym), SYMBOL_PINNED) struct RFloat { struct RBasic basic; -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/