summaryrefslogtreecommitdiff
path: root/i/pc104/initrd/conf/busybox/shell/ash_test/ash-arith/arith2.sub
blob: f7e3c9235ce5af5ed60e8bc20d3341062bb7d917 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
# bash 3.2 apparently thinks that ++7 is 7 etc
(  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

# ash doesn't handle it right...
#ash# echo 6 $(( 4+++a ))
#ash# echo 2 $a
      a=2

# ash doesn't handle it right...
#ash# echo 3 $(( 4---a ))
#ash# echo 1 $a
      a=1

echo 4 $(( 4 - -- a ))
echo 0 $a

#ash# (( -- ))
# bash 3.2 apparently thinks that ---7 is -7
#ash# echo $(( ---7 ))
(  echo $(( -- - 7 ))  )

#ash# (( ++ ))
# bash 3.2: 7
#ash# echo 7 $(( ++7 ))
(  echo $(( ++ + 7 ))  )

# bash 3.2: -7
#ash# echo -7 $(( ++-7 ))
# bash 3.2: -7
#ash# echo -7 $(( ++ - 7 ))

# bash 3.2: 7
#ash# echo 7 $(( +--7 ))
# bash 3.2: 7
#ash# echo 7 $(( -- + 7 ))