arith-context () { run-file arith-context "$@" } run-file () { local spec_name=$1; shift; sh-spec spec/$spec_name.test.sh --compare-shells --oils-bin-dir $PWD/bin "$@" } arith-context: spec test case results

Results for arith-context.test.sh

statusbashmkshzshosh
pass 138714
ok 1030
N-I 0210
BUG 0430
total14141414
casebashmkshzshoshdescription
0pass pass N-I pass Multiple right brackets inside expression
details
1pass pass pass pass Slicing of string with constants
2pass pass pass pass Slicing of string with variables
3pass pass ok pass Array index on LHS of assignment
details
4pass pass ok pass Array index on LHS with indices
details
5pass BUG BUG pass Slicing of string with expressions
detailsdetails
6pass BUG BUG pass Ambiguous colon in slice
detailsdetails
7pass pass pass pass Triple parens should be disambiguated
8pass pass pass pass Quadruple parens should be disambiguated
9pass N-I pass pass ExprSub $[] happens to behave the same on simple cases
details
10pass pass pass pass Empty expression (( )) $(( ))
11pass N-I pass pass Empty expression for (( ))
details
12pass BUG BUG pass Empty expression in ${a[@]: : }
detailsdetails
13ok BUG ok pass Empty expression a[]
detailsdetailsdetails
42 passed, 4 OK, 3 not implemented, 7 BUG, 0 failed, 0 timeouts, 0 cases skipped

Details on runs that didn't PASS

zsh0 Multiple right brackets inside expression

stdout:
stderr: 
zsh3 Array index on LHS of assignment

stdout:
X 2 3
stderr:
zsh4 Array index on LHS with indices

stdout:
X 2 3
stderr:
mksh5 Slicing of string with expressions

stdout:
stderr: 
mksh: <stdin>[3]: ${s:zero}: bad substitution
zsh5 Slicing of string with expressions

stdout:
stderr: 
zsh: unrecognized modifier `z'
mksh6 Ambiguous colon in slice

stdout:
2
stderr:
mksh: <stdin>[3]: ${s: 0 < 1 ? 2 : 0 : 1}: bad substitution
zsh6 Ambiguous colon in slice

stdout:
2
stderr:
zsh: bad math expression: ':' expected
mksh9 ExprSub $[] happens to behave the same on simple cases

stdout:
$[1 + 2] $[3 * 4]
stderr:
mksh11 Empty expression for (( ))

stdout:
stderr: 
mksh: <stdin>[1]: syntax error: '((' unexpected
mksh12 Empty expression in ${a[@]: : }

stdout:
stderr: 
mksh: <stdin>[3]: ${a[@]: }: bad substitution
zsh12 Empty expression in ${a[@]: : }

stdout:
slice a b c d e f
status=0

slice
status=0

stderr:
zsh: closing brace expected
bash13 Empty expression a[]

stdout:
status=1
1 2 3
status=1
stderr:
bash: line 3: a[]: bad array subscript
bash: line 7: ${a[]}: bad substitution
mksh13 Empty expression a[]

stdout:
status=0
42 2 3
42
status=0
stderr:
zsh13 Empty expression a[]

stdout:
stderr: 
zsh: not an identifier: a[]