} elsif ($2 eq '$') {
od $2;
if (s{^\$}{}) { od $&; }
+ elsif (m{^[a-zA-Z]\w}) {
+ wrn
+ 'possibly confusing unbracketed single-char $-expansion';
+ }
elsif (m{^\(($esc)?([^()\$]+)\)} ||
m{^\{($esc)?([^{}\$]+)\}}) {
$note_varref->($2,!!$1);
oraw "include \$(SUBDIRMK_MAKEFILES)\n";
}
+sub flmap ($) { local ($_) = @_; s{:(\d+)$}{ sprintf ":%10d", $1 }e; $_; }
+
sub print_varref_warnings () {
foreach my $vn (sort keys %varref) {
my $vv = $varref{$vn};
foreach my $amp ('', 1) {
printf STDERR " saw %s%s at %s\n",
($amp ? '&' : ''), $vn, $_
- foreach sort keys %{ $vv->{$amp} };
+ foreach
+ sort { flmap($a) cmp flmap($b) }
+ keys %{ $vv->{$amp} };
}
}
}