Re: Problem with format?

"bryan d. o'connor" <[email protected]> Fri, 20 Jul 2007 12:03:06 -0700
Newsgroups gmane.lisp.openmcl.bugs
Message-ID <[email protected]>
> Thanks.  The bug seems to have something to do with/ be triggered by
> something in the way that *PRINT-CIRCLE* is handled, e.g.:

the problem seems to be the ~:* coupled with *PRINT-CIRCLE*.

you can simplify the test case to:

   (let* ((*print-circle* t))
     (format nil "~A ~:* ~A ~:P." 1))

the bug is most likely in the section of the format-* handler
in l1-format.lisp commented "avoid bogus circularity indication".
it's been too long since i've hacked lisp so i haven't found
where more specifically yet.


> (let* ((*print-circle* nil))
>      (format nil " ~[~:;, ~:*~A Failure~:P~]~[~:;, ~:*~A Expected   
> failure~:P~]~[~:;, ~:*~A Error~:P~]~[~:;, ~:*~A Expected  
> error~:P~]." 1 0 0 0))
>
> doesn't error, but binding *PRINT-CIRCLE* to T does.