gEDA-dev: gnetlist vs guile 1.8

Stuart Brorson sdb at cloud9.net
Mon Jan 22 12:21:38 EST 2007


>> Which two scheme files?  I'd be happy to stick this where ever it
>> fixes this bug & check the whole mess into CVS!
>
> gnet-bom.scm and gnet-bom2.scm

Thank you!  Fix is now in CVS.

> Note that we use this line in other files, like auto-uref and
> gnet-spice-sdb.

I fixed spice-sdb several days ago.  It works now with guile-1.8.  My
biggest headache is gnet-drc2.scm, which dies with a different error:

ERROR: In procedure memoization:
ERROR: Mixed definitions and expressions in (begin (define
check-slots-loop (lambda (slots_list) (if (not (null? slots_list))
(let ((this_slot #)) (if (integer? this_slot) (if # #))
(check-slots-loop (cdr slots_list)))))) (if (string-ci=? slot_string
"unknown") (begin (if (or (string-ci=? numslots_string "unknown") (=
numslots 0)) (begin (display "")) (begin (if (integer? numslots)
(begin # # #) (begin # # #))))) (begin (if (integer? slot) (if
(integer? numslots) (check-slots-loop (gnetlist:get-unique-slots
uref)) (begin (display # port) (newline port) (set! errors_number #)))
(begin (display (string-append "ERROR: Reference " uref ": Incorrect
value of slot attribute " slot_string ".") port) (newline port) (set!
errors_number (+ errors_number 1))))))).

This has nothing to do with the ice-9 package.  It may be syntax which
Guile used to accept, but now doesn't.  :-(

If you or others know of broken Scheme back-ends, please let me know!
I have created a list to keep track of this.....

Stuart


More information about the geda-dev mailing list