зеркало из https://github.com/microsoft/git.git
chainlint.sed: improve ?!AMP?! placement accuracy
When chainlint.sed detects a broken &&-chain, it places an ?!AMP?! annotation at the beginning of the line. However, this is an unusual location for programmers accustomed to error messages (from compilers, for instance) indicating the exact point of the problem. Therefore, relocate the ?!AMP?! annotation to the end of the line in order to better direct the programmer's attention to the source of the problem. Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
f30c1d5eb1
Коммит
db8c7a1cc0
|
@ -236,7 +236,7 @@ s/.*\n//
|
|||
# line ends with pipe "...|" -- valid; not missing "&&"
|
||||
/|[ ]*$/bcont
|
||||
# missing end-of-line "&&" -- mark suspect
|
||||
/&&[ ]*$/!s/^/?!AMP?!/
|
||||
/&&[ ]*$/!s/$/ ?!AMP?!/
|
||||
:cont
|
||||
# retrieve and print previous line
|
||||
x
|
||||
|
@ -303,7 +303,7 @@ bcase
|
|||
# that line legitimately lacks "&&"
|
||||
:else
|
||||
x
|
||||
s/?!AMP?!//
|
||||
s/ ?!AMP?!$//
|
||||
x
|
||||
bcont
|
||||
|
||||
|
@ -311,7 +311,7 @@ bcont
|
|||
# "suspect" from final contained line since that line legitimately lacks "&&"
|
||||
:done
|
||||
x
|
||||
s/?!AMP?!//
|
||||
s/ ?!AMP?!$//
|
||||
x
|
||||
# is 'done' or 'fi' cuddled with ")" to close subshell?
|
||||
/done.*)/bclose
|
||||
|
@ -354,7 +354,7 @@ bblock
|
|||
# since that line legitimately lacks "&&" and exit subshell loop
|
||||
:clssolo
|
||||
x
|
||||
s/?!AMP?!//
|
||||
s/ ?!AMP?!$//
|
||||
p
|
||||
x
|
||||
s/^/>/
|
||||
|
|
|
@ -4,6 +4,6 @@
|
|||
baz
|
||||
>) &&
|
||||
(
|
||||
?!AMP?! bar=$((42 + 1))
|
||||
bar=$((42 + 1)) ?!AMP?!
|
||||
baz
|
||||
>)
|
||||
|
|
|
@ -7,6 +7,6 @@
|
|||
bar &&
|
||||
{
|
||||
echo c
|
||||
?!AMP?! }
|
||||
} ?!AMP?!
|
||||
baz
|
||||
>)
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
(
|
||||
foo &&
|
||||
?!AMP?! bar
|
||||
bar ?!AMP?!
|
||||
baz &&
|
||||
wop
|
||||
>)
|
||||
|
|
|
@ -9,11 +9,11 @@
|
|||
case "$x" in
|
||||
x) foo ;;
|
||||
*) bar ;;
|
||||
?!AMP?! esac
|
||||
esac ?!AMP?!
|
||||
foobar
|
||||
>) &&
|
||||
(
|
||||
case "$x" in 1) true;; esac &&
|
||||
?!AMP?! case "$y" in 2) false;; esac
|
||||
case "$y" in 2) false;; esac ?!AMP?!
|
||||
foobar
|
||||
>)
|
||||
|
|
|
@ -4,6 +4,6 @@
|
|||
baz
|
||||
>) &&
|
||||
(
|
||||
?!AMP?! bar=$(gobble blocks)
|
||||
bar=$(gobble blocks) ?!AMP?!
|
||||
baz
|
||||
>)
|
||||
|
|
|
@ -4,7 +4,7 @@ cd foo &&
|
|||
>) &&
|
||||
|
||||
(
|
||||
?!AMP?!cd foo
|
||||
cd foo ?!AMP?!
|
||||
bar
|
||||
>) &&
|
||||
|
||||
|
@ -17,5 +17,5 @@ cd foo &&
|
|||
> bar) &&
|
||||
|
||||
(
|
||||
?!AMP?!cd foo
|
||||
cd foo ?!AMP?!
|
||||
> bar)
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
(
|
||||
for i in a b c
|
||||
do
|
||||
?!AMP?! echo $i
|
||||
echo $i ?!AMP?!
|
||||
cat
|
||||
?!AMP?! done
|
||||
done ?!AMP?!
|
||||
for i in a b c; do
|
||||
echo $i &&
|
||||
cat $i
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
(
|
||||
x=$(bobble &&
|
||||
?!AMP?!>> wiffle)
|
||||
>> wiffle) ?!AMP?!
|
||||
echo $x
|
||||
>)
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
(
|
||||
?!AMP?! cat && echo "multi-line string"
|
||||
cat && echo "multi-line string" ?!AMP?!
|
||||
bap
|
||||
>)
|
||||
|
|
|
@ -3,10 +3,10 @@
|
|||
do
|
||||
if false
|
||||
then
|
||||
?!AMP?! echo "err"
|
||||
echo "err" ?!AMP?!
|
||||
exit 1
|
||||
?!AMP?! fi
|
||||
fi ?!AMP?!
|
||||
foo
|
||||
?!AMP?! done
|
||||
done ?!AMP?!
|
||||
bar
|
||||
>)
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
(
|
||||
if test -n ""
|
||||
then
|
||||
?!AMP?! echo very
|
||||
echo very ?!AMP?!
|
||||
echo empty
|
||||
elif test -z ""
|
||||
then
|
||||
|
@ -9,7 +9,7 @@
|
|||
else
|
||||
echo foo &&
|
||||
cat
|
||||
?!AMP?! fi
|
||||
fi ?!AMP?!
|
||||
echo poodle
|
||||
>) &&
|
||||
(
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
(
|
||||
foobar &&
|
||||
?!AMP?! barfoo
|
||||
barfoo ?!AMP?!
|
||||
flibble "not a # comment"
|
||||
>) &&
|
||||
|
||||
|
|
|
@ -3,10 +3,10 @@
|
|||
then
|
||||
while true
|
||||
do
|
||||
?!AMP?! echo "pop"
|
||||
echo "pop" ?!AMP?!
|
||||
echo "glup"
|
||||
?!AMP?! done
|
||||
done ?!AMP?!
|
||||
foo
|
||||
?!AMP?! fi
|
||||
fi ?!AMP?!
|
||||
bar
|
||||
>)
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
(
|
||||
x="line 1 line 2 line 3" &&
|
||||
?!AMP?! y="line 1 line2"
|
||||
y="line 1 line2" ?!AMP?!
|
||||
foobar
|
||||
>) &&
|
||||
(
|
||||
|
|
|
@ -4,16 +4,16 @@
|
|||
>> ) &&
|
||||
(cd foo &&
|
||||
bar
|
||||
?!AMP?!>> )
|
||||
>> ) ?!AMP?!
|
||||
(
|
||||
cd foo &&
|
||||
>> bar) &&
|
||||
(
|
||||
cd foo &&
|
||||
?!AMP?!>> bar)
|
||||
>> bar) ?!AMP?!
|
||||
(cd foo &&
|
||||
>> bar) &&
|
||||
(cd foo &&
|
||||
?!AMP?!>> bar)
|
||||
>> bar) ?!AMP?!
|
||||
foobar
|
||||
>)
|
||||
|
|
|
@ -2,6 +2,6 @@ cat >foop &&
|
|||
|
||||
(
|
||||
cat &&
|
||||
?!AMP?! cat
|
||||
cat ?!AMP?!
|
||||
foobar
|
||||
>)
|
||||
|
|
|
@ -6,6 +6,6 @@
|
|||
# minor numbers of cows (or do they?)
|
||||
baz &&
|
||||
snaff
|
||||
?!AMP?!>> )
|
||||
>> ) ?!AMP?!
|
||||
fuzzy
|
||||
>)
|
||||
|
|
|
@ -3,6 +3,6 @@
|
|||
bar |
|
||||
baz &&
|
||||
fish |
|
||||
?!AMP?! cow
|
||||
cow ?!AMP?!
|
||||
sunder
|
||||
>)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
(
|
||||
?!AMP?!?!SEMI?! cat foo ; echo bar
|
||||
?!SEMI?! cat foo ; echo bar ?!AMP?!
|
||||
?!SEMI?! cat foo ; echo bar
|
||||
>) &&
|
||||
(
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
(
|
||||
echo wobba gorgo snoot wafta snurb &&
|
||||
?!AMP?! cat >bip
|
||||
cat >bip ?!AMP?!
|
||||
echo >bop
|
||||
>) &&
|
||||
(
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
(foo || exit 1) &&
|
||||
(foo || exit 1) |
|
||||
(foo || exit 1) >baz &&
|
||||
?!AMP?! (foo && bar)
|
||||
?!AMP?!?!SEMI?! (foo && bar; baz)
|
||||
(foo && bar) ?!AMP?!
|
||||
?!SEMI?! (foo && bar; baz) ?!AMP?!
|
||||
foobar
|
||||
>)
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
(
|
||||
while true
|
||||
do
|
||||
?!AMP?! echo foo
|
||||
echo foo ?!AMP?!
|
||||
cat
|
||||
?!AMP?! done
|
||||
done ?!AMP?!
|
||||
while true; do
|
||||
echo foo &&
|
||||
cat bar
|
||||
|
|
Загрузка…
Ссылка в новой задаче