| 1 | ## compare_shells: bash mksh zsh
|
| 2 | ## our_shell: -
|
| 3 |
|
| 4 | #### let
|
| 5 | # NOTE: no spaces are allowed. How is this tokenized?
|
| 6 | let x=1
|
| 7 | let y=x+2
|
| 8 | let z=y*3 # zsh treats this as a glob; bash doesn't
|
| 9 | let z2='y*3' # both are OK with this
|
| 10 | echo $x $y $z $z2
|
| 11 | ## stdout: 1 3 9 9
|
| 12 | ## OK zsh stdout-json: ""
|
| 13 | ## OK zsh status: 1
|
| 14 |
|
| 15 | #### let with ()
|
| 16 | let x=( 1 )
|
| 17 | let y=( x + 2 )
|
| 18 | let z=( y * 3 )
|
| 19 | echo $x $y $z
|
| 20 | ## stdout: 1 3 9
|
| 21 | ## status: 0
|
| 22 | ## N-I mksh/zsh stdout-json: ""
|
| 23 | ## N-I mksh/zsh status: 1
|