Fix bug in recent transformations that caused inadvertent shadowing.
authorTaylor R Campbell <campbell@mumble.net>
Thu, 22 Oct 2009 21:00:52 +0000 (17:00 -0400)
committerTaylor R Campbell <campbell@mumble.net>
Thu, 22 Oct 2009 21:00:52 +0000 (17:00 -0400)
commit89668d2e956ed41cd5e3114465be88c0118f01c6
tree00d2c593ac7a721dcb03674717f5732a16c1aa72
parenta8e942ef4a028a73726d9f17980a08ce9c0fc5c6
Fix bug in recent transformations that caused inadvertent shadowing.

The real fix is to make cgen do alphatization, in which case copy.scm
could be considerably simplified, but this hack works for now to fix,
e.g., miscompilation of INITIALIZE-PACKAGE! in runtime/emacs.scm,
which has

(let ((type (select-console-port-type)))
  (if (let ((type (port/type the-console-port)))
        (or (eq? type vanilla-console-port-type)
            (eq? type emacs-console-port-type)))
      (set-port/type! the-console-port type)))

=>

(let ((type (select-console-port-type)))
  (let ((type (port/type the-console-port)))
    (if (or (eq? type vanilla-console-port-type)
            (eq? type emacs-console-port-type))
        (set-port/type! the-console-port type))))

One of the variables formerly named TYPE is now named by an uninterned
symbol instead.
src/sf/subst.scm