Re: [PATCH] bash: offer only paths after '--'
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Jul 9, 2008, 00:06 UTC
- Message-ID
- <7vprpnq5t8.fsf@gitster.siamese.dyndns.org>
- In-Reply-To
- <20080708235153.GD8224@neumann>
SZEDER Gábor <szeder@ira.uka.de> writes:
Show 11 quoted lines
> On Tue, Jul 08, 2008 at 11:18:37PM +0000, Shawn O. Pearce wrote: >> Junio C Hamano <gitster@pobox.com> wrote: >> > SZEDER Gábor <szeder@ira.uka.de> writes: >> > > + c=$((++c)) >> > >> > This assignment is somewhat curious, although it should work as expected >> > either way ;-) > ... > Maybe an old C++ "heritage"? In C++ it matters for class types (e.g. > iterators), because the postfix operator might be slower than the > prefix.
Heh, I was not talking about prefix vs postfix but about the assignment into the variable that is incremented as a side effect of evaluating the left hand side. If you know the variable is incremented already there is no point in assigning the resulting value to it ;-)
c=$(( $c + 1 ))
would have avoided such an uneasy feeling, and would have been more portable. Even though $((x)) and $(($x)) are supposed to evaluate the same, some shells do not like dollar-less variable names in arithmetic expansion, and prefix/postfix increment/decrement are not required to be supported by POSIX.
But this script being bash completion, we can use as much bashism as we want here; perhaps I would have written:
: $((c++))