Merged in Governor-Tarkin/swg-src (pull request #17)
[swg-src.git] / tools / filterWarnings.pl
blob0982ed63d83cd0bde71bea08cc1e6f0639c91017
1 #!/usr/bin/perl
3 sub usage
8 sub numerically
10 return -($a <=> $b);
13 while (<>)
15 s/\s+/ /;
17 chomp;
19 foreach $compare (keys %warnings)
21 @current = split(/\s+/, $_);
22 @compare = split(/\s+/, $compare);
24 if (scalar(@current) == scalar(@compare))
26 $count = 0;
27 $out = "";
28 while (@current)
30 $a = shift @current;
31 $b = shift @compare;
33 if ($a eq $b)
35 $out .= " $a";
37 else
39 $out .= " XXXX";
40 $count += 1;
44 if ($count <= $similar)
46 $out =~ s/^ //;
47 if ($warnings{$out} ne $warnings{$compare})
49 $warnings{$out} = $warnings{$compare};
50 delete $warnings{$compare};
53 $_ = $out;
55 else
61 $warnings{$_} += 1 if ($repeat == 0)
65 foreach (keys %warnings)
67 push(@warnings, sprintf("%5d %s", $warnings{$_}, $_));
70 foreach (sort numerically @warnings)
72 print $_, "\n";