Change WRITE-TO-STRING from FLUSHABLE to UNSAFELY-FLUSHABLE.
commitf344b98be063ed858ca77b5b836411b8f35aee14
authorDouglas Katzman <dougk@google.com>
Wed, 15 Oct 2014 04:02:25 +0000 (15 00:02 -0400)
committerDouglas Katzman <dougk@google.com>
Wed, 15 Oct 2014 04:02:25 +0000 (15 00:02 -0400)
tree9c0b263891e0ce6eaa6cc9f4be86fd1c475462aa
parenta988a470c3b63748f13a3ec9c88895383e6e947d
Change WRITE-TO-STRING from FLUSHABLE to UNSAFELY-FLUSHABLE.

An "unused" call of the function might have been intended to signal a
condition about unprintable objects, or perform random side-effects
in user-defined printers. But in practice, calls were not flushed,
because if the compiler-macro worked, the transform to STRINGIFY-OBJECT
was not flushable.

Incidentally, make STRINGIFY-OBJECT a known fun so that the compiled code
for the expansion of WRITE-TO-STRING avoids using RETURN-MULTIPLE.
src/compiler/fndb.lisp