[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: $(()): "?:": false "assignment to non-variable"

From: Chet Ramey
Subject: Re: $(()): "?:": false "assignment to non-variable"
Date: Mon, 11 Jul 2022 09:22:25 -0400
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0) Gecko/20100101 Thunderbird/91.10.0

On 7/9/22 5:58 PM, Steffen Nurpmeso wrote:

sorry to come back, but when banging against ?: implementation
i saw this bash 5.1.16 bug:

   $ bash -c 'I=3; echo "$((1?(I*=I):(I+=I)))";echo $I'

The parens override precedence.

   $ bash -c 'I=3; echo "$((1?(I*=I):I+=I))";echo $I'
   bash: line 1: 1?(I*=I):I+=I: attempted assignment to non-variable (error token is 

The normal rules of precedence apply, and the conditional expression on the
rhs of the `:' can't contain an assignment, since the assignment operator
has higher precedence.

   $ bash -c 'I=3; echo "$((1?I*=I:(I+=I)))";echo $I'

The parens override precedence.

``The lyf so short, the craft so long to lerne.'' - Chaucer
                 ``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, UTech, CWRU    chet@case.edu    http://tiswww.cwru.edu/~chet/

reply via email to

[Prev in Thread] Current Thread [Next in Thread]