diff --git a/vm/gc.cpp b/vm/gc.cpp index 0de3dac91f..1bb339a70a 100755 --- a/vm/gc.cpp +++ b/vm/gc.cpp @@ -230,8 +230,8 @@ struct call_frame_scrubber { gc_info *info = compiled->block_gc_info(); assert(return_address < compiled->size()); - int index = info->return_address_index(return_address); - if(index != -1) + cell index = info->return_address_index(return_address); + if(index != (cell)-1) ctx->scrub_stacks(info,index); } }; diff --git a/vm/gc_info.hpp b/vm/gc_info.hpp index eee7b1a8e8..d6bb79f4bd 100644 --- a/vm/gc_info.hpp +++ b/vm/gc_info.hpp @@ -1,7 +1,7 @@ namespace factor { -const u32 gc_info_missing_value = (u32)-1; +const cell gc_info_missing_value = (cell)-1; struct gc_info { u32 scrub_d_count; diff --git a/vm/slot_visitor.hpp b/vm/slot_visitor.hpp index 303fc37544..b97f988e65 100755 --- a/vm/slot_visitor.hpp +++ b/vm/slot_visitor.hpp @@ -292,7 +292,7 @@ struct call_frame_slot_visitor { gc_info *info = compiled->block_gc_info(); assert(return_address < compiled->size()); - u32 callsite = info->return_address_index(return_address); + cell callsite = info->return_address_index(return_address); if(callsite == gc_info_missing_value) return;