次のように syswrite がブロックしているときに ^C で中断すると、改行の無
い中途半端なエラーメッセージが出てきます。

これは変ではないでしょうか。

sh-2.05b$ ./ruby -v -rio/nonblock -e '
p $$
r, w = IO.pipe
w.nonblock { p w.syswrite("a" * 0x100000) }
w.syswrite "b"'
ruby 1.9.0 (2005-09-18) [i686-linux]
23651
4096
^C-e:5:in `syswrite'sh-2.05b$ 

なお、1.8 ではそもそも ^C が効きません。
-- 
[田中 哲][たなか あきら][Tanaka Akira]