prohibit-duplicate-header: print file name and line

This way :make syntax-check in ViM will point you at the offending line.
This commit is contained in:
Ján Tomko 2016-06-22 22:27:43 +02:00
parent a9179d78bf
commit 43d2b6f2aa

View File

@ -5,17 +5,21 @@ use strict;
my $file = " ";
my $ret = 0;
my %includes = ( );
my $lineno = 0;
while (<>) {
if (not $file eq $ARGV) {
%includes = ( );
$file = $ARGV;
$lineno = 0;
}
$lineno++;
if (/^# *include *[<"]([^>"]*\.h)[">]/) {
$includes{$1}++;
if ($includes{$1} == 2) {
$ret = 1;
print STDERR "$1 included multiple times in $ARGV\n";
print STDERR "$ARGV:$lineno: $_";
print STDERR "Do not include a header more than once per file\n";
}
}
}