7 if ($Config{'extensions'} !~ /\bIO\b/) {
8 print "1..0 # Skip: IO extension not compiled\n";
17 select(STDERR); $| = 1;
18 select(STDOUT); $| = 1;
24 $dupout = IO::Handle->new->fdopen( \*STDOUT ,"w");
25 $duperr = IO::Handle->new->fdopen( \*STDERR ,"w");
27 $stdout = \*STDOUT; bless $stdout, "IO::File"; # "IO::Handle";
28 $stderr = \*STDERR; bless $stderr, "IO::Handle";
30 $stdout->open( "Io.dup","w") || die "Can't open stdout";
31 $stderr->fdopen($stdout,"w");
33 print $stdout "ok 2\n";
34 print $stderr "ok 3\n";
36 # Since some systems don't have echo, we use Perl.
37 $echo = qq{$^X -le "print q(ok %d)"};
39 $cmd = sprintf $echo, 4;
42 $cmd = sprintf "$echo 1>&2", 5;
43 $cmd = sprintf $echo, 5 if $^O eq 'MacOS';
49 $stdout->fdopen($dupout,"w");
50 $stderr->fdopen($duperr,"w");
52 if ($^O eq 'MSWin32' || $^O eq 'NetWare' || $^O eq 'VMS') { print `type Io.dup` }
53 elsif ($^O eq 'MacOS') { system 'Catenate Io.dup' }
54 else { system 'cat Io.dup' }
57 print STDOUT "ok 6\n";