#!perl
@TODO
=
qw [
SAVEt_SAVESWITCHSTACK ];
@TODO
{
@TODO
} = ();
BEGIN {
chdir
't'
;
@INC
=
"../lib"
;
require
'./test.pl'
}
if
(
$Config
{usecrosscompile} ) {
skip_all(
"Not all files are available during cross-compilation"
);
}
sub
read_cases {
my
(
$file
,
$func
) =
@_
;
open
my
$fh
,
$file
or
die
"$0 cannot open $file: $!"
;
while
(
readline
$fh
) {
last
if
/^Perl_
$func
/;
}
my
%found
;
while
(
readline
$fh
) {
last
if
/^}/;
$found
{$1}++
if
/case (SAVEt_\w*):/;
}
close
$fh
or
die
"$0 cannot close $file: $!"
;
\
%found
;
}
my
$leave_scope
= read_cases
"../scope.c"
,
"leave_scope"
;
my
$ss_dup
= read_cases
"../sv.c"
,
"ss_dup"
;
ok
scalar
%$leave_scope
,
'we got some'
;
for
(
sort
keys
%$leave_scope
) {
local
$::TODO =
' '
if
exists
$TODO
{
$_
};
ok
exists
$$ss_dup
{
$_
},
"ss_dup handles $_"
;
}
done_testing;