find_unused_macros.pl

来自「samba最新软件」· PL 代码 · 共 39 行

PL
39
字号
#!/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>, GPLuse 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"; }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?