Results for ysh-options.test.sh

statusosh
pass 30
FAIL 8
total38
caseoshdescription
0FAIL simple_word_eval doesn't split, glob, or elide empty
details
1FAIL simple_word_eval and strict_array conflict over globs
details
2FAIL simple_word_eval and glob
details
3pass parse_at
4FAIL DISABLED: parse_at can't be used outside top level
details
5pass sourcing a file that sets parse_at
6pass parse_at can be specified through sh -O
7FAIL @a splices into $0
details
8pass shopt -s strict:all
9pass shopt -s ysh:upgrade
10pass osh -O oil:upgrade
11pass osh -O errexit: use -O everywhere, even for Bourne options
12pass osh -O invalid
13pass osh -o new_option is also accepted
14pass oil:upgrade includes inherit_errexit
15pass parse_brace: bad block to assignment builtin
16pass parse_brace: bad block to external program
17pass parse_brace: cd { } in pipeline
18pass parse_brace: if accepts blocks
19pass parse_brace: brace group in if condition
20pass parse_brace: while/until
21pass parse_brace: for-in loop
22pass parse_brace case
23pass parse_paren: if statement
24pass parse_paren: while statement
25pass while subshell without parse_paren
26pass nullglob is on with oil:upgrade
27pass nullglob is on with oil:all
28pass shopt -s simple_echo
29pass shopt -s dashglob
30pass shopt -s oil:upgrade turns some options on and others off
31FAIL sigpipe_status_ok
details
32pass printf | head regression (sigpipe_status_ok)
33FAIL redefine_proc is on in interactive shell
details
34FAIL redefine_source is on in interactive shell
details
35pass parse options in sourced file (bug #1628)
36pass expand_aliases turned off only in ysh:all
37pass [[ isn't allowed in ysh
30 passed, 0 OK, 0 not implemented, 0 BUG, 8 failed, 0 timeouts, 0 cases skipped
8 failed under osh

Details on runs that didn't PASS

osh0 simple_word_eval doesn't split, glob, or elide empty

[osh stdout] Expected "['a', 'b', 'bar.z', 'foo.z', 'spam.z', 'spam.z']\n['-x y', 'z-']\n['a b', '*.z', '', 'spam.z']\n['-x y', 'z-']\n" Got "['a', 'b', 'bar.z', 'foo.z', 'spam.z', 'spam.z']\n"
[osh status] Expected 0, got 1
[osh stderr] Found 'Traceback (most recent'

stdout:
['a', 'b', 'bar.z', 'foo.z', 'spam.z', 'spam.z']
stderr:
Traceback (most recent call last):
  File "/home/uke/oil/bin/oils_for_unix.py", line 202, in <module>
    sys.exit(main(sys.argv))
  File "/home/uke/oil/bin/oils_for_unix.py", line 171, in main
    return AppBundleMain(argv)
  File "/home/uke/oil/bin/oils_for_unix.py", line 141, in AppBundleMain
    return shell.Main('osh', arg_r, environ, login_shell, loader, readline)
  File "/home/uke/oil/core/shell.py", line 1253, in Main
    cmd_flags=cmd_eval.IsMainProgram)
  File "/home/uke/oil/core/main_loop.py", line 336, in Batch
    was_parsed, status = Batch2(cmd_ev, c_parser, errfmt, cmd_flags=cmd_flags)
  File "/home/uke/oil/core/main_loop.py", line 401, in Batch2
    is_return, is_fatal = cmd_ev.ExecuteAndCatch(node, cmd_flags)
  File "/home/uke/oil/osh/cmd_eval.py", line 2175, in ExecuteAndCatch
    status = self._Execute(node)
  File "/home/uke/oil/osh/cmd_eval.py", line 1974, in _Execute
    status = self._Dispatch(node, cmd_st)
  File "/home/uke/oil/osh/cmd_eval.py", line 1861, in _Dispatch
    status = self._DoForEach(node)
  File "/home/uke/oil/osh/cmd_eval.py", line 1393, in _DoForEach
    status = self._Execute(node.body)  # last one wins
  File "/home/uke/oil/osh/cmd_eval.py", line 1974, in _Execute
    status = self._Dispatch(node, cmd_st)
  File "/home/uke/oil/osh/cmd_eval.py", line 1816, in _Dispatch
    status = self._ExecuteList(node.children)
  File "/home/uke/oil/osh/cmd_eval.py", line 2051, in _ExecuteList
    status = self._Execute(child)
  File "/home/uke/oil/osh/cmd_eval.py", line 1974, in _Execute
    status = self._Dispatch(node, cmd_st)
  File "/home/uke/oil/osh/cmd_eval.py", line 1701, in _Dispatch
    status = self._DoSimple(node, cmd_st)
  File "/home/uke/oil/osh/cmd_eval.py", line 904, in _DoSimple
    allow_assign=True)
  File "/home/uke/oil/osh/word_eval.py", line 2566, in EvalWordSequence2
    self._EvalWordToParts(w, part_vals, EXTGLOB_FILES)
  File "/home/uke/oil/osh/word_eval.py", line 2048, in _EvalWordToParts
    self._EvalWordPart(p, word_part_vals, eval_flags)
  File "/home/uke/oil/osh/word_eval.py", line 1932, in _EvalWordPart
    self._EvalDoubleQuoted(part.parts, part_vals)
  File "/home/uke/oil/osh/word_eval.py", line 1453, in _EvalDoubleQuoted
    self._EvalWordPart(p, part_vals, QUOTED)
  File "/home/uke/oil/osh/word_eval.py", line 1952, in _EvalWordPart
    self._EvalSimpleVarSub(part, part_vals, quoted)
  File "/home/uke/oil/osh/word_eval.py", line 1827, in _EvalSimpleVarSub
    v = _ValueToPartValue(val, quoted, part)
  File "/home/uke/oil/osh/word_eval.py", line 231, in _ValueToPartValue
    bash_impl.InternalStringArray_GetValues(val), quoted)
NameError: global name 'bash_impl' is not defined
osh1 simple_word_eval and strict_array conflict over globs

[osh stdout] Expected "['foo.txt']\n['foo.txt']\n", got ''
[osh stderr] Found 'Traceback (most recent'

stdout:
stderr: 
Traceback (most recent call last):
  File "/home/uke/oil/bin/oils_for_unix.py", line 202, in <module>
    sys.exit(main(sys.argv))
  File "/home/uke/oil/bin/oils_for_unix.py", line 171, in main
    return AppBundleMain(argv)
  File "/home/uke/oil/bin/oils_for_unix.py", line 141, in AppBundleMain
    return shell.Main('osh', arg_r, environ, login_shell, loader, readline)
  File "/home/uke/oil/core/shell.py", line 1253, in Main
    cmd_flags=cmd_eval.IsMainProgram)
  File "/home/uke/oil/core/main_loop.py", line 336, in Batch
    was_parsed, status = Batch2(cmd_ev, c_parser, errfmt, cmd_flags=cmd_flags)
  File "/home/uke/oil/core/main_loop.py", line 401, in Batch2
    is_return, is_fatal = cmd_ev.ExecuteAndCatch(node, cmd_flags)
  File "/home/uke/oil/osh/cmd_eval.py", line 2175, in ExecuteAndCatch
    status = self._Execute(node)
  File "/home/uke/oil/osh/cmd_eval.py", line 1974, in _Execute
    status = self._Dispatch(node, cmd_st)
  File "/home/uke/oil/osh/cmd_eval.py", line 1701, in _Dispatch
    status = self._DoSimple(node, cmd_st)
  File "/home/uke/oil/osh/cmd_eval.py", line 904, in _DoSimple
    allow_assign=True)
  File "/home/uke/oil/osh/word_eval.py", line 2566, in EvalWordSequence2
    self._EvalWordToParts(w, part_vals, EXTGLOB_FILES)
  File "/home/uke/oil/osh/word_eval.py", line 2048, in _EvalWordToParts
    self._EvalWordPart(p, word_part_vals, eval_flags)
  File "/home/uke/oil/osh/word_eval.py", line 1932, in _EvalWordPart
    self._EvalDoubleQuoted(part.parts, part_vals)
  File "/home/uke/oil/osh/word_eval.py", line 1453, in _EvalDoubleQuoted
    self._EvalWordPart(p, part_vals, QUOTED)
  File "/home/uke/oil/osh/word_eval.py", line 1952, in _EvalWordPart
    self._EvalSimpleVarSub(part, part_vals, quoted)
  File "/home/uke/oil/osh/word_eval.py", line 1827, in _EvalSimpleVarSub
    v = _ValueToPartValue(val, quoted, part)
  File "/home/uke/oil/osh/word_eval.py", line 231, in _ValueToPartValue
    bash_impl.InternalStringArray_GetValues(val), quoted)
NameError: global name 'bash_impl' is not defined
osh2 simple_word_eval and glob

[osh stdout] Expected '1.ff\n2.ff\n1.ff 2.ff\n1.ff 2.ff\n', got '1.ff\n2.ff\n'
[osh status] Expected 0, got 1
[osh stderr] Found 'Traceback (most recent'

stdout:
1.ff
2.ff
stderr:
Traceback (most recent call last):
  File "/home/uke/oil/bin/oils_for_unix.py", line 202, in <module>
    sys.exit(main(sys.argv))
  File "/home/uke/oil/bin/oils_for_unix.py", line 171, in main
    return AppBundleMain(argv)
  File "/home/uke/oil/bin/oils_for_unix.py", line 141, in AppBundleMain
    return shell.Main('osh', arg_r, environ, login_shell, loader, readline)
  File "/home/uke/oil/core/shell.py", line 1253, in Main
    cmd_flags=cmd_eval.IsMainProgram)
  File "/home/uke/oil/core/main_loop.py", line 336, in Batch
    was_parsed, status = Batch2(cmd_ev, c_parser, errfmt, cmd_flags=cmd_flags)
  File "/home/uke/oil/core/main_loop.py", line 401, in Batch2
    is_return, is_fatal = cmd_ev.ExecuteAndCatch(node, cmd_flags)
  File "/home/uke/oil/osh/cmd_eval.py", line 2175, in ExecuteAndCatch
    status = self._Execute(node)
  File "/home/uke/oil/osh/cmd_eval.py", line 1974, in _Execute
    status = self._Dispatch(node, cmd_st)
  File "/home/uke/oil/osh/cmd_eval.py", line 1701, in _Dispatch
    status = self._DoSimple(node, cmd_st)
  File "/home/uke/oil/osh/cmd_eval.py", line 904, in _DoSimple
    allow_assign=True)
  File "/home/uke/oil/osh/word_eval.py", line 2519, in EvalWordSequence2
    allow_assign)
  File "/home/uke/oil/osh/word_eval.py", line 2480, in SimpleEvalWordSequence2
    self._EvalWordToParts(w, part_vals, 0)  # not quoted
  File "/home/uke/oil/osh/word_eval.py", line 2048, in _EvalWordToParts
    self._EvalWordPart(p, word_part_vals, eval_flags)
  File "/home/uke/oil/osh/word_eval.py", line 1932, in _EvalWordPart
    self._EvalDoubleQuoted(part.parts, part_vals)
  File "/home/uke/oil/osh/word_eval.py", line 1453, in _EvalDoubleQuoted
    self._EvalWordPart(p, part_vals, QUOTED)
  File "/home/uke/oil/osh/word_eval.py", line 1956, in _EvalWordPart
    self._EvalBracedVarSub(part, part_vals, quoted)
  File "/home/uke/oil/osh/word_eval.py", line 1750, in _EvalBracedVarSub
    part_val = _ValueToPartValue(val, quoted or quoted2, part)
  File "/home/uke/oil/osh/word_eval.py", line 235, in _ValueToPartValue
    return part_value.Array(bash_impl.BashArray_GetValues(val), quoted)
NameError: global name 'bash_impl' is not defined
osh4 DISABLED: parse_at can't be used outside top level

[osh stdout] Expected u'', got 'status=0\nshould not get here\n'
[osh status] Expected 1, got 0

stdout:
status=0
should not get here
stderr:
osh7 @a splices into $0

[osh stdout] Expected 'hi\nhi\nhi\nhi\n', got ''
[osh status] Expected 0, got 1
[osh stderr] Found 'Traceback (most recent'

stdout:
stderr: 
Traceback (most recent call last):
  File "/home/uke/oil/bin/oils_for_unix.py", line 202, in <module>
    sys.exit(main(sys.argv))
  File "/home/uke/oil/bin/oils_for_unix.py", line 171, in main
    return AppBundleMain(argv)
  File "/home/uke/oil/bin/oils_for_unix.py", line 141, in AppBundleMain
    return shell.Main('osh', arg_r, environ, login_shell, loader, readline)
  File "/home/uke/oil/core/shell.py", line 1253, in Main
    cmd_flags=cmd_eval.IsMainProgram)
  File "/home/uke/oil/core/main_loop.py", line 336, in Batch
    was_parsed, status = Batch2(cmd_ev, c_parser, errfmt, cmd_flags=cmd_flags)
  File "/home/uke/oil/core/main_loop.py", line 401, in Batch2
    is_return, is_fatal = cmd_ev.ExecuteAndCatch(node, cmd_flags)
  File "/home/uke/oil/osh/cmd_eval.py", line 2175, in ExecuteAndCatch
    status = self._Execute(node)
  File "/home/uke/oil/osh/cmd_eval.py", line 1974, in _Execute
    status = self._Dispatch(node, cmd_st)
  File "/home/uke/oil/osh/cmd_eval.py", line 1701, in _Dispatch
    status = self._DoSimple(node, cmd_st)
  File "/home/uke/oil/osh/cmd_eval.py", line 904, in _DoSimple
    allow_assign=True)
  File "/home/uke/oil/osh/word_eval.py", line 2519, in EvalWordSequence2
    allow_assign)
  File "/home/uke/oil/osh/word_eval.py", line 2455, in SimpleEvalWordSequence2
    strs0 = self._EvalWordToArgv(w)
  File "/home/uke/oil/osh/word_eval.py", line 2331, in _EvalWordToArgv
    self._EvalWordToParts(w, part_vals, 0)  # not double quoted
  File "/home/uke/oil/osh/word_eval.py", line 2048, in _EvalWordToParts
    self._EvalWordPart(p, word_part_vals, eval_flags)
  File "/home/uke/oil/osh/word_eval.py", line 1932, in _EvalWordPart
    self._EvalDoubleQuoted(part.parts, part_vals)
  File "/home/uke/oil/osh/word_eval.py", line 1453, in _EvalDoubleQuoted
    self._EvalWordPart(p, part_vals, QUOTED)
  File "/home/uke/oil/osh/word_eval.py", line 1956, in _EvalWordPart
    self._EvalBracedVarSub(part, part_vals, quoted)
  File "/home/uke/oil/osh/word_eval.py", line 1750, in _EvalBracedVarSub
    part_val = _ValueToPartValue(val, quoted or quoted2, part)
  File "/home/uke/oil/osh/word_eval.py", line 235, in _ValueToPartValue
    return part_value.Array(bash_impl.BashArray_GetValues(val), quoted)
NameError: global name 'bash_impl' is not defined
osh31 sigpipe_status_ok

[osh stdout] Expected 'y\n141 0\n141 141\ny\n0 0\n0 141\nbackground\nstatus=0 pipestatus=0 141\n' Got 'y\n'
[osh status] Expected 0, got 1
[osh stderr] Found 'Traceback (most recent'

stdout:
y
stderr:
Traceback (most recent call last):
  File "/home/uke/oil/bin/oils_for_unix.py", line 202, in <module>
    sys.exit(main(sys.argv))
  File "/home/uke/oil/bin/oils_for_unix.py", line 171, in main
    return AppBundleMain(argv)
  File "/home/uke/oil/bin/oils_for_unix.py", line 141, in AppBundleMain
    return shell.Main('osh', arg_r, environ, login_shell, loader, readline)
  File "/home/uke/oil/core/shell.py", line 1253, in Main
    cmd_flags=cmd_eval.IsMainProgram)
  File "/home/uke/oil/core/main_loop.py", line 336, in Batch
    was_parsed, status = Batch2(cmd_ev, c_parser, errfmt, cmd_flags=cmd_flags)
  File "/home/uke/oil/core/main_loop.py", line 401, in Batch2
    is_return, is_fatal = cmd_ev.ExecuteAndCatch(node, cmd_flags)
  File "/home/uke/oil/osh/cmd_eval.py", line 2175, in ExecuteAndCatch
    status = self._Execute(node)
  File "/home/uke/oil/osh/cmd_eval.py", line 1974, in _Execute
    status = self._Dispatch(node, cmd_st)
  File "/home/uke/oil/osh/cmd_eval.py", line 1701, in _Dispatch
    status = self._DoSimple(node, cmd_st)
  File "/home/uke/oil/osh/cmd_eval.py", line 904, in _DoSimple
    allow_assign=True)
  File "/home/uke/oil/osh/word_eval.py", line 2566, in EvalWordSequence2
    self._EvalWordToParts(w, part_vals, EXTGLOB_FILES)
  File "/home/uke/oil/osh/word_eval.py", line 2048, in _EvalWordToParts
    self._EvalWordPart(p, word_part_vals, eval_flags)
  File "/home/uke/oil/osh/word_eval.py", line 1956, in _EvalWordPart
    self._EvalBracedVarSub(part, part_vals, quoted)
  File "/home/uke/oil/osh/word_eval.py", line 1750, in _EvalBracedVarSub
    part_val = _ValueToPartValue(val, quoted or quoted2, part)
  File "/home/uke/oil/osh/word_eval.py", line 231, in _ValueToPartValue
    bash_impl.InternalStringArray_GetValues(val), quoted)
NameError: global name 'bash_impl' is not defined
osh33 redefine_proc is on in interactive shell

[osh stderr] Expected 'hi\n', got 'Traceback (most recent call last):\n File "/home/uke/oil/bin/oils_for_unix.py", line 202, in <module>\n sys.exit(main(sys.argv))\n File "/home/uke/oil/bin/oils_for_unix.py", line 171, in main\n return AppBundleMain(argv)\n File "/home/uke/oil/bin/oils_for_unix.py", line 141, in AppBundleMain\n return shell.Main(\'osh\', arg_r, environ, login_shell, loader, readline)\n File "/home/uke/oil/core/shell.py", line 1173, in Main\n prompt_plugin, waiter, errfmt)\n File "/home/uke/oil/core/main_loop.py", line 280, in Interactive\n is_return, _ = cmd_ev.ExecuteAndCatch(node, 0)\n File "/home/uke/oil/osh/cmd_eval.py", line 2175, in ExecuteAndCatch\n status = self._Execute(node)\n File "/home/uke/oil/osh/cmd_eval.py", line 1974, in _Execute\n status = self._Dispatch(node, cmd_st)\n File "/home/uke/oil/osh/cmd_eval.py", line 1701, in _Dispatch\n status = self._DoSimple(node, cmd_st)\n File "/home/uke/oil/osh/cmd_eval.py", line 959, in _DoSimple\n status = self._RunSimpleCommand(cmd_val, cmd_st, run_flags)\n File "/home/uke/oil/osh/cmd_eval.py", line 594, in _RunSimpleCommand\n run_flags)\n File "/home/uke/oil/core/vm.py", line 224, in RunSimpleCommand\n run_flags)\n File "/home/uke/oil/core/executor.py", line 420, in _RunSimpleCommand\n cmd_val)\n File "/home/uke/oil/core/vm.py", line 302, in _RunInvokable\n status = self.cmd_ev.RunProc(proc, cmd_val)\n File "/home/uke/oil/osh/cmd_eval.py", line 2389, in RunProc\n status = self._Execute(proc.body)\n File "/home/uke/oil/osh/cmd_eval.py", line 1974, in _Execute\n status = self._Dispatch(node, cmd_st)\n File "/home/uke/oil/osh/cmd_eval.py", line 1820, in _Dispatch\n status = self._ExecuteList(node.children)\n File "/home/uke/oil/osh/cmd_eval.py", line 2051, in _ExecuteList\n status = self._Execute(child)\n File "/home/uke/oil/osh/cmd_eval.py", line 1974, in _Execute\n status = self._Dispatch(node, cmd_st)\n File "/home/uke/oil/osh/cmd_eval.py", line 1875, in _Dispatch\n status = self._DoRedirect(node, cmd_st)\n File "/home/uke/oil/osh/cmd_eval.py", line 1648, in _DoRedirect\n status = self._Execute(node.child)\n File "/home/uke/oil/osh/cmd_eval.py", line 1974, in _Execute\n status = self._Dispatch(node, cmd_st)\n File "/home/uke/oil/osh/cmd_eval.py", line 1701, in _Dispatch\n status = self._DoSimple(node, cmd_st)\n File "/home/uke/oil/osh/cmd_eval.py", line 904, in _DoSimple\n allow_assign=True)\n File "/home/uke/oil/osh/word_eval.py", line 2519, in EvalWordSequence2\n allow_assign)\n File "/home/uke/oil/osh/word_eval.py", line 2480, in SimpleEvalWordSequence2\n self._EvalWordToParts(w, part_vals, 0) # not quoted\n File "/home/uke/oil/osh/word_eval.py", line 2048, in _EvalWordToParts\n self._EvalWordPart(p, word_part_vals, eval_flags)\n File "/home/uke/oil/osh/word_eval.py", line 1932, in _EvalWordPart\n self._EvalDoubleQuoted(part.parts, part_vals)\n File "/home/uke/oil/osh/word_eval.py", line 1453, in _EvalDoubleQuoted\n self._EvalWordPart(p, part_vals, QUOTED)\n File "/home/uke/oil/osh/word_eval.py", line 1952, in _EvalWordPart\n self._EvalSimpleVarSub(part, part_vals, quoted)\n File "/home/uke/oil/osh/word_eval.py", line 1827, in _EvalSimpleVarSub\n v = _ValueToPartValue(val, quoted, part)\n File "/home/uke/oil/osh/word_eval.py", line 231, in _ValueToPartValue\n bash_impl.InternalStringArray_GetValues(val), quoted)\nNameError: global name \'bash_impl\' is not defined\n'
[osh status] Expected 0, got 1
[osh stderr] Found 'Traceback (most recent'

stdout:
common
redefinition
stderr:
Traceback (most recent call last):
  File "/home/uke/oil/bin/oils_for_unix.py", line 202, in <module>
    sys.exit(main(sys.argv))
  File "/home/uke/oil/bin/oils_for_unix.py", line 171, in main
    return AppBundleMain(argv)
  File "/home/uke/oil/bin/oils_for_unix.py", line 141, in AppBundleMain
    return shell.Main('osh', arg_r, environ, login_shell, loader, readline)
  File "/home/uke/oil/core/shell.py", line 1173, in Main
    prompt_plugin, waiter, errfmt)
  File "/home/uke/oil/core/main_loop.py", line 280, in Interactive
    is_return, _ = cmd_ev.ExecuteAndCatch(node, 0)
  File "/home/uke/oil/osh/cmd_eval.py", line 2175, in ExecuteAndCatch
    status = self._Execute(node)
  File "/home/uke/oil/osh/cmd_eval.py", line 1974, in _Execute
    status = self._Dispatch(node, cmd_st)
  File "/home/uke/oil/osh/cmd_eval.py", line 1701, in _Dispatch
    status = self._DoSimple(node, cmd_st)
  File "/home/uke/oil/osh/cmd_eval.py", line 959, in _DoSimple
    status = self._RunSimpleCommand(cmd_val, cmd_st, run_flags)
  File "/home/uke/oil/osh/cmd_eval.py", line 594, in _RunSimpleCommand
    run_flags)
  File "/home/uke/oil/core/vm.py", line 224, in RunSimpleCommand
    run_flags)
  File "/home/uke/oil/core/executor.py", line 420, in _RunSimpleCommand
    cmd_val)
  File "/home/uke/oil/core/vm.py", line 302, in _RunInvokable
    status = self.cmd_ev.RunProc(proc, cmd_val)
  File "/home/uke/oil/osh/cmd_eval.py", line 2389, in RunProc
    status = self._Execute(proc.body)
  File "/home/uke/oil/osh/cmd_eval.py", line 1974, in _Execute
    status = self._Dispatch(node, cmd_st)
  File "/home/uke/oil/osh/cmd_eval.py", line 1820, in _Dispatch
    status = self._ExecuteList(node.children)
  File "/home/uke/oil/osh/cmd_eval.py", line 2051, in _ExecuteList
    status = self._Execute(child)
  File "/home/uke/oil/osh/cmd_eval.py", line 1974, in _Execute
    status = self._Dispatch(node, cmd_st)
  File "/home/uke/oil/osh/cmd_eval.py", line 1875, in _Dispatch
    status = self._DoRedirect(node, cmd_st)
  File "/home/uke/oil/osh/cmd_eval.py", line 1648, in _DoRedirect
    status = self._Execute(node.child)
  File "/home/uke/oil/osh/cmd_eval.py", line 1974, in _Execute
    status = self._Dispatch(node, cmd_st)
  File "/home/uke/oil/osh/cmd_eval.py", line 1701, in _Dispatch
    status = self._DoSimple(node, cmd_st)
  File "/home/uke/oil/osh/cmd_eval.py", line 904, in _DoSimple
    allow_assign=True)
  File "/home/uke/oil/osh/word_eval.py", line 2519, in EvalWordSequence2
    allow_assign)
  File "/home/uke/oil/osh/word_eval.py", line 2480, in SimpleEvalWordSequence2
    self._EvalWordToParts(w, part_vals, 0)  # not quoted
  File "/home/uke/oil/osh/word_eval.py", line 2048, in _EvalWordToParts
    self._EvalWordPart(p, word_part_vals, eval_flags)
  File "/home/uke/oil/osh/word_eval.py", line 1932, in _EvalWordPart
    self._EvalDoubleQuoted(part.parts, part_vals)
  File "/home/uke/oil/osh/word_eval.py", line 1453, in _EvalDoubleQuoted
    self._EvalWordPart(p, part_vals, QUOTED)
  File "/home/uke/oil/osh/word_eval.py", line 1952, in _EvalWordPart
    self._EvalSimpleVarSub(part, part_vals, quoted)
  File "/home/uke/oil/osh/word_eval.py", line 1827, in _EvalSimpleVarSub
    v = _ValueToPartValue(val, quoted, part)
  File "/home/uke/oil/osh/word_eval.py", line 231, in _ValueToPartValue
    bash_impl.InternalStringArray_GetValues(val), quoted)
NameError: global name 'bash_impl' is not defined
osh34 redefine_source is on in interactive shell

[osh stdout] Expected 'common\ncommon\nstatus=0\n2 stderr.txt\n', got 'common\ncommon\nstatus=1\n65 stderr.txt\n'

stdout:
common
common
status=1
65 stderr.txt
stderr: