Han-Wen Nienhuys <[EMAIL PROTECTED]> writes:

> Compile GUILE with
>
>   #define SCM_DEBUG_CELL_ACCESSES 1
>
> in config.h.  Then apply this patch
>
>       + (set-debug-cell-accesses! 5000)
>
> then compilation bombs out with:

I have found the bug.  init_heap_seg was using SCM_SET_CELL_TYPE to
initialize fresh memory to 'free cells', but with DEBUG_CELL_ACCESSES,
SCM_SET_CELL_TYPE could run a GC, which might see the half initialized
heap segment during conservative scanning and would access
uninitialozed memory which caused it to fail.

I have fixed this by using the new macro SCM_SET_FREE_CELL_TYPE, which
does no checking.


_______________________________________________
Bug-guile mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/bug-guile

Reply via email to