}
}
}
+ print STDERR __LINE__, ": \@new after make", Dumper \@new if $opt{debug} > 6;
if ($r->{status} == 0) {
my @u;
}
}
}
+ print STDERR __LINE__, ": \@new after getting undefs", Dumper \@new
+ if $opt{debug} > 6;
# Remove from @new all the current todo symbols
@new = grep !$todo{$_->[0]}, @new;
+ print STDERR __LINE__, ": \@new after removing current", Dumper \@new
+ if $opt{debug} > 6;
# If none remain, start over with those we know about, minus the todo
# symbols. khw doesn't understand why this is necessary
unless (@new) {
@new = grep !$todo{$_->[0]}, @already_in_sym;
+ print STDERR __LINE__, ": \@new after starting over", Dumper \@new
+ if $opt{debug} > 6;
}
# This retries once if nothing new was found (khw guesses that is just to
$todo{$_->[0]} = $_->[1];
}
+ print STDERR __LINE__, ": %todo at end of iteration ", Dumper \%todo
+ if $opt{debug} > 6;
+
# Write the revised todo, so that apicheck.c when generated in the next
# iteration will have these #ifdef'd out
write_todo($todo_file, $todo_version, \%todo);
my $r = run(qw(make test));
# This regenerated apicheck.c
- dump_apicheck() if $opt{debug};
+ dump_apicheck() if $opt{debug} > 3;
$r->{didnotrun} and die "couldn't run make test: $!\n" .
join('', @{$r->{stdout}})."\n---\n".join('', @{$r->{stderr}});
display_sym('del', $sym, $cur);
}
else { # Revert to this symbol is bad in this version
+ print STDERR __LINE__, ": symbol '$sym' not in this version\n"
+ if $opt{debug} > 6;
$todo{$sym} = $cur;
write_todo($todo_file, $todo_version, \%todo);
}
}
} # End of checking our work
+print STDERR __LINE__, ": %todo at end ", Dumper \%todo if $opt{debug} > 6;
write_todo($todo_file, $todo_version, \%todo);
# Clean up after ourselves
unlink qw(apicheck.c apicheck.o);
runtool({ out => '/dev/null' }, $fullperl, 'apicheck_c.PL', map { "--api=$_" } @_)
or die "cannot regenerate apicheck.c\n";
- dump_apicheck() if $opt{debug};
+ dump_apicheck() if $opt{debug} > 3;
}
sub dump_apicheck
for my $sym (keys %$ls) {
next if $sym =~ /\@/ or $sym =~ /^_/ or exists $stdsym{$sym};
unless (exists $ps->{$sym}) {
+ print STDERR __LINE__, ": , Couldn't find '$sym' in $perl\n"
+ if $opt{debug} > 4;
push @undefined, $sym;
}
}
+ print STDERR __LINE__, ": find_undef returning ", Dumper \@undefined
+ if $opt{debug} > 4;
return @undefined;
}
my $cur;
while (<$fh>) {
+ print STDERR __LINE__, ": apicheck.i ", $_ if $opt{debug} > 5;
next if /^#/;
# We only care about lines within one of our _DPPP_test_ functions. If
}
}
+ print STDERR __LINE__, ": load_todo returning ", Dumper \%symmap
+ if $opt{debug} > 5;
return \%symmap;
}