Subject: [2.0.5+] Miscompilation with peval: local shadows module-ref

From: [email-masked] (Ludovic Courtès)
Date: Wed, 08 Feb 2012 00:04:10 +0100

Hi!

Consider this:

--8<---------------cut here---------------start------------->8---
scheme@(guile-user)> ,optimize (define (foo) (define bar (@ (chbouib) bar)) bar)
$11 = (define foo
  (lambda ()
    (let ((bar-1510 (if #f #f)))
      (letrec*
        ()
        (begin (set! bar-1510 bar-1510) bar-1510)))))
--8<---------------cut here---------------end--------------->8---

Here, the ‘bar’ local is always set to *undefined*, wrongfully.

Ludo’.