busybox/shell/ash_test/ash-arith/arith2.sub
Denys Vlasenko 62e433131b shell: enable more tests which are passing now
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-09-25 22:35:17 +02:00

54 lines
948 B
Plaintext
Executable File

# ++ and -- are not inc/dec operators on non-variables, they are + + and - - sequences
( echo $(( --7 )) )
( echo $(( ++7 )) )
( echo $(( -- 7 )) )
( echo $(( ++ 7 )) )
#ash# ((++array[0] ))
#ash# echo 1 $array
#ash# (( ++ array[0] ))
#ash# echo 2 $array
#ash# (( ++a ))
#ash# echo 1 $a
#ash# (( ++ a ))
#ash# echo 2 $a
#ash# (( --a ))
#ash# echo 1 $a
#ash# (( -- a ))
#ash# echo 0 $a
a=0
echo 5 $(( 4 + ++a ))
echo 1 $a
# this is treated as 4 + ++a
echo 6 $(( 4+++a ))
echo 2 $a
a=2
# this is treated as 4 - --a
echo 3 $(( 4---a ))
echo 1 $a
a=1
echo 4 $(( 4 - -- a ))
echo 0 $a
#ash# (( -- ))
# -- is not a dec operator on non-variable, it is the - - sequence
echo $(( ---7 ))
( echo $(( -- - 7 )) )
#ash# (( ++ ))
# ++ is not a inc operator on non-variable, it is the + + sequence
echo $(( ++7 ))
( echo $(( ++ + 7 )) )
echo -7 $(( ++-7 ))
echo -7 $(( ++ - 7 ))
echo 7 $(( +--7 ))
echo 7 $(( -- + 7 ))