summaryrefslogtreecommitdiffhomepage
path: root/src/etc.c
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2013-11-27 17:29:28 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2013-11-27 17:29:28 +0900
commit9ac386923d6a2dc62b5ec61fa8bcbc2f1f551be9 (patch)
tree391196c4f63325b549a42529421e222a78d02f41 /src/etc.c
parente9e1259b61ec869eb64f0c872508957eb7a9d2b8 (diff)
downloadmruby-9ac386923d6a2dc62b5ec61fa8bcbc2f1f551be9.tar.gz
mruby-9ac386923d6a2dc62b5ec61fa8bcbc2f1f551be9.zip
float objects in pool are objects when MRB_WORD_BOXING is set
Diffstat (limited to 'src/etc.c')
-rw-r--r--src/etc.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/etc.c b/src/etc.c
index 70b22cfc4..82394891f 100644
--- a/src/etc.c
+++ b/src/etc.c
@@ -199,6 +199,16 @@ mrb_float_value(mrb_state *mrb, mrb_float f)
}
mrb_value
+mrb_float_pool(mrb_state *mrb, mrb_float f)
+{
+ struct RFloat *nf = (struct RFloat *)mrb_malloc(mrb, sizeof(struct RFloat));
+ nf->tt = MRB_TT_FLOAT;
+ nf->c = mrb->float_class;
+ nf->f = f;
+ return mrb_obj_value(nf);
+}
+
+mrb_value
mrb_cptr_value(mrb_state *mrb, void *p)
{
mrb_value v;