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?
Looks like the CELL_P macro is there exactly for this purpose, the following change in private-gc.h is probably the right thing to do. 137c137 < #define CELL_P(x) (SCM_ITAG3 (x) == scm_tc3_cons) --- > #define CELL_P(x) (!(SCM_UNPACK (x) & (sizeof (scm_t_cell) - 1))) -- Miroslav Lichvar _______________________________________________ Guile-devel mailing list Guile-devel@gnu.org http://lists.gnu.org/mailman/listinfo/guile-devel