summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorTomasz Dąbrowski <[email protected]>2017-09-25 16:11:33 +0200
committerTomasz Dabrowski <[email protected]>2017-09-27 22:22:05 +0200
commit3e1d60ae0b36b02e20b90d6cba95e8742671dd69 (patch)
tree7b8b10413a4042f33dde16f9a42bea1c359c670b
parentc7b663f2cfe8a9766c68519332969f736be2c8cf (diff)
downloadmruby-3e1d60ae0b36b02e20b90d6cba95e8742671dd69.tar.gz
mruby-3e1d60ae0b36b02e20b90d6cba95e8742671dd69.zip
fix: src\hash.c(27): warning C4244: '=': conversion from 'mrb_int' to 'khint_t', possible loss of data
-rw-r--r--include/mruby/string.h2
-rw-r--r--src/string.c4
2 files changed, 3 insertions, 3 deletions
diff --git a/include/mruby/string.h b/include/mruby/string.h
index df6fb25c3..4c25b9346 100644
--- a/include/mruby/string.h
+++ b/include/mruby/string.h
@@ -409,7 +409,7 @@ MRB_API int mrb_str_cmp(mrb_state *mrb, mrb_value str1, mrb_value str2);
MRB_API char *mrb_str_to_cstr(mrb_state *mrb, mrb_value str);
mrb_value mrb_str_pool(mrb_state *mrb, mrb_value str);
-mrb_int mrb_str_hash(mrb_state *mrb, mrb_value str);
+uint32_t mrb_str_hash(mrb_state *mrb, mrb_value str);
mrb_value mrb_str_dump(mrb_state *mrb, mrb_value str);
/*
diff --git a/src/string.c b/src/string.c
index 01d706fa3..f50468cca 100644
--- a/src/string.c
+++ b/src/string.c
@@ -1467,7 +1467,7 @@ mrb_str_substr(mrb_state *mrb, mrb_value str, mrb_int beg, mrb_int len)
return str_substr(mrb, str, beg, len);
}
-mrb_int
+uint32_t
mrb_str_hash(mrb_state *mrb, mrb_value str)
{
/* 1-8-7 */
@@ -1480,7 +1480,7 @@ mrb_str_hash(mrb_state *mrb, mrb_value str)
key = key*65599 + *p;
p++;
}
- return (mrb_int)(key + (key>>5));
+ return (uint32_t)(key + (key>>5));
}
/* 15.2.10.5.20 */