tichy <ssbm2@...> writes:
> CL-USER> (let ((v (make-array 5 :fill-pointer 0 :element-type 'character)))
> (format v "foo")
> v)
> "foo"
> CL-USER> (let ((v (make-array 5 :fill-pointer 0 :element-type 'standard-char)))
> (format v "foo")
> v)
> ; Evaluation aborted
>
> Is this ok (I mean ansi compliance) ? CLISP can eat this.
Your code is fine, and SBCL should not refuse it. This is one of the
remaining problems from the implementation of full Unicode support:
some code hasn't yet been fully generalized to deal with the
multiplicity of string types.
If this is an urgent problem, you can rebuild SBCL without the
:sb-unicode target feature, by placing
(lambda (list) (remove :sb-unicode list))
in your customize-target-features.lisp file. (Or else work on
patching the source to fix this problem :-)
I thought I'd logged this problem to BUGS, but apparently not; now I
have. Thanks.
Cheers,
Christophe
|