tcl: Phase 5 channel I/O — open/read/gets/puts/seek/tell/eof/fconfigure
Some checks failed
Test, Build, and Deploy / test-build-deploy (push) Failing after 2m0s
Some checks failed
Test, Build, and Deploy / test-build-deploy (push) Failing after 2m0s
11 new SX primitives in sx_primitives.ml wrapping Unix.openfile/read/write/ lseek/set_nonblock: channel-open/close/read/read-line/write/flush/seek/tell/ eof?/blocking?/set-blocking!. Tcl runtime now uses real channel ops: - open ?-mode? returns "fileN" handle (modes r/w/a/r+/w+/a+) - close/read/gets/puts/seek/tell/eof/flush wired through - new fconfigure command supports -blocking 0|1 - puts dispatches to channel-write when first arg starts with "file" - gets command registration fixed (was pointing to old stub) eof-returns-1 coro test updated to match real Tcl semantics (eof flips only after a read hits EOF). Test runner timeout bumped 180s→1200s (post-merge JIT is slow). +7 idiom tests covering write+read, gets-loop, seek/tell, eof-after-read, append mode, seek-to-end, fconfigure-blocking. 349/349 green. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -124,7 +124,7 @@
|
||||
"file0")
|
||||
|
||||
(ok "eof-returns-1"
|
||||
(get (run "set ch [open /dev/null r]\neof $ch") :result)
|
||||
(get (run "set ch [open /dev/null r]\nread $ch\neof $ch") :result)
|
||||
"1")
|
||||
|
||||
(dict
|
||||
|
||||
Reference in New Issue
Block a user