summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--include/mruby/hash.h17
-rw-r--r--src/gc.c4
2 files changed, 2 insertions, 19 deletions
diff --git a/include/mruby/hash.h b/include/mruby/hash.h
index acc8181ad..a1f99f788 100644
--- a/include/mruby/hash.h
+++ b/include/mruby/hash.h
@@ -17,22 +17,6 @@ struct RHash {
struct kh_ht *ht;
};
-#define N 624
-#define M 397
-#define MATRIX_A 0x9908b0dfU /* constant vector a */
-#define UMASK 0x80000000U /* most significant w-r bits */
-#define LMASK 0x7fffffffU /* least significant r bits */
-#define MIXBITS(u,v) ( ((u) & UMASK) | ((v) & LMASK) )
-#define TWIST(u,v) ((MIXBITS(u,v) >> 1) ^ ((v)&1U ? MATRIX_A : 0U))
-enum {MT_MAX_STATE = N};
-
-struct MT {
- /* assume int is enough to store 32bits */
- unsigned int state[N]; /* the array for the state vector */
- unsigned int *next;
- int left;
-};
-
#define mrb_hash_end(h) st_hash_end(h)
#define mrb_hash_uint(h, i) st_hash_uint(h, i)
@@ -61,7 +45,6 @@ struct kh_ht * mrb_hash_tbl(mrb_state *mrb, mrb_value hash);
#define MRB_HASH_PROC_DEFAULT 256
#define MRB_RHASH_PROCDEFAULT_P(h) (RHASH(h)->flags & MRB_HASH_PROC_DEFAULT)
-void mrb_reset_random_seed(void);
mrb_value mrb_obj_is_proc(mrb_value proc);
#if defined(__cplusplus)
diff --git a/src/gc.c b/src/gc.c
index fde0edfa6..0147599ba 100644
--- a/src/gc.c
+++ b/src/gc.c
@@ -299,13 +299,13 @@ gc_mark_children(mrb_state *mrb, struct RBasic *obj)
{
struct RClass *c = (struct RClass*)obj;
- mrb_gc_mark_iv(mrb, (struct RObject*)obj);
mrb_gc_mark_mt(mrb, c);
mrb_gc_mark(mrb, (struct RBasic*)c->super);
}
- break;
+ /* fall through */
case MRB_TT_OBJECT:
+ case MRB_TT_DATA:
mrb_gc_mark_iv(mrb, (struct RObject*)obj);
break;