From: Ramsay Jones Date: Sat, 30 Apr 2011 17:25:13 GMT Subject: Re: [RFC/PATCH] t0081-*.sh: Fix failure of the 'long read' tests Message-ID: <4DBC45F9.7090804@ramsay1.demon.co.uk> In-Reply-To: <20110426234850.GC32491@sigill.intra.peff.net> Jeff King wrote: > Yeah, that syntax is handled just fine by my bash and dash: > > $ cat >foo.sh <<'EOF' > i=1 > : $((i = $i + 1)) > echo $i > EOF > > $ bash foo.sh > 2 > $ bash --version | head -n 1 > GNU bash, version 4.1.5(1)-release (x86_64-pc-linux-gnu) > > $ dash foo.sh > 2 Er, ... yeah, it works for my bash and (up-to-date) dash too! [not the installed dash, of course, for which it is a syntax error] Ahem ... *blush* > But I think your i=$(($i + 1)) is the right solution. Yes, this fixes the problem and does not introduce a regression. So, the patch is correct, but (apart from the last sentence) the commit message is *absolute rubbish*. I won't bore you with the details of my lunacy! :-P However, I much prefer Jonathan's patch which removes this test completely! ATB, Ramsay Jones