summaryrefslogtreecommitdiffhomepage
path: root/include
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2013-11-07 04:20:46 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2013-11-07 04:20:46 +0900
commit677a2ac22633473fb286d7297a8585c01fe7394b (patch)
treeb0052f5b50bfb490c9780c6dd0645a2742aaf655 /include
parente92d4e2680716d3e16a264e46394cb6e458699f9 (diff)
downloadmruby-677a2ac22633473fb286d7297a8585c01fe7394b.tar.gz
mruby-677a2ac22633473fb286d7297a8585c01fe7394b.zip
irep->pool not to be GCed
Diffstat (limited to 'include')
-rw-r--r--include/mruby/irep.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/include/mruby/irep.h b/include/mruby/irep.h
index 83cd4b9e8..a31fef39c 100644
--- a/include/mruby/irep.h
+++ b/include/mruby/irep.h
@@ -18,7 +18,17 @@ typedef struct mrb_irep {
uint8_t flags;
mrb_code *iseq;
- mrb_value *pool;
+ struct irep_pool {
+ union {
+ mrb_float f;
+ struct irep_pool_string {
+ mrb_int len;
+ char buf[1];
+ } *s;
+ mrb_int i;
+ } value;
+ enum mrb_vtype type;
+ } *pool;
mrb_sym *syms;
struct mrb_irep **reps;