diff -ru ruby-1.8.6-p111/gc.c ruby-1.8.6-p111+iPhone/gc.c --- ruby-1.8.6-p111/gc.c 2007-03-03 07:30:46.000000000 +0000 +++ ruby-1.8.6-p111+iPhone/gc.c 2008-01-14 10:08:59.000000000 +0000 @@ -1365,7 +1367,7 @@ setjmp(save_regs_gc_mark); mark_locations_array((VALUE*)save_regs_gc_mark, sizeof(save_regs_gc_mark) / sizeof(VALUE *)); #if STACK_GROW_DIRECTION < 0 - rb_gc_mark_locations((VALUE*)STACK_END, rb_gc_stack_start); + rb_gc_mark_locations((VALUE*)((uintptr_t)STACK_END & ~0xf), rb_gc_stack_start); #elif STACK_GROW_DIRECTION > 0 rb_gc_mark_locations(rb_gc_stack_start, (VALUE*)STACK_END + 1); #else