1#!perl 2 3@TODO = qw [ SAVEt_SAVESWITCHSTACK ]; 4@TODO{@TODO} = (); 5 6BEGIN { chdir 't'; unshift @INC, "../lib"; require './test.pl' } 7use Config; 8 9if ( $Config{usecrosscompile} ) { 10 skip_all( "Not all files are available during cross-compilation" ); 11} 12 13sub read_cases { 14 my ($file, $func) = @_; 15 16 open my $fh, $file or die "$0 cannot open $file: $!"; 17 18 while (readline $fh) { 19 last if /^Perl_$func/; 20 } 21 my %found; 22 while (readline $fh) { 23 last if /^}/; 24 $found{$1}++ if /case (SAVEt_\w*):/; 25 } 26 close $fh or die "$0 cannot close $file: $!"; 27 \%found; 28} 29 30my $leave_scope = read_cases "../scope.c", "leave_scope"; 31my $ss_dup = read_cases "../sv.c", "ss_dup"; 32 33ok scalar %$leave_scope, 'we got some'; 34 35for (sort keys %$leave_scope) { 36 local $::TODO = ' ' if exists $TODO{$_}; 37 ok exists $$ss_dup{$_}, "ss_dup handles $_"; 38} 39 40done_testing; 41