History

namespace: perlcritic warnings

Use local file handle not global. Make loop and other variables local in scope.

Stephen Hemminger committed 16 years ago

Commit 86d08e51 parent a2088681 file · +33 −32Browse files

Unified · Split

scripts/namespace.pl+33−32
@@ -175,12 +175,11 @@ sub do_nm · 174 unmodified lines
175 }175 }
176 if (! -e "$source.c" && ! -e "$source.S") {176 if (! -e "$source.c" && ! -e "$source.S") {
177 # No obvious source, exclude the object if it is conglomerate177 # No obvious source, exclude the object if it is conglomerate
178 if (! open(OBJDUMPDATA, "$objdump $basename|")) {178 open(my $objdumpdata, "$objdump $basename|")
179 printf STDERR "$objdump $fullname failed $!\n";179 or die "$objdump $fullname failed $!\n";
180 return;180
181 }
182 my $comment;181 my $comment;
183 while (<OBJDUMPDATA>) {182 while (<$objdumpdata>) {
184 chomp();183 chomp();
185 if (/^In archive/) {184 if (/^In archive/) {
186 # Archives are always conglomerate185 # Archives are always conglomerate
@@ -190,18 +189,18 @@ sub do_nm · 3 unmodified lines
190 next if (! /^[ 0-9a-f]{5,} /);189 next if (! /^[ 0-9a-f]{5,} /);
191 $comment .= substr($_, 43);190 $comment .= substr($_, 43);
192 }191 }
193 close(OBJDUMPDATA);192 close($objdumpdata);
193
194 if (!defined($comment) || $comment !~ /GCC\:.*GCC\:/m) {194 if (!defined($comment) || $comment !~ /GCC\:.*GCC\:/m) {
195 printf STDERR "No source file found for $fullname\n";195 printf STDERR "No source file found for $fullname\n";
196 }196 }
197 return;197 return;
198 }198 }
199 if (! open(NMDATA, "$nm $basename|")) {199 open (my $nmdata, "$nm $basename|")
200 printf STDERR "$nm $fullname failed $!\n";200 or die "$nm $fullname failed $!\n";
201 return;201
202 }
203 my @nmdata;202 my @nmdata;
204 while (<NMDATA>) {203 while (<$nmdata>) {
205 chop;204 chop;
206 ($type, $name) = (split(/ +/, $_, 3))[1..2];205 ($type, $name) = (split(/ +/, $_, 3))[1..2];
207 # Expected types206 # Expected types
@@ -268,7 +267,8 @@ sub do_nm · 60 unmodified lines
268 }267 }
269 }268 }
270 }269 }
271 close(NMDATA);270 close($nmdata);
271
272 if ($#nmdata < 0) {272 if ($#nmdata < 0) {
273 if (273 if (
274 $fullname ne "lib/brlock.o"274 $fullname ne "lib/brlock.o"
@@ -316,8 +316,7 @@ sub drop_def · 41 unmodified lines
316 316
317sub list_multiply_defined317sub list_multiply_defined
318{318{
319 my ($name, $module);319 foreach my $name (keys(%def)) {
320 foreach $name (keys(%def)) {
321 if ($#{$def{$name}} > 0) {320 if ($#{$def{$name}} > 0) {
322 # Special case for cond_syscall321 # Special case for cond_syscall
323 if ($#{$def{$name}} == 1 && $name =~ /^sys_/ &&322 if ($#{$def{$name}} == 1 && $name =~ /^sys_/ &&
@@ -333,8 +332,9 @@ sub list_multiply_defined · 9 unmodified lines
333 &drop_def("arch/x86/kernel/vsyscall-sysenter_32.o", $name);332 &drop_def("arch/x86/kernel/vsyscall-sysenter_32.o", $name);
334 next;333 next;
335 }334 }
335
336 printf "$name is multiply defined in :-\n";336 printf "$name is multiply defined in :-\n";
337 foreach $module (@{$def{$name}}) {337 foreach my $module (@{$def{$name}}) {
338 printf "\t$module\n";338 printf "\t$module\n";
339 }339 }
340 }340 }
@@ -343,12 +343,13 @@ sub list_multiply_defined · 2 unmodified lines
343 343
344sub resolve_external_references344sub resolve_external_references
345{345{
346 my ($object, $type, $name, $i, $j, $kstrtab, $ksymtab, $export);346 my ($kstrtab, $ksymtab, $export);
347
347 printf "\n";348 printf "\n";
348 foreach $object (keys(%nmdata)) {349 foreach my $object (keys(%nmdata)) {
349 my $nmdata = $nmdata{$object};350 my $nmdata = $nmdata{$object};
350 for ($i = 0; $i <= $#{$nmdata}; ++$i) {351 for (my $i = 0; $i <= $#{$nmdata}; ++$i) {
351 ($type, $name) = split(' ', $nmdata->[$i], 2);352 my ($type, $name) = split(' ', $nmdata->[$i], 2);
352 if ($type eq "U" || $type eq "w") {353 if ($type eq "U" || $type eq "w") {
353 if (exists($def{$name}) || exists($ksymtab{$name})) {354 if (exists($def{$name}) || exists($ksymtab{$name})) {
354 # add the owning object to the nmdata355 # add the owning object to the nmdata
@@ -357,7 +358,7 @@ sub resolve_external_references · 2 unmodified lines
357 $kstrtab = "R __kstrtab_$name";358 $kstrtab = "R __kstrtab_$name";
358 $ksymtab = "R __ksymtab_$name";359 $ksymtab = "R __ksymtab_$name";
359 $export = 0;360 $export = 0;
360 for ($j = 0; $j <= $#{$nmdata}; ++$j) {361 for (my $j = 0; $j <= $#{$nmdata}; ++$j) {
361 if ($nmdata->[$j] eq $kstrtab ||362 if ($nmdata->[$j] eq $kstrtab ||
362 $nmdata->[$j] eq $ksymtab) {363 $nmdata->[$j] eq $ksymtab) {
363 $export = 1;364 $export = 1;
@@ -424,11 +425,11 @@ sub resolve_external_references · 60 unmodified lines
424sub list_extra_externals425sub list_extra_externals
425{426{
426 my %noref = ();427 my %noref = ();
427 my ($name, @module, $module, $export);428
428 foreach $name (keys(%def)) {429 foreach my $name (keys(%def)) {
429 if (! exists($ref{$name})) {430 if (! exists($ref{$name})) {
430 @module = @{$def{$name}};431 my @module = @{$def{$name}};
431 foreach $module (@module) {432 foreach my $module (@module) {
432 if (! exists($noref{$module})) {433 if (! exists($noref{$module})) {
433 $noref{$module} = [];434 $noref{$module} = [];
434 }435 }
@@ -438,16 +439,16 @@ sub list_extra_externals · 3 unmodified lines
438 }439 }
439 if (%noref) {440 if (%noref) {
440 printf "\nExternally defined symbols with no external references\n";441 printf "\nExternally defined symbols with no external references\n";
441 foreach $module (sort(keys(%noref))) {442 foreach my $module (sort(keys(%noref))) {
442 printf " $module\n";443 printf " $module\n";
443 foreach (sort(@{$noref{$module}})) {444 foreach (sort(@{$noref{$module}})) {
444 if (exists($export{$_})) {445 my $export;
445 $export = " (export only)";446 if (exists($export{$_})) {
446 }447 $export = " (export only)";
447 else {448 } else {
448 $export = "";449 $export = "";
449 }450 }
450 printf " $_$export\n";451 printf " $_$export\n";
451 }452 }
452 }453 }
453 }454 }