Results for parse-errors.test.sh

statusoshosh-cpp
pass 2424
ok 11
FAIL 33
total2828
caseoshosh-cppdescription
0pass pass Long Token - 65535 bytes
1pass pass Token that's too long for Oils - 65536 bytes
2pass pass $% is not a parse error
3pass pass Bad braced var sub -- not allowed
4pass pass Bad var sub caught at parse time
5pass pass Incomplete while
6pass pass Incomplete for
7pass pass Incomplete if
8pass pass do unexpected
9pass pass } is a parse error
10pass pass { is its own word, needs a space
11pass pass } on the second line
12pass pass Invalid for loop variable name
13pass pass bad var name globally isn't parsed like an assignment
14pass pass bad var name in export
15pass pass bad var name in local
16pass pass misplaced parentheses are not a subshell
17pass pass incomplete command sub
18pass pass incomplete backticks
19pass pass misplaced ;;
20pass pass empty clause in [[
21pass pass interactive parse error (regression)
22FAIL FAIL array literal inside array is a parse error
detailsdetails
23FAIL FAIL array literal inside loop is a parse error
detailsdetails
24FAIL FAIL array literal in case
detailsdetails
25pass pass %foo=() is parse error (regression)
26ok ok leading =word is not allowed regardless of shopt -s parse_equals
detailsdetails
27pass pass echo =word is allowed
48 passed, 2 OK, 0 not implemented, 0 BUG, 3 failed, 0 timeouts, 0 cases skipped
3 failed under osh

Details on runs that didn't PASS

osh22 array literal inside array is a parse error

[osh status] Expected 2, got 1

stdout:
stderr: 
  a=( inside=() )
             ^
[ stdin ]:1: fatal: Unexpected array literal
osh-cpp22 array literal inside array is a parse error

[osh-cpp status] Expected 2, got 1

stdout:
stderr: 
  a=( inside=() )
             ^
[ stdin ]:1: fatal: Unexpected array literal
osh23 array literal inside loop is a parse error

[osh status] Expected 2, got 1

stdout:
stderr: 
    for x in a=(); do
               ^
[ stdin ]:2: fatal: Unexpected array literal
osh-cpp23 array literal inside loop is a parse error

[osh-cpp status] Expected 2, got 1

stdout:
stderr: 
    for x in a=(); do
               ^
[ stdin ]:2: fatal: Unexpected array literal
osh24 array literal in case

[osh status] Expected 2, got 1

stdout:
stderr: 
    case a=() in
           ^
[ stdin ]:2: fatal: Unexpected array literal
osh-cpp24 array literal in case

[osh-cpp status] Expected 2, got 1

stdout:
stderr: 
    case a=() in
           ^
[ stdin ]:2: fatal: Unexpected array literal
osh26 leading =word is not allowed regardless of shopt -s parse_equals

stdout:
stderr: 
  =word
  ^
[ stdin ]:1: =word isn't allowed.  Hint: add a space after =, or quote it
osh-cpp26 leading =word is not allowed regardless of shopt -s parse_equals

stdout:
stderr: 
  =word
  ^
[ stdin ]:1: =word isn't allowed.  Hint: add a space after =, or quote it