open(F, ">$file") ;
my $a = sysread(F, $a,10) ;
- lstat on filehandle %s [pp_lstat]
+ lstat on filehandle %s [pp_lstat]
+
+ getc() on unopened filehandle [pp_getc]
+
+ getc() on closed filehandle [pp_getc]
__END__
# pp_sys.c [pp_untie]
no warnings 'io' ;
my $a = sysread(F, $a,10) ;
close F ;
+use warnings 'io' ;
+sysread(F, $a, 10);
+read(F, $a, 10);
+sysread(NONEXISTENT, $a, 10);
+read(NONEXISTENT, $a, 10);
unlink $file ;
EXPECT
Filehandle F opened only for output at - line 12.
+sysread() on closed filehandle F at - line 17.
+read() on closed filehandle F at - line 18.
+sysread() on unopened filehandle NONEXISTENT at - line 19.
+read() on unopened filehandle NONEXISTENT at - line 20.
########
# pp_sys.c [pp_binmode]
use warnings 'unopened' ;
########
# pp_sys.c [pp_lstat]
use warnings 'io';
-lstat STDIN;
+open FH, "harness" or die "# $!";
+lstat FH;
open my $fh, $0 or die "# $!";
lstat $fh;
no warnings 'io';
-lstat STDIN;
+lstat FH;
lstat $fh;
+close FH;
close $fh;
EXPECT
-lstat() on filehandle STDIN at - line 3.
-lstat() on filehandle $fh at - line 5.
+lstat() on filehandle FH at - line 4.
+lstat() on filehandle $fh at - line 6.
+########
+# pp_sys.c [pp_getc]
+use warnings qw(unopened closed) ;
+getc FOO;
+close STDIN;
+getc STDIN;
+# Create an empty file
+$file = 'getcwarn.tmp';
+open FH1, ">$file" or die "# $!"; close FH1;
+open FH2, $file or die "# $!";
+getc FH2; # Should not warn at EOF
+close FH2;
+getc FH2; # Warns, now
+unlink $file;
+no warnings qw(unopened closed) ;
+getc FOO;
+getc STDIN;
+getc FH2;
+EXPECT
+getc() on unopened filehandle FOO at - line 3.
+getc() on closed filehandle STDIN at - line 5.
+getc() on closed filehandle FH2 at - line 12.