mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-05-02 04:40:29 +02:00
* module/ice-9/psyntax.scm (gen-label, new-mark): Labels and marks need to be unique across read/write boundaries -- it's not sufficient for them to simply be unique within a process by virtue of (string #\i) constructing a new object. This used to mostly work before, because the collapsing of duplicate constants didn't catch many syntax-object cases -- but for some reason the attached test case brings out the problem. So switch to use gensyms. Potentially more costly, but it's what upstream psyntax does now. This bug took me fully two days to figure out. * module/ice-9/psyntax-pp.scm: Regenerated. * test-suite/tests/syncase.test ("serializable labels and marks"): Add test case. |
||
---|---|---|
.. | ||
ice-9 | ||
language | ||
oop | ||
rnrs | ||
scripts | ||
srfi | ||
system | ||
Makefile.am |