globally unique marks and labels using syntax-session-id
authorAndy Wingo <wingo@pobox.com>
Thu, 26 Jan 2012 10:52:06 +0000 (11:52 +0100)
committerAndy Wingo <wingo@pobox.com>
Thu, 26 Jan 2012 11:08:58 +0000 (12:08 +0100)
commitf9685f437312ea790981373ddc375b2a26ba9c4f
treecca75600546c5ebb7b8b1bbb5994e55567bef67a
parent4496c9c1e8c5620fd3b4eaacc7f1f8e35829b32d
globally unique marks and labels using syntax-session-id

* libguile/macros.c (scm_init_macros): Add definition of new
  syntax-session-id helper.

* module/ice-9/psyntax.scm: Capture a reference to syntax-session-id at
  boot time.  Uniquify marks and labels using the session id.

* module/ice-9/boot-9.scm: Shunt syntax-session-id off to (system
  syntax) once we finished booting.

* module/ice-9/compile-psyntax.scm: Override syntax-session-id when
  remaking psyntax to avoid spurious diffs.

* module/ice-9/psyntax-pp.scm: Regenerate.
libguile/macros.c
module/ice-9/boot-9.scm
module/ice-9/compile-psyntax.scm
module/ice-9/psyntax-pp.scm
module/ice-9/psyntax.scm