__END__
# pp_sys.c
# NAME pipe() croaks on bad left side [perl #126480]
# SKIP ? use Config; !$Config{d_pipe} && "No pipe() available"
my $fh;
pipe($$5, $fh)
EXPECT
Bad symbol for filehandle at - line 3.
########
# NAME pipe() croaks on bad right side [perl #126480]
# SKIP ? use Config; !$Config{d_pipe} && "No pipe() available"
my $fh;
pipe($fh, $$5)
EXPECT
Bad symbol for filehandle at - line 2.
########
# NAME open on global dirhandle
opendir FOO, ".";
open FOO, "../harness";
EXPECT
Cannot open FOO as a filehandle: it is already open as a dirhandle at - line 2.
########
# NAME open on lexical dirhandle
opendir my $foo, ".";
open $foo, "../harness";
EXPECT
Cannot open $foo as a filehandle: it is already open as a dirhandle at - line 2.
########
# NAME open on global utf8 dirhandle
use utf8;
use open qw( :utf8 :std );
use warnings;
opendir ＦＯＯ, ".";
open ＦＯＯ, "../harness";
EXPECT
Cannot open ＦＯＯ as a filehandle: it is already open as a dirhandle at - line 5.
########
# NAME open on lexical utf8 dirhandle
use utf8;
use open qw( :utf8 :std );
use warnings;
opendir my $ｆｏｏ, ".";
open $ｆｏｏ, "../harness";
EXPECT
Cannot open $ｆｏｏ as a filehandle: it is already open as a dirhandle at - line 5.
########
# NAME opendir on global filehandle
open FOO, "../harness";
opendir FOO, ".";
EXPECT
Cannot open FOO as a dirhandle: it is already open as a filehandle at - line 2.
########
# NAME opendir on lexical filehandle
open my $foo, "../harness";
opendir $foo, ".";
EXPECT
Cannot open $foo as a dirhandle: it is already open as a filehandle at - line 2.
########
# NAME opendir on global utf8 filehandle
use utf8;
use open qw( :utf8 :std );
use warnings;
open ＦＯＯ, "../harness";
opendir ＦＯＯ, ".";
EXPECT
Cannot open ＦＯＯ as a dirhandle: it is already open as a filehandle at - line 5.
########
# NAME opendir on lexical utf8 filehandle
use utf8;
use open qw( :utf8 :std );
use warnings;
open my $ｆｏｏ, "../harness";
opendir $ｆｏｏ, ".";
EXPECT
Cannot open $ｆｏｏ as a dirhandle: it is already open as a filehandle at - line 5.
########
# NAME sysread() disallowed on :utf8
open my $fh, "<:raw", "../harness" or die "# $!";
my $buf;
sysread $fh, $buf, 10;
binmode $fh, ':utf8';
sysread $fh, $buf, 10;
EXPECT
sysread() isn't allowed on :utf8 handles at - line 5.
########
# NAME syswrite() disallowed on :utf8
my $file = "syswwarn.tmp";
open my $fh, ">:raw", $file or die "# $!";
syswrite $fh, 'ABC';
binmode $fh, ':utf8';
syswrite $fh, 'ABC';
close $fh;
END { unlink $file; }
EXPECT
syswrite() isn't allowed on :utf8 handles at - line 5.
