e the port must be an input-output
port (say it represents a socket) and it is desirable that the input
is buffered (as it usually is), this procedure can be used with a port
with buffered output.  However, if that is done and the port has
previously been used for output by a procedure other than c-write or
an await-put* procedure, then it should be flushed before this
procedure is called.  Such flushing might block.
</p>
<p>This procedure will throw a &rsquo;c-write-error exception if passed a
regular file