[Cc to mailing list]
On Tue, 15 Mar 2005 19:49:56 +0100, "Walter C. Pelissero" walter@pelissero.de wrote:
I'm trying your cl-gd with PAServe and stumbled in a minor glitch in MAKE-STREAM-FN. The COND first checks for:
(subtypep (stream-element-type stream) '(unsigned-byte 8))
and then
(subtypep (stream-element-type stream) 'character)
Which both fail miserably at least on CMUCL with *HTML-STREAM* as STREAM. The reason is that:
(stream-element-type *HTML-STREAM*) => '(OR CHARACTER (UNSIGNED-BYTE 8))
(subtypep '(or character (unsigned-byte 8)) 'character) => NIL T
(subtypep '(or character (unsigned-byte 8)) '(unsigned-byte 8)) => NIL T
Apparently changing the order of the operands, makes the COND work as expected, although, as far as I understand, the semantic of subtypep isn't respected.
No, I think CMUCL is right. This was a thinko in my code.
Thanks for the report, I've uploaded a new version which fixes this.
Cheers, Edi.