8950
8951
8952
8953
8954
8955
8956
8957
8958
8959
8960
8961
8962
8963
8964
8965
8966
8967
8968
8969
8970
8971
8972
8973
8974
8975
8976
8977
8978
8979
8980
8981
8982
|
8950
8951
8952
8953
8954
8955
8956
8957
8958
8959
8960
8961
8962
8963
8964
8965
8966
8967
8968
8969
8970
8971
8972
8973
8974
8975
8976
8977
8978
8979
8980
8981
8982
|
-
+
-
+
|
interp delete child
testobj freeallvars
removeFile io-74.1
} -returnCodes error -match glob -result {can not find channel named "*"}
# Note: the following tests 75.1 to 75.3 are in preparation for TCL 9.0, where
# those should result in an error result
test io-75.1 {multibyte encoding error read results in raw bytes} -setup {
test io-75.1 {multibyte encoding error read results in raw bytes} -constraints deprecated -setup {
set fn [makeFile {} io-75.1]
set f [open $fn w+]
fconfigure $f -encoding binary
# In UTF-8, a byte 0xCx starts a multibyte sequence and must be followed
# by a byte > 0x7F. This is violated to get an invalid sequence.
puts -nonewline $f "A\xC0\x40"
flush $f
seek $f 0
fconfigure $f -encoding utf-8 -buffering none
} -body {
read $f
} -cleanup {
close $f
removeFile io-75.1
} -returnCodes ok -result "A\xC0\x40"
# for TCL 9.0, the result is error
test io-75.2 {unrepresentable character write passes and is replaced by ?} -setup {
test io-75.2 {unrepresentable character write passes and is replaced by ?} -constraints deprecated -setup {
set fn [makeFile {} io-75.2]
set f [open $fn w+]
fconfigure $f -encoding iso8859-1
} -body {
# the following command gets in result error in TCL 9.0
puts -nonewline $f "A\u2022"
flush $f
|