[SCM] Git repository for devscripts branch, master, updated. v2.12.4-43-g227b8b8
Benjamin Drung
bdrung at debian.org
Thu Oct 25 20:17:03 UTC 2012
The following commit has been merged in the master branch:
commit 967395659e07a46e6e225a09cbb27c2d9f6e6e73
Author: Raphael Geissert <geissert at debian.org>
Date: Fri Oct 19 17:59:46 2012 -0500
Print the line number of opening of unterminated heredoc or quoted str
It is particularly useful when debugging such errors in big scripts.
Signed-off-by: Benjamin Drung <bdrung at debian.org>
diff --git a/scripts/checkbashisms.pl b/scripts/checkbashisms.pl
index 479e782..cb19ad3 100755
--- a/scripts/checkbashisms.pl
+++ b/scripts/checkbashisms.pl
@@ -124,6 +124,7 @@ foreach my $filename (@ARGV) {
my $found_rules = 0;
my $buffered_orig_line = "";
my $buffered_line = "";
+ my %start_lines;
while (<C>) {
next unless ($check_lines_count == -1 or $. <= $check_lines_count);
@@ -314,6 +315,7 @@ foreach my $filename (@ARGV) {
# start of a quoted block.
if ($count % 2 == 1) {
$quote_string = $quote;
+ $start_lines{'quote_string'} = $.;
$line =~ s/^(.*)$quote.*$/$1/;
last;
}
@@ -415,13 +417,14 @@ foreach my $filename (@ARGV) {
$cat_indented = ($1 && $1 eq '-')? 1 : 0;
$cat_string = $2;
$cat_string = $3 if not defined $cat_string;
+ $start_lines{'cat_string'} = $.;
}
}
}
- warn "error: $filename: Unterminated heredoc found, EOF reached. Wanted: <$cat_string>\n"
+ warn "error: $filename: Unterminated heredoc found, EOF reached. Wanted: <$cat_string>, opened in line $start_lines{'cat_string'}\n"
if ($cat_string ne '');
- warn "error: $filename: Unterminated quoted string found, EOF reached. Wanted: <$quote_string>\n"
+ warn "error: $filename: Unterminated quoted string found, EOF reached. Wanted: <$quote_string>, opened in line $start_lines{'quote_string'}\n"
if ($quote_string ne '');
warn "error: $filename: EOF reached while on line continuation.\n"
if ($buffered_line ne '');
--
Git repository for devscripts
More information about the devscripts-devel
mailing list