This is trickier than I thought -- it's not the GC after all. In my configure script for Snd, autoconf defines _FILE_OFFSET_BITS to 64 if large files are implemented. The config.h "include" precedes everything else. When scm_getc is called within guile, it thinks sizeof(scm_t_port) is 92. Everything is fine until my skip comment procedure is called (with this 92 byte struct) -- it thinks the scm_t_port size is 104, and fields like rw_active (in scm_getc which is apparently expanded inline) are not where it expects them to be! If I undef _FILE_OFFSET_BITS, both agree on the struct size, and there is no problem.
- guile 1.9.0 scm_read_hash_extend gc trouble Bill Schottstaedt
- Re: guile 1.9.0 scm_read_hash_extend gc trouble Neil Jerram
- Re: guile 1.9.0 scm_read_hash_extend gc trouble Neil Jerram
- Re: guile 1.9.0 scm_read_hash_extend gc tro... Bill Schottstaedt
- Re: guile 1.9.0 scm_read_hash_extend gc... Neil Jerram
- Re: guile 1.9.0 scm_read_hash_exte... Bill Schottstaedt
- Re: guile 1.9.0 scm_read_hash_... Ludovic Courtès
- Re: guile 1.9.0 scm_read_h... Neil Jerram
- Re: guile 1.9.0 scm_read_h... Ludovic Courtès
- Re: guile 1.9.0 scm_read_h... Ludovic Courtès
- Re: guile 1.9.0 scm_read_h... Neil Jerram
- Re: guile 1.9.0 scm_read_hash_exte... Bill Schottstaedt
- Re: guile 1.9.0 scm_read_hash_extend gc trouble Thien-Thi Nguyen