Leser: 1
|< 1 2 3 4 5 6 7 >| | 63 Einträge, 7 Seiten |
if( my $x = &SubBlabla(@params) ) {
1
2
3
4
$ perl -e '$_="erfolgreich"; use Module::ScanDeps; print $Module::ScanDeps::VERSION, "\n"; scan_deps(files=>["lib/MyApp.pm"]); print "test $_\n"'
0.59
test
$
QuoteDas ist aber meiner Meinung nach nicht genug, denn wie in Module::ScanDeps zu sehen ist, tappt man viel zu leicht in die Falle. Vielleicht sollte einfach eine Warnung ausgegeben werden, wenn while(<>) in einer nicht $_-lokalisierten Umgebung benutzt wird.The $_ variable is not implicitly localized. You'll have to put a "local $_;"
before the loop if you want that to happen.
1
2
while( <$FH> ) { last if /^\s*\#/ }
print "Der erste Kommentar oder shebang lautet: $_\n";
1
2
while( <$FH> ) { last if /^\s*\#/ }
print "Der erste Kommentar oder shebang lautet: $_\n";
QuoteDann muesste man IMHO auch bei den folgenden Konstrukten
Warnungen ausgeben:
weil man da - absichtlich oder unabsichtlich - das input-array veraendert.
1
2
3
4
5
6
use strict;
use warnings;
use Linux::Statistics;
$_ = 20;
my $obj = Linux::Statistics->new( ProcStats => 1 );
print "$_\n";
1
2
3
4
5
6
7
8
9
10
sub Irgendwas {
my ($filename) = @_;
open (my $FH, "<", $filename) or die "Error: $!";
local $_;
while( <$FH> ) { last if /^\s*\#/ }
return $_;
} # Irgendwas
1
2
3
4
5
6
7
8
9
10
sub Irgendwas {
my ($filename) = @_;
open (my $FH, "<", $filename) or die "Error: $!";
local $_;
while( <$FH> ) { last if /^\s*\#/ }
return $_;
} # Irgendwas
|< 1 2 3 4 5 6 7 >| | 63 Einträge, 7 Seiten |