Results for array-compat.test.sh

casebashmkshoshosh_ALTosh-byterundescription
0pass pass pass pass pass Assignment Causes Array Decay
1pass pass FAIL FAIL FAIL Array Decay with IFS
detailsdetailsdetails
2pass pass FAIL FAIL FAIL User arrays decay
detailsdetailsdetails
3pass pass FAIL FAIL FAIL $a gives first element of array
detailsdetailsdetails
4pass pass FAIL FAIL FAIL Assign to array index without initialization
detailsdetailsdetails
5pass pass FAIL FAIL FAIL a[40] grows array
detailsdetailsdetails
6pass pass pass pass pass array decays to string when comparing with [[ a = b ]]
7pass pass FAIL FAIL FAIL Increment array variables
detailsdetailsdetails
8pass N-I pass pass pass Apply vectorized operations on ${a[*]}
details

26 passed, 0 ok, 1 known unimplemented, 0 known bugs, 6 failed, 0 skipped

Details on runs that didn't PASS

osh1 Array Decay with IFS

[osh stdout] Expected "['[x y z]']\n", got "['[ y z]']\n"

stdout:
['[ y z]']
stderr:
osh_ALT1 Array Decay with IFS

[osh_ALT stdout] Expected "['[x y z]']\n", got "['[ y z]']\n"

stdout:
['[ y z]']
stderr:
osh-byterun1 Array Decay with IFS

[osh-byterun stdout] Expected "['[x y z]']\n", got "['[ y z]']\n"

stdout:
['[ y z]']
stderr:
osh2 User arrays decay

[osh stdout] Expected "['x', 'y', 'z']\n['x y z']\n['x', 'YYY', 'z']\n", got "['x', 'y', 'z']\n"
[osh status] Expected 0, got 1

stdout:
['x', 'y', 'z']
stderr:
Unexpected error in execvpe('c[1]=YYY', ['c[1]=YYY'], ...): [Errno 2] No such file or directory
Line 8 of '<stdin>'
  argv.py "${b[@]}"
           ^~
osh failed: Can't index string with @: (Str s:'x y z')
osh_ALT2 User arrays decay

[osh_ALT stdout] Expected "['x', 'y', 'z']\n['x y z']\n['x', 'YYY', 'z']\n", got "['x', 'y', 'z']\n"
[osh_ALT status] Expected 0, got 1

stdout:
['x', 'y', 'z']
stderr:
Unexpected error in execvpe('c[1]=YYY', ['c[1]=YYY'], ...): [Errno 2] No such file or directory
Line 8 of '<stdin>'
  argv.py "${b[@]}"
           ^~
osh failed: Can't index string with @: (Str s:'x y z')
osh-byterun2 User arrays decay

[osh-byterun stdout] Expected "['x', 'y', 'z']\n['x y z']\n['x', 'YYY', 'z']\n", got "['x', 'y', 'z']\n"
[osh-byterun status] Expected 0, got 1

stdout:
['x', 'y', 'z']
stderr:
Unexpected error in execvpe('c[1]=YYY', ['c[1]=YYY'], ...): [Errno 2] No such file or directory
Line 8 of '<stdin>'
  argv.py "${b[@]}"
           ^~
osh failed: Can't index string with @: (Str s:'x y z')
osh3 $a gives first element of array

[osh stdout] Expected '1\n', got '1 2 3\n'

stdout:
1 2 3
stderr:
osh_ALT3 $a gives first element of array

[osh_ALT stdout] Expected '1\n', got '1 2 3\n'

stdout:
1 2 3
stderr:
osh-byterun3 $a gives first element of array

[osh-byterun stdout] Expected '1\n', got '1 2 3\n'

stdout:
1 2 3
stderr:
osh4 Assign to array index without initialization

[osh stdout] Expected '5 6 2\n', got '0\n'

stdout:
0
stderr:
Unexpected error in execvpe('a[5]=5', ['a[5]=5'], ...): [Errno 2] No such file or directory
Unexpected error in execvpe('a[6]=6', ['a[6]=6'], ...): [Errno 2] No such file or directory
osh_ALT4 Assign to array index without initialization

[osh_ALT stdout] Expected '5 6 2\n', got '0\n'

stdout:
0
stderr:
Unexpected error in execvpe('a[5]=5', ['a[5]=5'], ...): [Errno 2] No such file or directory
Unexpected error in execvpe('a[6]=6', ['a[6]=6'], ...): [Errno 2] No such file or directory
osh-byterun4 Assign to array index without initialization

[osh-byterun stdout] Expected '5 6 2\n', got '0\n'

stdout:
0
stderr:
Unexpected error in execvpe('a[5]=5', ['a[5]=5'], ...): [Errno 2] No such file or directory
Unexpected error in execvpe('a[6]=6', ['a[6]=6'], ...): [Errno 2] No such file or directory
osh5 a[40] grows array

[osh stdout] Expected '1 5 3 20 30 5\n', got '1 2 3 3\n'

stdout:
1 2 3 3
stderr:
Unexpected error in execvpe('a[1]=5', ['a[1]=5'], ...): [Errno 2] No such file or directory
Unexpected error in execvpe('a[40]=30', ['a[40]=30'], ...): [Errno 2] No such file or directory
Unexpected error in execvpe('a[10]=20', ['a[10]=20'], ...): [Errno 2] No such file or directory
osh_ALT5 a[40] grows array

[osh_ALT stdout] Expected '1 5 3 20 30 5\n', got '1 2 3 3\n'

stdout:
1 2 3 3
stderr:
Unexpected error in execvpe('a[1]=5', ['a[1]=5'], ...): [Errno 2] No such file or directory
Unexpected error in execvpe('a[40]=30', ['a[40]=30'], ...): [Errno 2] No such file or directory
Unexpected error in execvpe('a[10]=20', ['a[10]=20'], ...): [Errno 2] No such file or directory
osh-byterun5 a[40] grows array

[osh-byterun stdout] Expected '1 5 3 20 30 5\n', got '1 2 3 3\n'

stdout:
1 2 3 3
stderr:
Unexpected error in execvpe('a[1]=5', ['a[1]=5'], ...): [Errno 2] No such file or directory
Unexpected error in execvpe('a[40]=30', ['a[40]=30'], ...): [Errno 2] No such file or directory
Unexpected error in execvpe('a[10]=20', ['a[10]=20'], ...): [Errno 2] No such file or directory
osh7 Increment array variables

[osh stdout] Expected '2 2\n', got ''
[osh status] Expected 0, got 1

stdout:
stderr: 
Traceback (most recent call last):
  File "bin/osh", line 626, in <module>
    main(sys.argv)
  File "bin/osh", line 604, in main
    sys.exit(AppBundleMain(argv))
  File "bin/osh", line 578, in AppBundleMain
    status = OshMain(argv0, main_argv, login_shell)
  File "bin/osh", line 388, in OshMain
    status = ex.ExecuteAndRunExitTrap(node)
  File "/home/andy/git/oilshell/oil/bin/../core/cmd_exec.py", line 1240, in ExecuteAndRunExitTrap
    status = self.Execute(node)
  File "/home/andy/git/oilshell/oil/bin/../core/cmd_exec.py", line 1235, in Execute
    status, _ = self.ExecuteAndCatch(node, fork_external=fork_external)
  File "/home/andy/git/oilshell/oil/bin/../core/cmd_exec.py", line 1193, in ExecuteAndCatch
    status = self._Execute(node, fork_external=fork_external)
  File "/home/andy/git/oilshell/oil/bin/../core/cmd_exec.py", line 1165, in _Execute
    status, check_errexit = self._Dispatch(node, fork_external)
  File "/home/andy/git/oilshell/oil/bin/../core/cmd_exec.py", line 898, in _Dispatch
    status = self._ExecuteList(node.children)
  File "/home/andy/git/oilshell/oil/bin/../core/cmd_exec.py", line 1186, in _ExecuteList
    status = self._Execute(child)  # last status wins
  File "/home/andy/git/oilshell/oil/bin/../core/cmd_exec.py", line 1165, in _Execute
    status, check_errexit = self._Dispatch(node, fork_external)
  File "/home/andy/git/oilshell/oil/bin/../core/cmd_exec.py", line 771, in _Dispatch
    i = self.arith_ev.Eval(node.child)
  File "/home/andy/git/oilshell/oil/bin/../core/expr_eval.py", line 269, in Eval
    new_int = old_int + 1
TypeError: can only concatenate list (not "int") to list
osh_ALT7 Increment array variables

[osh_ALT stdout] Expected '2 2\n', got ''
[osh_ALT status] Expected 0, got 1

stdout:
stderr: 
Traceback (most recent call last):
  File "/home/andy/git/oilshell/oil/Python-2.7.13/Lib/runpy.py", line 174, in _run_module_as_main
    "__main__", fname, loader, pkg_name)
  File "/home/andy/git/oilshell/oil/Python-2.7.13/Lib/runpy.py", line 72, in _run_code
    exec code in run_globals
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 626, in <module>
    main(sys.argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 604, in main
    sys.exit(AppBundleMain(argv))
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 578, in AppBundleMain
    status = OshMain(argv0, main_argv, login_shell)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 388, in OshMain
    status = ex.ExecuteAndRunExitTrap(node)
  File "/home/andy/git/oilshell/oil/core/cmd_exec.py", line 1240, in ExecuteAndRunExitTrap
    status = self.Execute(node)
  File "/home/andy/git/oilshell/oil/core/cmd_exec.py", line 1235, in Execute
    status, _ = self.ExecuteAndCatch(node, fork_external=fork_external)
  File "/home/andy/git/oilshell/oil/core/cmd_exec.py", line 1193, in ExecuteAndCatch
    status = self._Execute(node, fork_external=fork_external)
  File "/home/andy/git/oilshell/oil/core/cmd_exec.py", line 1165, in _Execute
    status, check_errexit = self._Dispatch(node, fork_external)
  File "/home/andy/git/oilshell/oil/core/cmd_exec.py", line 1110, in _Dispatch
    print('sys\t%.3f' % sys_, file=sys.stderr)
  File "/home/andy/git/oilshell/oil/core/cmd_exec.py", line 1186, in _ExecuteList
    status = self._Execute(child)  # last status wins
  File "/home/andy/git/oilshell/oil/core/cmd_exec.py", line 1165, in _Execute
    status, check_errexit = self._Dispatch(node, fork_external)
  File "/home/andy/git/oilshell/oil/core/cmd_exec.py", line 1110, in _Dispatch
    print('sys\t%.3f' % sys_, file=sys.stderr)
  File "/home/andy/git/oilshell/oil/core/expr_eval.py", line 269, in Eval
    new_int = old_int + 1
TypeError: can only concatenate list (not "int") to list
FATAL: couldn't import from app bundle '_tmp/oil-tar-test/oil-0.6.pre1/_bin/osh' (1)
Stripping the oil.ovm binary may cause this error.
See https://github.com/oilshell/oil/issues/47
osh-byterun7 Increment array variables

[osh-byterun stdout] Expected '2 2\n', got ''
[osh-byterun status] Expected 0, got 1

stdout:
stderr: 
Traceback (most recent call last):
  File "/home/andy/git/oilshell/oil/bin/opy_.py", line 88, in <module>
    main(sys.argv)
  File "/home/andy/git/oilshell/oil/bin/opy_.py", line 72, in main
    sys.exit(AppBundleMain(argv))
  File "/home/andy/git/oilshell/oil/bin/opy_.py", line 64, in AppBundleMain
    return opy_main.OpyCommandMain(main_argv)
  File "/home/andy/git/oilshell/oil/opy/opy_main.py", line 351, in OpyCommandMain
    num_ticks = ovm.run_code_object(co, opy_argv)
  File "/home/andy/git/oilshell/oil/opy/byterun/execfile.py", line 36, in run_code_object
    pyvm2.run_code(vm, code, f_globals=main_mod.__dict__)
  File "/home/andy/git/oilshell/oil/opy/byterun/pyvm2.py", line 88, in run_code
    val = vm.run_frame(frame)
  File "/home/andy/git/oilshell/oil/opy/byterun/pyvm2.py", line 327, in run_frame
    raise exctype, value, tb
TypeError: can only concatenate list (not "int") to list
mksh8 Apply vectorized operations on ${a[*]}

stdout:
stderr: 
_tmp/spec-bin/mksh: <stdin>[2]: ${a[*]#-}: bad substitution