1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-20 11:40:18 +02:00

minor peval style tweak

* module/language/tree-il/optimize.scm (peval): Minor refactor to
  <lexical-ref> copy propagation.
This commit is contained in:
Andy Wingo 2011-09-22 12:26:02 +02:00
parent c829531a46
commit dd7ab5d8a4

View file

@ -436,7 +436,7 @@ it does not handle <fix> and <let-values>, it should be called before
(($ <lexical-ref> _ _ gensym)
;; Propagate only pure expressions.
(let ((val (lookup gensym)))
(or (and (pure-expression? val) val) exp)))
(if (pure-expression? val) val exp)))
;; Lexical set! causes a bailout.
(($ <let> src names gensyms vals body)
(let* ((vals* (map (cut loop <> env calls) vals))