  doio.c	

  Can't open bidirectional pipe		[Perl_do_open9]
    open($f, "| true |");

  Missing command in piped open		[Perl_do_open9]
    open($f, "| ");

  Missing command in piped open		[Perl_do_open9]
    open($f, " |");

  warn(warn_nl, "open");		[Perl_do_open9]
    open($f, "true\ncd")

  close() on unopened filehandle %s	[Perl_do_close]
    $a = "fred";close("$a")

  tell() on closed filehandle		[Perl_do_tell]
    $a = "fred";$a = tell($a)

  seek() on closed filehandle		[Perl_do_seek]
    $a = "fred";$a = seek($a,1,1)

  sysseek() on closed filehandle	[Perl_do_sysseek]
    $a = "fred";$a = seek($a,1,1)

  warn(warn_uninit);			[Perl_do_print]
    print $a ;

  -x on closed filehandle %s 		[Perl_my_stat]
    close STDIN ; -x STDIN ;

  warn(warn_nl, "stat");		[Perl_my_stat]
    stat "ab\ncd"

  warn(warn_nl, "lstat");		[Perl_my_lstat]
    lstat "ab\ncd"

  Use of -l on filehandle %s		[Perl_my_lstat]

  Can't exec \"%s\": %s 		[Perl_do_aexec5]

  Can't exec \"%s\": %s 		[Perl_do_exec3]

  Filehandle %s opened only for output	[Perl_do_eof]
	my $a = eof STDOUT

  Mandatory Warnings ALL TODO
  ------------------
  Can't do inplace edit: %s is not a regular file	[Perl_nextargv]
     edit a directory

  Can't do inplace edit: %s would not be unique		[Perl_nextargv]
  Can't rename %s to %s: %s, skipping file		[Perl_nextargv]
  Can't rename %s to %s: %s, skipping file		[Perl_nextargv]
  Can't remove %s: %s, skipping file			[Perl_nextargv]
  Can't do inplace edit on %s: %s			[Perl_nextargv]
  

__END__
# doio.c [Perl_do_open9]
use warnings 'io' ;
open(my $f, '|-|', "$^EXECUTABLE_NAME -e 1");
close($f);
no warnings 'io' ;
open(my $g, '|-|', "$^EXECUTABLE_NAME -e 1");
close($g);
EXPECT
Can't open bidirectional pipe at - line 3 character 1.
########
# doio.c [Perl_do_open9]
use warnings 'io' ;
open(my $f, "|-", "");
no warnings 'io' ;
open(my $g, "|-", "");
EXPECT
Missing command in piped open at - line 3 character 1.
########
# doio.c [Perl_do_open9]
use warnings 'io' ;
open(my $f, "-|", "");
no warnings 'io' ;
open(my $g, "-|", "");
EXPECT
Missing command in piped open at - line 3 character 1.
########
# doio.c [Perl_do_close] <<TODO
use warnings 'unopened' ;
close \*fred ;
no warnings 'unopened' ;
close \*joe ;
EXPECT
close() on unopened filehandle at - line 3 character 1.
########
# doio.c [Perl_do_tell Perl_do_seek Perl_do_sysseek Perl_my_stat]
use warnings 'io' ;
close $^STDIN ;
tell($^STDIN);
$a = seek($^STDIN,1,1);
$a = sysseek($^STDIN,1,1);
-x $^STDIN ;
stat($^STDIN) ;
$a = \*fred;
tell($a);
seek($a,1,1);
sysseek($a,1,1);
-x $a; # ok
stat($a); # ok
no warnings 'io' ;
close $^STDIN ;
tell($^STDIN);
$a = seek($^STDIN,1,1);
$a = sysseek($^STDIN,1,1);
-x $^STDIN ;
stat($^STDIN) ;
$a = \*fred;
tell($a);
seek($a,1,1);
sysseek($a,1,1);
-x $a;
stat($a);
EXPECT
tell() on closed filehandle STDIN at - line 4 character 1.
seek() on closed filehandle STDIN at - line 5 character 6.
sysseek() on closed filehandle STDIN at - line 6 character 6.
-x on closed filehandle STDIN at - line 7 character 2.
stat() on closed filehandle STDIN at - line 8 character 1.
tell() on unopened filehandle at - line 10 character 1.
seek() on unopened filehandle at - line 11 character 1.
sysseek() on unopened filehandle at - line 12 character 1.
-x on unopened filehandle at - line 13 character 2.
stat() on unopened filehandle at - line 14 character 1.
########
# doio.c [Perl_do_print]
use warnings 'uninitialized' ;
print $^STDOUT, $a ;
no warnings 'uninitialized' ;
print $^STDOUT, $b ;
EXPECT
Use of uninitialized value $main::a in print at - line 3 character 1.
########
# doio.c [Perl_my_stat Perl_my_lstat]
use warnings 'io' ;
stat "ab\ncd";
lstat "ab\ncd";
no warnings 'io' ;
stat "ab\ncd";
lstat "ab\ncd";
EXPECT
Unsuccessful stat on filename containing newline at - line 3 character 1.
Unsuccessful stat on filename containing newline at - line 4 character 1.
########
# doio.c [Perl_do_aexec5]
BEGIN {
    if ($^OS_NAME eq 'MacOS') {
	print $^STDOUT, <<EOM;
SKIPPED
# no exec on Mac OS
EOM
	exit;
    }
}
use warnings 'io' ;
exec "lskdjfalksdjfdjfkls","" ;
no warnings 'io' ;
exec "lskdjfalksdjfdjfkls","" ;
EXPECT
OPTION regex
Can't exec "lskdjfalksdjfdjfkls": .+
########
# doio.c [Perl_do_exec3]
BEGIN {
    if ($^OS_NAME eq 'MacOS') {
	print $^STDOUT, <<EOM;
SKIPPED
# no exec on Mac OS
EOM
	exit;
    }
}
use warnings 'io' ;
exec "lskdjfalksdjfdjfkls", "abc" ;
no warnings 'io' ;
exec "lskdjfalksdjfdjfkls", "abc" ;
EXPECT
OPTION regex
Can't exec "lskdjfalksdjfdjfkls(:? abc)?": .+
########
# doio.c [win32_execvp]
BEGIN {
    if ($^OS_NAME eq 'MacOS') {
	print $^STDOUT, <<EOM;
SKIPPED
# no exec on Mac OS
EOM
	exit;
    }
}
use warnings 'exec' ;
exec $^EXECUTABLE_NAME, "-e0" ;
EXPECT

########
# doio.c [Perl_do_eof]
use warnings 'io' ;
my $a = eof $^STDOUT ;
no warnings 'io' ;
$a = eof $^STDOUT ;
EXPECT
Filehandle STDOUT opened only for output at - line 3 character 9.
########
# doio.c [Perl_do_openn]
use Config;
BEGIN {
    if (config_value("useperlio")) {
	print $^STDOUT, <<EOM;
SKIPPED
# warns only without perlio
EOM
	exit;
    }
}
use warnings 'io';
my $x = "foo";
open FOO, '>', \$x;
open BAR, '>&', $^STDOUT; # should not warn
no warnings 'io';
open FOO, '>', \$x;
EXPECT
Can't open a reference at - line 14 character 1.
########
# doio.c [Perl_do_openn]
use Config;
BEGIN {
    if (!config_value("useperlio")) {
	print $^STDOUT, <<EOM;
SKIPPED
# warns only with perlio
EOM
	exit;
    }
}
use warnings 'io' ;
close $^STDOUT;
open \*FH1, "<", "TEST"; close \*FH1;
no warnings 'io' ;
open \*FH2, "<", "TEST"; close \*FH2;
EXPECT
Filehandle STDOUT reopened only for input at - line 14 character 1.
########
# doio.c [Perl_do_openn]
use Config;
BEGIN {
    if (!config_value("useperlio")) {
	print $^STDOUT, <<EOM;
SKIPPED
# warns only with perlio
EOM
	exit;
    }
}
use warnings 'io' ;
close $^STDIN;
open my $fh1, ">", "doiowarn.tmp"; close $fh1;
no warnings 'io' ;
open my $fh2, ">", "doiowarn.tmp"; close $fh2;
unlink "doiowarn.tmp";
EXPECT
Filehandle STDIN reopened only for output at - line 14 character 1.
########
