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 + + * hash.c (each_pair_i_fast): use rb_yield_values2 to avoid var args. + Tue Sep 13 21:32:54 2016 Kazuki Yamaguchi * 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; }