X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=pod%2Fperlapio.pod;h=444fab3660ab2a0e4a99444fe2a09bfd4dbd9b54;hb=32e998fd2b979399cbb2aebce57946d8ccd8689e;hp=98fc53d85f33f5b4a92eb83c52bf12d49a0d0569;hpb=c0a503cc6b3faa34b3edb5cd8b57d31f88b4baae;p=p5sagit%2Fp5-mst-13.2.git diff --git a/pod/perlapio.pod b/pod/perlapio.pod index 98fc53d..444fab3 100644 --- a/pod/perlapio.pod +++ b/pod/perlapio.pod @@ -160,9 +160,14 @@ so it is (currently) legal to use C in perl sources. =item B, B -These correspond to fread() and fwrite(). Note that arguments are -different, there is only one "count" and order has "file" -first. Returns a byte count if successful (which may be zero or +These correspond functionally to fread() and fwrite() but the +arguments and return values are different. The PerlIO_read() and +PerlIO_write() signatures have been modeled on the more sane low level +read() and write() functions instead: The "file" argument is passed +first, there is only one "count", and the return value can distinguish +between error and C. + +Returns a byte count if successful (which may be zero or positive), returns negative value and sets C on error. Depending on implementation C may be C if operation was interrupted by a signal. @@ -220,7 +225,7 @@ This corresponds to clearerr(), i.e., clears 'error' and (usually) This corresponds to fflush(). Sends any buffered write data to the underlying file. If called with C this may flush all open -streams (or core dump with some USE_STDIO implementattions). Calling +streams (or core dump with some USE_STDIO implementations). Calling on a handle open for read only, or on which last operation was a read of some kind may lead to undefined behaviour on some USE_STDIO implementations. The USE_PERLIO (layers) implementation tries to @@ -232,7 +237,7 @@ seeking the handle to the current logical position. This corresponds to fseek(). Sends buffered write data to the underlying file, or discards any buffered read data, then positions -the file desciptor as specified by B and B (sic). +the file descriptor as specified by B and B (sic). This is the correct thing to do when switching between read and write on the same handle (see issues with PerlIO_flush() above). Offset is of type C which is a perl Configure value which may not be same