diff options
author | Richard Levitte <levitte@openssl.org> | 2000-11-14 13:20:10 +0000 |
---|---|---|
committer | Richard Levitte <levitte@openssl.org> | 2000-11-14 13:20:10 +0000 |
commit | 451e60e99f03298c02a1570d0f167a566e57a974 (patch) | |
tree | 2d216411eaebe629ff05b4ac80f1033596232e12 /util | |
parent | 89c16ab53e9f8742144eef2b627d09b0797e7b87 (diff) |
Detect and mark functions that no longer exist.
Diffstat (limited to 'util')
-rwxr-xr-x | util/mkdef.pl | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/util/mkdef.pl b/util/mkdef.pl index 403f823676..07bf4103ea 100755 --- a/util/mkdef.pl +++ b/util/mkdef.pl @@ -611,6 +611,7 @@ sub maybe_add_info { (my $name, *nums, my @symbols) = @_; my $sym; my $new_info = 0; + my %syms=(); print STDERR "Updating $name info\n"; foreach $sym (@symbols) { @@ -624,6 +625,16 @@ sub maybe_add_info { #print STDERR "DEBUG: maybe_add_info for $s: \"$dummy\" => \"$i\"\n"; } } + $syms{sym} = 1; + } + + my @s=sort { &parse_number($nums{$a},"n") <=> &parse_number($nums{$b},"n") } keys %nums; + foreach $sym (@s) { + (my $n, my $i) = split /\\/, $nums{$sym}; + if (!defined($syms{sym})) { + $new_info++; + #print STDERR "DEBUG: maybe_add_info for $sym: -> undefined\n"; + } } if ($new_info) { print STDERR "$new_info old symbols got an info update\n"; @@ -852,12 +863,19 @@ sub rewrite_numbers $rsyms{$s} = 1; } + my %syms = (); + foreach $_ (@symbols) { + (my $n, my $i) = split /\\/; + $syms{$n} = 1; + } + my @s=sort { &parse_number($nums{$a},"n") <=> &parse_number($nums{$b},"n") } keys %nums; foreach $sym (@s) { (my $n, my $i) = split /\\/, $nums{$sym}; next if defined($i) && $i =~ /^.*?:.*?:\w+\(\w+\)/; next if defined($rsyms{$sym}); - $i="NOEXIST::FUNCTION:" if !defined($i) || $i eq ""; + $i="NOEXIST::FUNCTION:" + if !defined($i) || $i eq "" || !defined($syms{$sym}); printf OUT "%s%-40s%d\t%s\n","",$sym,$n,$i; if (exists $r{$sym}) { (my $s, $i) = split /\\/,$r{$sym}; |