Named let violates scoping rules

Bug #175117 reported by leppie on 2007-12-09
Affects Status Importance Assigned to Milestone
Ikarus Scheme
Abdulaziz Ghuloum
Abdulaziz Ghuloum

Bug Description

I made the following snippet to test let and friends, ikarus and psyntax (via IronScheme) suffers from this bug.

(let ((b '(1 2 3)))
  (let* ((a b)
         (b (cons 0 a)))
    (let b ((a b))
      (if (null? a)
            (b (cdr a))))))

Ikarus gives me this reply:
Unhandled exception
 Condition components:
   1. &error
   2. &who: cdr
   3. &message: "invalid list structure"
   4. &irritants: (#<procedure b>)

I am not sure what the problem is here, but it doesn't work as it should.

leppie (leppie) wrote :

Forgot to mention, I am using an updated from ikarus (about a week old).

Abdulaziz Ghuloum (aghuloum) wrote :

Fixed in revision 1202 of ikarus.

Changed in ikarus:
assignee: nobody → aghuloum
importance: Undecided → Medium
status: New → Fix Committed
Changed in r6rs-libraries:
assignee: nobody → aghuloum
importance: Undecided → Medium
status: New → Confirmed
Abdulaziz Ghuloum (aghuloum) wrote :

This bug report is about to be closed as the fix comitted
previously will be incorporated in the next 0.0.3 release of
Ikarus Scheme, scheduled for January 31, 2008. A release
candidate tarball is available for download from:
Please do test it if you have the time and report any issues
you might encounter. Thank you very much for your support.
(Sorry for the duplicates; I'm updating every open bug.)

Changed in ikarus:
milestone: none → 0.0.3
Changed in ikarus:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers