1#!perl 2# ioleaks.t 3 4BEGIN { 5 chdir 't' if -d 't'; 6 require './test.pl'; 7 set_up_inc('../lib'); 8} 9 10use strict; 11use warnings; 12plan 'no_plan'; 13 14# :unix -> not ok 15# :stdio -> not ok 16# :perlio -> ok 17# :crlf -> ok 18 19TODO: { 20 foreach my $layer(qw(:unix :stdio :perlio :crlf)){ 21 my $base_fd = do{ open my $in, '<', $0 or die $!; fileno $in }; 22 23 for(1 .. 3){ 24 local $::TODO; 25 if ($_ > 1 && $layer =~ /^:(unix|stdio)$/) { 26 $::TODO = "[perl #56644] PerlIO resource leaks on open() and then :pop in :unix and :stdio" 27 } 28 open my $fh, "<$layer", $0 or die $!; 29 30 is fileno($fh), $base_fd, $layer; 31 binmode $fh, ':pop'; 32 } 33 } 34} 35 36