Binary ports shouldn't have a transcoder
Bug #176225 reported by
Michael D. Adams
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Ikarus Scheme |
Invalid
|
Undecided
|
Unassigned |
Bug Description
I can't sure until Bug #176224 is fixed, but it appears that the binary ports are undergoing Unicode transformations.
R6RS-lib says they shouldn't in 8.2.4:
A binary port is a port that supports binary I/O, does not
have an associated transcoder and does not support textual
I/O.
I can't test this because of Bug #176224, but based on the output of other programs, I think the following program will output 2 bytes when it should output only 1:
(import (rnrs))
(put-u8 (standard-
(flush-output-port (standard-
To post a comment you must log in.
That was the case before the new IO implementation (say rev 1203 and earlier I think). Now, this is what I got:
$ cat t.ss output- port)]) output- port p))
(import (rnrs))
(let ([p (standard-
(put-u8 p 175)
(flush-
$ ikarus --r6rs-script t.ss | wc
0 1 1
Also: output- port))
> (port-transcoder (standard-
#f