[Bug-openmcl] Problem with format?
gb at clozure.com
Mon Jul 23 07:47:45 MDT 2007
Thanks. I wasn't sure what was going on there (what the code in the
*-handler was trying to do), but there seems to be other code that
assumes that *FORMAT-ARGUMENTS* and *FORMAT-ORIGINAL-ARGUMENTS* shared
structure, and the *-handler was going out of its way to violate that
assumption. (The *-handler didn't seem to be copying the list that
it was trying to copy correctly, anyway.)
I (and NIL ...)'ed that out and the problem reported here went away.
I'm not sure what problem the *-handler was trying to work around.
(And welcome back to Lisp hacking, btw.)
On Fri, 20 Jul 2007, bryan d. o'connor wrote:
>> 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.
> Bug-openmcl mailing list
> Bug-openmcl at clozure.com
More information about the Bug-openmcl