From 5a7ee1e117162ff22083f2e587e3723167bbd11a Mon Sep 17 00:00:00 2001 From: nobu Date: Wed, 4 Dec 2013 04:20:15 +0000 Subject: string.c: fix declaration-after-statement * string.c (fstr_update_callback): move a variable declaration since ISO C90 forbids mixed declarations and code. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43988 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- string.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'string.c') diff --git a/string.c b/string.c index a85676f482..199efe7a2d 100644 --- a/string.c +++ b/string.c @@ -136,6 +136,8 @@ static int fstr_update_callback(st_data_t *key, st_data_t *value, st_data_t arg, int existing) { VALUE *fstr = (VALUE *)arg; + VALUE str = (VALUE)*key; + if (existing) { /* because of lazy sweep, str may be unmarked already and swept * at next time */ @@ -143,7 +145,6 @@ fstr_update_callback(st_data_t *key, st_data_t *value, st_data_t arg, int existi return ST_STOP; } - VALUE str = *key; if (STR_SHARED_P(str)) { /* str should not be shared */ str = rb_enc_str_new(RSTRING_PTR(str), RSTRING_LEN(str), STR_ENC_GET(str)); -- cgit v1.2.3