Results for parse-errors.test.sh

statusoshosh_.pyosh_.cc
pass 222120
ok 111
FAIL 345
total262626
caseoshosh_.pyosh_.ccdescription
0pass pass pass Bad var sub
1pass pass pass Bad braced var sub -- not allowed
2pass pass pass Bad var sub caught at parse time
3pass pass pass Incomplete while
4pass pass pass Incomplete for
5pass pass pass Incomplete if
6pass pass pass do unexpected
7pass pass pass } is a parse error
8pass pass pass { is its own word, needs a space
9pass pass FAIL } on the second line
details
10pass pass pass Invalid for loop variable name
11pass pass pass bad var name globally isn't parsed like an assignment
12pass pass pass bad var name in export
13pass pass pass bad var name in local
14pass pass pass misplaced parentheses are not a subshell
15pass pass pass incomplete command sub
16pass pass pass incomplete backticks
17pass pass pass misplaced ;;
18pass pass pass empty clause in [[
19pass FAIL FAIL interactive parse error (regression)
detailsdetails
20FAIL FAIL FAIL array literal inside array is a parse error
detailsdetailsdetails
21FAIL FAIL FAIL array literal inside loop is a parse error
detailsdetailsdetails
22FAIL FAIL FAIL array literal in case
detailsdetailsdetails
23pass pass pass %foo=() is parse error (regression)
24ok ok ok leading =word is not allowed regardless of shopt -s parse_equals
detailsdetailsdetails
25pass pass pass echo =word is allowed
63 passed, 3 OK, 0 not implemented, 0 BUG, 12 failed, 0 timeouts, 0 cases skipped
3 failed under osh

Details on runs that didn't PASS

osh_.cc9 } on the second line

[osh_.cc status] Expected 127, got 1

stdout:
stderr: 
  {ls;
  ^
[ stdin ]:2: '{ls' not found
osh_.py19 interactive parse error (regression)

[osh_.py status] Expected 2, got 1

stdout:
stderr: 
osh fatal error: 
osh_.cc19 interactive parse error (regression)

[osh_.cc status] Expected 2, got 129

stdout:
stderr: 
terminate called after throwing an instance of 'NotImplementedError*'
osh20 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_.py20 array literal inside array is a parse error

[osh_.py status] Expected 2, got 1

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

[osh_.cc status] Expected 2, got 1

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

[osh status] Expected 2, got 0

stdout:
stderr: 
osh_.py21 array literal inside loop is a parse error

[osh_.py status] Expected 2, got 0

stdout:
stderr: 
osh_.cc21 array literal inside loop is a parse error

[osh_.cc status] Expected 2, got 0

stdout:
stderr: 
osh22 array literal in case

[osh status] Expected 2, got 0

stdout:
stderr: 
osh_.py22 array literal in case

[osh_.py status] Expected 2, got 0

stdout:
stderr: 
osh_.cc22 array literal in case

[osh_.cc status] Expected 2, got 0

stdout:
stderr: 
osh24 leading =word is not allowed regardless of shopt -s parse_equals

stdout:
stderr: 
  =word
  ^
[ stdin ]:1: =word isn't allowed.  Hint: either quote it or add a space after =
to pretty print an expression
osh_.py24 leading =word is not allowed regardless of shopt -s parse_equals

stdout:
stderr: 
  =word
  ^
[ stdin ]:1: =word isn't allowed.  Hint: either quote it or add a space after =
to pretty print an expression
osh_.cc24 leading =word is not allowed regardless of shopt -s parse_equals

stdout:
stderr: 
  =word
  ^
[ stdin ]:1: =word isn't allowed.  Hint: either quote it or add a space after =
to pretty print an expression