Miroslav Lichvar <[EMAIL PROTECTED]> writes: > On Fri, May 05, 2006 at 04:05:34PM +0200, Miroslav Lichvar wrote: > > The scm_mark_locations function in gc-mark.c calls scm_gc_mark on > > everything located in one of the allocated segments. Shouldn't there > > be a check if the address is at least scm_t_cell aligned?
Yes! I haven't really seen the 64bit problem myself, but you theory sounds very convincing. This is very likely the solution. What about this this patch, tho, which is exactly the same as yours, but a bit more similar to the code we have: 137c137 < #define CELL_P(x) (SCM_ITAG3 (x) == scm_tc3_cons) --- > #define CELL_P(x) ((SCM_UNPACK(x) & (sizeof(scm_t_cell)-1)) == scm_tc3_cons) I'll put it in right away, with a comment. Thanks a 18446744073709551616! -- GPG: D5D4E405 - 2F9B BCCC 8527 692A 04E3 331E FAF8 226A D5D4 E405 _______________________________________________ Guile-devel mailing list Guile-devel@gnu.org http://lists.gnu.org/mailman/listinfo/guile-devel