mirror of
https://github.com/samba-team/samba.git
synced 2024-12-25 23:21:54 +03:00
b85f7857dc
(This used to be commit b2d2b4f233
)
39 lines
665 B
Perl
Executable File
39 lines
665 B
Perl
Executable File
#!/usr/bin/perl
|
|
# Script that reads in C files and prints defines that are used nowhere in the
|
|
# code
|
|
|
|
# Arguments: C and H files
|
|
# Copyright Jelmer Vernooij <jelmer@samba.org>, GPL
|
|
|
|
use strict;
|
|
|
|
my %defined;
|
|
my %used;
|
|
my %files;
|
|
|
|
my $tmp;
|
|
while($tmp = shift) {
|
|
$files{$tmp} = $tmp;
|
|
open(FI, $tmp);
|
|
my $ln = 0;
|
|
while(<FI>) {
|
|
$ln++;
|
|
my $line = $_;
|
|
my $cur = "";
|
|
if(/^#define ([A-Za-z0-9_]+)/) {
|
|
$defined{$1} = "$tmp:$ln";
|
|
$cur = $1;
|
|
}
|
|
|
|
$_ = $line;
|
|
while(/([A-Za-z0-9_]+)/sgm) {
|
|
if($cur ne $1) { $used{$1} = "$tmp:$ln"; }
|
|
}
|
|
}
|
|
close FI;
|
|
}
|
|
|
|
foreach(keys %defined) {
|
|
if(!$used{$_}) { print "$defined{$_}: Macro `$_' is unused\n"; }
|
|
}
|