From 46697c7e26472e39dbe963ebc33924a37e81d026 Mon Sep 17 00:00:00 2001 From: k0kubun Date: Thu, 19 Apr 2018 16:19:48 +0000 Subject: [PATCH] internal.h: use the same declaration as definition range.c: cast the function type to meet the declaration This change is for fixing build error on AppVeyor: https://ci.appveyor.com/project/ruby/ruby/build/1.0.8177 string.c ../string.c(4330) : error C4028: formal parameter 2 different from declaration git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63198 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- internal.h | 2 +- range.c | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/internal.h b/internal.h index ae5fef437a..e72785be56 100644 --- a/internal.h +++ b/internal.h @@ -2013,7 +2013,7 @@ VALUE rb_gcd_gmp(VALUE x, VALUE y); /* internal use */ VALUE rb_setup_fake_str(struct RString *fake_str, const char *name, long len, rb_encoding *enc); #endif -VALUE rb_str_upto_endless_each(VALUE, VALUE (*each)(), VALUE); +VALUE rb_str_upto_endless_each(VALUE, VALUE (*each)(VALUE, VALUE), VALUE); /* thread.c (export) */ int ruby_thread_has_gvl_p(void); /* for ext/fiddle/closure.c */ diff --git a/range.c b/range.c index 0fc1605176..fb3a4cbaff 100644 --- a/range.c +++ b/range.c @@ -432,7 +432,7 @@ range_step(int argc, VALUE *argv, VALUE range) iter[1] = step; if (NIL_P(e)) { - rb_str_upto_endless_each(rb_sym2str(b), sym_step_i, (VALUE)iter); + rb_str_upto_endless_each(rb_sym2str(b), (VALUE (*)(VALUE, VALUE))sym_step_i, (VALUE)iter); } else { args[0] = rb_sym2str(e); @@ -467,7 +467,7 @@ range_step(int argc, VALUE *argv, VALUE range) iter[1] = step; if (NIL_P(e)) { - rb_str_upto_endless_each(b, step_i, (VALUE)iter); + rb_str_upto_endless_each(b, (VALUE (*)(VALUE, VALUE))step_i, (VALUE)iter); } else { args[0] = e; @@ -836,7 +836,7 @@ range_each(VALUE range) rb_block_call(tmp, rb_intern("upto"), 2, args, each_i, 0); } else if (RB_TYPE_P(beg, T_STRING)) { - rb_str_upto_endless_each(beg, each_i, 0); + rb_str_upto_endless_each(beg, (VALUE (*)(VALUE, VALUE))each_i, 0); } else goto inf_loop; }