in reply to F_GETFL and Win32

fcntl is not supported on win32 (see perlport).

You might try using Win32API::File or simply try printing

sub _is_writable { my $fh = shift; return eval { defined print { $fh } ''; }; }
though that may not be desireable.

update: It just dawned on me that printing on a CLOSED filehandle is different error, than simply a filehandle thats not opened for writing, in which case you want to use the fileno function.

MJD says "you can't just make shit up and expect the computer to know what you mean, retardo!"
I run a Win32 PPM repository for perl 5.6.x and 5.8.x -- I take requests (README).
** The third rule of perl club is a statement of fact: pod is sexy.