Re: Problem with format?
Gary Byers <[email protected]> Mon, 23 Jul 2007 07:47:45 -0600 (MDT)
| Newsgroups | gmane.lisp.openmcl.bugs |
|---|---|
| Message-ID | <[email protected]> |
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 > [email protected] > http://clozure.com/mailman/listinfo/bug-openmcl > >