summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornari <nari@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-03-26 05:39:22 +0000
committernari <nari@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-03-26 05:39:22 +0000
commitb9ea13595003eebdf18db97b8177285f215ce94f (patch)
treed98a8226913d84058275ab088f832df10741684a
parent17a6f9227a060a75c5c99a297fb8d3cd488ae777 (diff)
* internal.h (USE_SYMBOL_GC): enable Symbol GC by default (USE_SYMBOL_GC == 1).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45428 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog4
-rw-r--r--internal.h3
-rw-r--r--parse.y4
3 files changed, 11 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 284352d30e..0d71f579f2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Wed Mar 26 14:33:00 2014 Narihiro Nakamura <authornari@gmail.com>
+
+ * internal.h (USE_SYMBOL_GC): enable Symbol GC by default (USE_SYMBOL_GC == 1).
+
Tue Mar 25 22:57:11 2014 Narihiro Nakamura <authornari@gmail.com>
* parse.y: support Symbol GC. [ruby-trunk Feature #9634]
diff --git a/internal.h b/internal.h
index 6e4cd271a0..37488bec8c 100644
--- a/internal.h
+++ b/internal.h
@@ -729,6 +729,9 @@ struct RBasicRaw {
} while (0)
/* parse.y */
+#ifndef USE_SYMBOL_GC
+#define USE_SYMBOL_GC 1
+#endif
VALUE rb_parser_get_yydebug(VALUE);
VALUE rb_parser_set_yydebug(VALUE, VALUE);
int rb_is_const_name(VALUE name);
diff --git a/parse.y b/parse.y
index fa8d84ffe3..5cca05e324 100644
--- a/parse.y
+++ b/parse.y
@@ -10669,6 +10669,7 @@ rb_gc_free_dsymbol(VALUE ptr)
VALUE
rb_str_dynamic_intern(VALUE s)
{
+#if USE_SYMBOL_GC
VALUE str = RB_GC_GUARD(s);
VALUE dup;
rb_encoding *enc;
@@ -10704,6 +10705,9 @@ rb_str_dynamic_intern(VALUE s)
}
return dsym;
+#else
+ return rb_str_intern(s);
+#endif
}
static int