summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authortake_cheeze <[email protected]>2014-06-08 23:04:58 +0900
committertake_cheeze <[email protected]>2014-06-08 23:16:55 +0900
commit64994a176439caadd802db3efbf3fa03fc285bbd (patch)
treec35bf20b1415f69983236ea47b2448d96414d3b6 /src
parent4a27dd0e8a6ca46a2b1f6d84b003605327ddb843 (diff)
downloadmruby-64994a176439caadd802db3efbf3fa03fc285bbd.tar.gz
mruby-64994a176439caadd802db3efbf3fa03fc285bbd.zip
Check `RSTRING_EMBED_LEN_MAX` with static assert.
Diffstat (limited to 'src')
-rw-r--r--src/string.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/string.c b/src/string.c
index 0fe79e61d..734bf739a 100644
--- a/src/string.c
+++ b/src/string.c
@@ -2503,6 +2503,8 @@ mrb_init_string(mrb_state *mrb)
{
struct RClass *s;
+ mrb_static_assert(RSTRING_EMBED_LEN_MAX < (1 << 5), "pointer size too big for embedded string");
+
s = mrb->string_class = mrb_define_class(mrb, "String", mrb->object_class); /* 15.2.10 */
MRB_SET_INSTANCE_TT(s, MRB_TT_STRING);