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 =word is not allowed
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
  {ls;
  ^
[ stdin ]:2: fatal: Exiting with status 127 (command in PID 7458)
osh_.py19 interactive parse error (regression)

[osh_.py status] Expected 2, got 127

stdout:
stderr: 
  $SH $flags -i -c 'var=)'
             ^~
[ stdin ]:7: '-i' not found
osh_.cc19 interactive parse error (regression)

[osh_.cc status] Expected 2, got 127

stdout:
stderr: 
  $SH $flags -i -c 'var=)'
             ^~
[ stdin ]:7: '-i' not found
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 =word is not allowed

stdout:
stderr: 
  =word
  ^
[ stdin ]:1: =word isn't allowed when shopt 'parse_equals' is on.
Hint: add a space after = to pretty print an expression
osh_.py24 =word is not allowed

stdout:
stderr: 
  =word
  ^
[ stdin ]:1: =word isn't allowed when shopt 'parse_equals' is on.
Hint: add a space after = to pretty print an expression
osh_.cc24 =word is not allowed

stdout:
stderr: 
  =word
  ^
[ stdin ]:1: =word isn't allowed when shopt 'parse_equals' is on.
Hint: add a space after = to pretty print an expression