spec test index / oilshell.org
status | ysh | ysh-cpp | |
pass | 11 | 10 | |
FAIL | 3 | 4 | |
total | 14 | 14 | |
case | ysh | ysh-cpp | description |
0 | pass | pass | fastlex: NUL byte not allowed inside char literal #' ' |
1 | pass | pass | fastlex: NUL byte inside shebang line |
2 | pass | pass | Tea keywords don't interfere with YSH expressions |
3 | pass | pass | Catch AttributeError |
4 | pass | pass | Command sub paren parsing bug (#1387) |
5 | pass | pass | More Command sub paren parsing |
6 | pass | pass | don't execute empty command |
7 | FAIL | FAIL | Do && || with YSH constructs make sense/ |
details | details | ||
8 | pass | pass | shvar then replace - bug #1986 context manager crash |
9 | pass | pass | Parsing crash - bug #2003 |
10 | FAIL | FAIL | proc with IFS= read -r line - dynamic scope - issue #2012 |
details | details | ||
11 | FAIL | FAIL | func call inside proc call - error message attribution |
details | details | ||
12 | pass | pass | Crash in parsing case on EOF condition - issue #2037 |
13 | pass | FAIL | Crash due to incorrect of context manager rooting - issue #1986 |
details |
21 passed, 0 OK, 0 not implemented, 0 BUG, 3 failed, 0 timeouts, 0 cases skipped 3 failed under osh
ysh | 7 Do && || with YSH constructs make sense/ [ysh stdout] Expected '', got '(List) [42]\n(Int) 42\n(Int) 42\n' stdout: (List) [42] (Int) 42 (Int) 42stderr: |
ysh-cpp | 7 Do && || with YSH constructs make sense/ [ysh-cpp stdout] Expected '', got '(List) [42]\n(Int) 42\n(Int) 42\n' stdout: (List) [42] (Int) 42 (Int) 42stderr: |
ysh | 10 proc with IFS= read -r line - dynamic scope - issue #2012 [ysh stdout] Expected 'zz\nyy\n', got 'zz\n' [ysh status] Expected 0, got 1 stdout: zzstderr: write $line ^~~~~ [ stdin ]:8: fatal: Undefined variable 'line' echo yy | p-ifs ^~~~~ [ stdin ]:14: errexit PID 26933: command.Pipeline failed with status 1 |
ysh-cpp | 10 proc with IFS= read -r line - dynamic scope - issue #2012 [ysh-cpp stdout] Expected 'zz\nyy\n', got 'zz\n' [ysh-cpp status] Expected 0, got 1 stdout: zzstderr: write $line ^~~~~ [ stdin ]:8: fatal: Undefined variable 'line' echo yy | p-ifs ^~~~~ [ stdin ]:14: errexit PID 26940: command.Pipeline failed with status 1 |
ysh | 11 func call inside proc call - error message attribution [ysh stdout] Expected '', got ' eval (ident([1,2,3]))\n ^\n[ -c flag ]:11: fatal: Arg 1 should be a Command, got List\n' stdout: eval (ident([1,2,3])) ^ [ -c flag ]:11: fatal: Arg 1 should be a Command, got Liststderr: |
ysh-cpp | 11 func call inside proc call - error message attribution [ysh-cpp stdout] Expected '', got ' eval (ident([1,2,3]))\n ^\n[ -c flag ]:11: fatal: Arg 1 should be a Command, got List\n' stdout: eval (ident([1,2,3])) ^ [ -c flag ]:11: fatal: Arg 1 should be a Command, got Liststderr: |
ysh-cpp | 13 Crash due to incorrect of context manager rooting - issue #1986 [ysh-cpp status] Expected 0, got 1 stdout: stderr: AddressSanitizer:DEADLYSIGNAL ================================================================= ==27063==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000000 (pc 0x56264d3e74a2 bp 0x7fffc1064b10 sp 0x7fffc1064a70 T0) ==27063==The signal is caused by a READ memory access. ==27063==Hint: address points to the zero page. #0 0x56264d3e74a1 in MarkSweepHeap::MaybeMarkAndPush(RawObject*) mycpp/mark_sweep_heap.cc:135 #1 0x56264d3e7a4d in MarkSweepHeap::TraceChildren() mycpp/mark_sweep_heap.cc:188 #2 0x56264d3e84b0 in MarkSweepHeap::Collect() mycpp/mark_sweep_heap.cc:285 #3 0x56264d3e6d97 in MarkSweepHeap::MaybeCollect() mycpp/mark_sweep_heap.cc:51 #4 0x56264cee6b2f in mylib::MaybeCollect() (/home/uke/oil/_bin/cxx-asan/oils-for-unix+0x1a0b2f) #5 0x56264d05c4ec in cmd_eval::CommandEvaluator::_LeafTick() _gen/bin/oils_for_unix.mycpp.cc:36645 #6 0x56264d05d3f9 in cmd_eval::CommandEvaluator::_Dispatch(syntax_asdl::command_t*, runtime_asdl::CommandStatus*) _gen/bin/oils_for_unix.mycpp.cc:36739 #7 0x56264d05f6fc in cmd_eval::CommandEvaluator::_Execute(syntax_asdl::command_t*) _gen/bin/oils_for_unix.mycpp.cc:36948 #8 0x56264d0604ba in cmd_eval::CommandEvaluator::_ExecuteList(List<syntax_asdl::command_t*>*) _gen/bin/oils_for_unix.mycpp.cc:37013 #9 0x56264d05d87c in cmd_eval::CommandEvaluator::_Dispatch(syntax_asdl::command_t*, runtime_asdl::CommandStatus*) _gen/bin/oils_for_unix.mycpp.cc:36774 #10 0x56264d05f6fc in cmd_eval::CommandEvaluator::_Execute(syntax_asdl::command_t*) _gen/bin/oils_for_unix.mycpp.cc:36948 #11 0x56264d061d02 in cmd_eval::CommandEvaluator::EvalCommand(syntax_asdl::command_t*) _gen/bin/oils_for_unix.mycpp.cc:37176 #12 0x56264cf73680 in pure_ysh::Shvar::Run(runtime_asdl::cmd_value__Argv*) _gen/bin/oils_for_unix.mycpp.cc:19614 #13 0x56264cfb2884 in executor::ShellExecutor::RunBuiltin(int, runtime_asdl::cmd_value__Argv*) _gen/bin/oils_for_unix.mycpp.cc:23752 #14 0x56264cfb40dd in executor::ShellExecutor::RunSimpleCommand(runtime_asdl::cmd_value__Argv*, runtime_asdl::CommandStatus*, int) _gen/bin/oils_for_unix.mycpp.cc:23862 #15 0x56264d04b6e8 in cmd_eval::CommandEvaluator::_RunSimpleCommand(runtime_asdl::cmd_value_t*, runtime_asdl::CommandStatus*, int) _gen/bin/oils_for_unix.mycpp.cc:35450 #16 0x56264d05150d in cmd_eval::CommandEvaluator::_DoSimple(syntax_asdl::command__Simple*, runtime_asdl::CommandStatus*) _gen/bin/oils_for_unix.mycpp.cc:35821 #17 0x56264d05c8f1 in cmd_eval::CommandEvaluator::_Dispatch(syntax_asdl::command_t*, runtime_asdl::CommandStatus*) _gen/bin/oils_for_unix.mycpp.cc:36670 #18 0x56264d05f6fc in cmd_eval::CommandEvaluator::_Execute(syntax_asdl::command_t*) _gen/bin/oils_for_unix.mycpp.cc:36948 #19 0x56264d0604ba in cmd_eval::CommandEvaluator::_ExecuteList(List<syntax_asdl::command_t*>*) _gen/bin/oils_for_unix.mycpp.cc:37013 #20 0x56264d05d87c in cmd_eval::CommandEvaluator::_Dispatch(syntax_asdl::command_t*, runtime_asdl::CommandStatus*) _gen/bin/oils_for_unix.mycpp.cc:36774 #21 0x56264d05f6fc in cmd_eval::CommandEvaluator::_Execute(syntax_asdl::command_t*) _gen/bin/oils_for_unix.mycpp.cc:36948 #22 0x56264d0571ec in cmd_eval::CommandEvaluator::_DoForEach(syntax_asdl::command__ForEach*) _gen/bin/oils_for_unix.mycpp.cc:36284 #23 0x56264d05db81 in cmd_eval::CommandEvaluator::_Dispatch(syntax_asdl::command_t*, runtime_asdl::CommandStatus*) _gen/bin/oils_for_unix.mycpp.cc:36803 #24 0x56264d05f6fc in cmd_eval::CommandEvaluator::_Execute(syntax_asdl::command_t*) _gen/bin/oils_for_unix.mycpp.cc:36948 #25 0x56264d0604ba in cmd_eval::CommandEvaluator::_ExecuteList(List<syntax_asdl::command_t*>*) _gen/bin/oils_for_unix.mycpp.cc:37013 #26 0x56264d05d87c in cmd_eval::CommandEvaluator::_Dispatch(syntax_asdl::command_t*, runtime_asdl::CommandStatus*) _gen/bin/oils_for_unix.mycpp.cc:36774 #27 0x56264d05f6fc in cmd_eval::CommandEvaluator::_Execute(syntax_asdl::command_t*) _gen/bin/oils_for_unix.mycpp.cc:36948 #28 0x56264d0633d0 in cmd_eval::CommandEvaluator::RunProc(value_asdl::value__Proc*, runtime_asdl::cmd_value__Argv*) _gen/bin/oils_for_unix.mycpp.cc:37299 #29 0x56264cfb3cb7 in executor::ShellExecutor::RunSimpleCommand(runtime_asdl::cmd_value__Argv*, runtime_asdl::CommandStatus*, int) _gen/bin/oils_for_unix.mycpp.cc:23843 #30 0x56264d04b6e8 in cmd_eval::CommandEvaluator::_RunSimpleCommand(runtime_asdl::cmd_value_t*, runtime_asdl::CommandStatus*, int) _gen/bin/oils_for_unix.mycpp.cc:35450 #31 0x56264d05150d in cmd_eval::CommandEvaluator::_DoSimple(syntax_asdl::command__Simple*, runtime_asdl::CommandStatus*) _gen/bin/oils_for_unix.mycpp.cc:35821 #32 0x56264d05c8f1 in cmd_eval::CommandEvaluator::_Dispatch(syntax_asdl::command_t*, runtime_asdl::CommandStatus*) _gen/bin/oils_for_unix.mycpp.cc:36670 #33 0x56264d05f6fc in cmd_eval::CommandEvaluator::_Execute(syntax_asdl::command_t*) _gen/bin/oils_for_unix.mycpp.cc:36948 #34 0x56264d0604ba in cmd_eval::CommandEvaluator::_ExecuteList(List<syntax_asdl::command_t*>*) _gen/bin/oils_for_unix.mycpp.cc:37013 #35 0x56264d05d87c in cmd_eval::CommandEvaluator::_Dispatch(syntax_asdl::command_t*, runtime_asdl::CommandStatus*) _gen/bin/oils_for_unix.mycpp.cc:36774 #36 0x56264d05f6fc in cmd_eval::CommandEvaluator::_Execute(syntax_asdl::command_t*) _gen/bin/oils_for_unix.mycpp.cc:36948 #37 0x56264d0571ec in cmd_eval::CommandEvaluator::_DoForEach(syntax_asdl::command__ForEach*) _gen/bin/oils_for_unix.mycpp.cc:36284 #38 0x56264d05db81 in cmd_eval::CommandEvaluator::_Dispatch(syntax_asdl::command_t*, runtime_asdl::CommandStatus*) _gen/bin/oils_for_unix.mycpp.cc:36803 #39 0x56264d05f6fc in cmd_eval::CommandEvaluator::_Execute(syntax_asdl::command_t*) _gen/bin/oils_for_unix.mycpp.cc:36948 #40 0x56264d061450 in cmd_eval::CommandEvaluator::ExecuteAndCatch(syntax_asdl::command_t*, int) _gen/bin/oils_for_unix.mycpp.cc:37119 #41 0x56264cfbd101 in main_loop::Batch(cmd_eval::CommandEvaluator*, cmd_parse::CommandParser*, ui::ErrorFormatter*, int) _gen/bin/oils_for_unix.mycpp.cc:24508 #42 0x56264d16c67d in shell::Main(BigStr*, args::Reader*, Dict<BigStr*, BigStr*>*, bool, pyutil::_ResourceLoader*, py_readline::Readline*) _gen/bin/oils_for_unix.mycpp.cc:57548 #43 0x56264cf0b5ef in oils_for_unix::AppBundleMain(List<BigStr*>*) _gen/bin/oils_for_unix.mycpp.cc:12392 #44 0x56264cf0bc51 in oils_for_unix::main(List<BigStr*>*) _gen/bin/oils_for_unix.mycpp.cc:12428 #45 0x56264d16e7fa in main _gen/bin/oils_for_unix.mycpp.cc:57573 #46 0x7f8ec16d309a in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x2409a) #47 0x56264cee4fc9 in _start (/home/uke/oil/_bin/cxx-asan/oils-for-unix+0x19efc9) AddressSanitizer can not provide additional info. SUMMARY: AddressSanitizer: SEGV mycpp/mark_sweep_heap.cc:135 in MarkSweepHeap::MaybeMarkAndPush(RawObject*) ==27063==ABORTING |