30 Avr
2013
30 Avr
'13
19:36
I haven't been able to separate the code from my repo and make it still break, but I found what I imagine is an inlining bug when --enable-auto-force is enabled. My repo: https://github.com/maitria/scheme-stuff.git $ make $ gsi
(load "scheme-stuff.o1") (for-each pp (delay (cons 1 (delay (cons 2 '()))))) 1 2>
Change lib/iteration.scm:14 and replace end-position? with null? and repeat:
(for-each pp (delay (cons 1 (delay (cons 2 '()))))) *** ERROR IN iteration#for-each -- (Argument 1) PAIR expected (car '()) 1>
The definition of end-position? is: (define end-position? null?) Adding an extraneous force call -- (loop (force (cdr position))) -- will prevent the problem.