summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--hash.c3
2 files changed, 6 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 5b2e81a29d..2fdb71ba7c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Wed Sep 14 07:02:31 2016 NARUSE, Yui <naruse@ruby-lang.org>
+
+ * hash.c (each_pair_i_fast): use rb_yield_values2 to avoid var args.
+
Tue Sep 13 21:32:54 2016 Kazuki Yamaguchi <k@rhe.jp>
* string.c (STR_HEAP_SIZE, RESIZE_CAPA_TERM, str_new0, rb_str_buf_new,
diff --git a/hash.c b/hash.c
index 8ff6d1b94b..401b7e4ab1 100644
--- a/hash.c
+++ b/hash.c
@@ -1750,7 +1750,8 @@ each_pair_i(VALUE key, VALUE value)
static int
each_pair_i_fast(VALUE key, VALUE value)
{
- rb_yield_values(2, key, value);
+ VALUE argv[2] = {key, value};
+ rb_yield_values2(2, argv);
return ST_CONTINUE;
}