summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--gc.c12
2 files changed, 9 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog
index 92f6dcaad2..5cb2c39cea 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,6 @@
-Tue May 26 13:58:13 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
+Tue May 26 14:24:17 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * gc.c: fixed types.
* common.mk (bignum.o, numeric.o): depend on util.h.
diff --git a/gc.c b/gc.c
index 434dbd4ee0..74163bedb5 100644
--- a/gc.c
+++ b/gc.c
@@ -289,7 +289,7 @@ enum lifetime {
struct heaps_slot {
void *membase;
RVALUE *slot;
- int limit;
+ size_t limit;
enum lifetime lifetime;
};
@@ -619,7 +619,7 @@ garbage_collect_with_gvl(rb_objspace_t *objspace)
}
else {
if (ruby_native_thread_p()) {
- return (VALUE)rb_thread_call_with_gvl(gc_with_gvl, (void *)objspace);
+ return (int)(VALUE)rb_thread_call_with_gvl(gc_with_gvl, (void *)objspace);
}
else {
/* no ruby thread */
@@ -888,7 +888,7 @@ assign_heap_slot(rb_objspace_t *objspace, RVALUE **list, enum lifetime lifetime)
{
RVALUE *p, *pend, *membase;
size_t hi, lo, mid;
- int objs;
+ size_t objs;
objs = HEAP_OBJ_LIMIT;
p = (RVALUE*)malloc(HEAP_SIZE);
@@ -901,7 +901,7 @@ assign_heap_slot(rb_objspace_t *objspace, RVALUE **list, enum lifetime lifetime)
membase = p;
if ((VALUE)p % sizeof(RVALUE) != 0) {
p = (RVALUE*)((VALUE)p + sizeof(RVALUE) - ((VALUE)p % sizeof(RVALUE)));
- if ((HEAP_SIZE - HEAP_OBJ_LIMIT * sizeof(RVALUE)) < ((char*)p - (char*)membase)) {
+ if ((HEAP_SIZE - HEAP_OBJ_LIMIT * sizeof(RVALUE)) < (size_t)((char*)p - (char*)membase)) {
objs--;
}
}
@@ -1848,7 +1848,7 @@ gc_sweep(rb_objspace_t *objspace)
final_list = deferred_final_list;
deferred_final_list = 0;
for (i = 0; i < heaps_used; i++) {
- int free_num = 0, final_num = 0;
+ size_t free_num = 0, final_num = 0;
RVALUE *free = freelist;
RVALUE *final = final_list;
int deferred;
@@ -2186,7 +2186,7 @@ rb_gc_mark_remembered_set(rb_objspace_t *objspace)
static void
clear_mark_longlife_heaps(rb_objspace_t *objspace)
{
- int i;
+ size_t i;
for (i = 0; i < heaps_used; i++) {
RVALUE *p, *pend;