Results for bugs.test.sh

statusoshosh-cpp
pass 2627
ok 11
FAIL 10
total2828
caseoshosh-cppdescription
0pass pass echo keyword
1pass pass if/else
2pass pass Turn an array into an integer.
3pass pass assign readonly -- one line
4pass pass assign readonly -- multiple lines
5pass pass assign readonly -- multiple lines -- set -o posix
6pass pass unset readonly -- one line
7pass pass unset readonly -- multiple lines
8pass pass First word like foo$x() and foo$[1+2] (regression)
9pass pass Function names
10ok ok file with NUL byte
detailsdetails
11pass pass fastlex: PS1 format string that's incomplete / with NUL byte
12pass pass 'echo' and printf fail on writing to full disk
13pass pass other builtins fail on writing to full disk
14pass pass subshell while running a script (regression)
15pass pass for loop (issue #1446)
16pass pass for loop 2 (issue #1446)
17FAIL pass autoconf word split (#1449)
details
18pass pass autoconf arithmetic - relaxed eval_unsafe_arith (#1450)
19pass pass command execution $(echo 42 | tee PWNED) not allowed
20pass pass process sub <(echo 42 | tee PWNED) not allowed
21pass pass unset doesn't allow command execution
22pass pass printf integer size bug
23pass pass (( status bug
24pass pass autotools as_fn_arith bug in configure
25pass pass OSH can use ARGV name
26pass pass Crash in {1..10} - issue #2296
27pass pass Crash after changing $[] to be alias of $(( ))
53 passed, 2 OK, 0 not implemented, 0 BUG, 1 failed, 0 timeouts, 0 cases skipped
1 failed under osh

Details on runs that didn't PASS

osh10 file with NUL byte

stdout:
one
stderr:
osh-cpp10 file with NUL byte

stdout:
one
stderr:
osh17 autoconf word split (#1449)

[osh stdout] Expected '--- $()\n[-n]\n[my sed command]\n[f1]\n[f2]\n--- backticks\n[-n]\n[my sed command]\n[f1]\n[f2]\nNOT SPLIT\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 263, in <module>
    sys.exit(main(sys.argv))
  File "/home/uke/oil/bin/oils_for_unix.py", line 232, in main
    return AppBundleMain(argv)
  File "/home/uke/oil/bin/oils_for_unix.py", line 198, in AppBundleMain
    bash_compat=(applet == 'bash'))
  File "/home/uke/oil/core/shell.py", line 1296, 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 375, in Batch2
    node = c_parser.ParseLogicalLine()  # can raise ParseError
  File "/home/uke/oil/osh/cmd_parse.py", line 2836, in ParseLogicalLine
    self._GetWord()
  File "/home/uke/oil/osh/cmd_parse.py", line 670, in _GetWord
    w = self.w_parser.ReadWord(self.next_lex_mode)
  File "/home/uke/oil/osh/word_parse.py", line 2334, in ReadWord
    w = self._ReadWord(word_mode)
  File "/home/uke/oil/osh/word_parse.py", line 2251, in _ReadWord
    return self._ReadCompoundOrRedir(lex_mode)
  File "/home/uke/oil/osh/word_parse.py", line 1899, in _ReadCompoundOrRedir
    return self._ReadCompoundOrRedir3(lex_mode, Id.Undefined_Tok, True)
  File "/home/uke/oil/osh/word_parse.py", line 2004, in _ReadCompoundOrRedir3
    part = self._ReadUnquotedLeftParts(is_triple_quoted)
  File "/home/uke/oil/osh/word_parse.py", line 962, in _ReadUnquotedLeftParts
    return self._ReadCommandSub(self.token_type, d_quoted=False)
  File "/home/uke/oil/osh/word_parse.py", line 1234, in _ReadCommandSub
    node = c_parser.ParseCommandSub()
  File "/home/uke/oil/osh/cmd_parse.py", line 2873, in ParseCommandSub
    c_list = self._ParseCommandTerm()
  File "/home/uke/oil/osh/cmd_parse.py", line 2760, in _ParseCommandTerm
    child = self.ParseAndOr()
  File "/home/uke/oil/osh/cmd_parse.py", line 2619, in ParseAndOr
    return self._ParseAndOr()
  File "/home/uke/oil/osh/cmd_parse.py", line 2630, in _ParseAndOr
    child = self.ParsePipeline()
  File "/home/uke/oil/osh/cmd_parse.py", line 2578, in ParsePipeline
    child = self.ParseCommand()
  File "/home/uke/oil/osh/cmd_parse.py", line 2554, in ParseCommand
    return self.ParseSimpleCommand()
  File "/home/uke/oil/osh/cmd_parse.py", line 1222, in ParseSimpleCommand
    redirects, words, typed_args, block = self._ScanSimpleCommand()
  File "/home/uke/oil/osh/cmd_parse.py", line 904, in _ScanSimpleCommand
    self._GetWord()
  File "/home/uke/oil/osh/cmd_parse.py", line 670, in _GetWord
    w = self.w_parser.ReadWord(self.next_lex_mode)
  File "/home/uke/oil/osh/word_parse.py", line 2334, in ReadWord
    w = self._ReadWord(word_mode)
  File "/home/uke/oil/osh/word_parse.py", line 2251, in _ReadWord
    return self._ReadCompoundOrRedir(lex_mode)
  File "/home/uke/oil/osh/word_parse.py", line 1899, in _ReadCompoundOrRedir
    return self._ReadCompoundOrRedir3(lex_mode, Id.Undefined_Tok, True)
  File "/home/uke/oil/osh/word_parse.py", line 2004, in _ReadCompoundOrRedir3
    part = self._ReadUnquotedLeftParts(is_triple_quoted)
  File "/home/uke/oil/osh/word_parse.py", line 910, in _ReadUnquotedLeftParts
    dq_part = self._ReadDoubleQuoted(self.cur_token)
  File "/home/uke/oil/osh/word_parse.py", line 1196, in _ReadDoubleQuoted
    self._ReadLikeDQ(left_token, False, parts)
  File "/home/uke/oil/osh/word_parse.py", line 1107, in _ReadLikeDQ
    tok, "\"")
UnboundLocalError: local variable 'tok' referenced before assignment