Results for ysh-bugs.test.sh

statusyshysh-cpp
pass 54
FAIL 12
total66
caseyshysh-cppdescription
0pass pass fastlex: NUL byte not allowed inside char literal #' '
1pass pass fastlex: NUL byte inside shebang line
2FAIL FAIL Tea keywords don't interfere with Oil expressions
detailsdetails
3pass pass Catch AttributeError
4pass FAIL Command sub paren parsing bug (#1387)
details
5pass pass More Command sub paren parsing
9 passed, 0 OK, 0 not implemented, 0 BUG, 3 failed, 0 timeouts, 0 cases skipped
1 failed under osh

Details on runs that didn't PASS

ysh2 Tea keywords don't interfere with Oil expressions

[ysh stdout] Expected 'foo\n6\n', got ''
[ysh status] Expected 0, got 3

stdout:
stderr: 
  echo $[d->data]
            ^~~~
[ stdin ]:3: fatal: Method 'data' does not exist on 10
ysh-cpp2 Tea keywords don't interfere with Oil expressions

[ysh-cpp stdout] Expected 'foo\n6\n', got ''
[ysh-cpp status] Expected 0, got 1

stdout:
stderr: 
ASAN:DEADLYSIGNAL
=================================================================
==27385==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000002 (pc 0x558a98e8c154 bp 0x7ffef8a9d900 sp 0x7ffef8a9d450 T0)
==27385==The signal is caused by a READ memory access.
==27385==Hint: address points to the zero page.
    #0 0x558a98e8c153 in _StrFormat mycpp/gc_str.cc:591
    #1 0x558a98e8cbf2 in StrFormat(char const*, ...) mycpp/gc_str.cc:640
    #2 0x558a98cbbf40 in expr_eval::OilEvaluator::_EvalAttribute(syntax_asdl::Attribute*) _gen/bin/oils_for_unix.mycpp.cc:40015
    #3 0x558a98cbdb05 in expr_eval::OilEvaluator::_EvalExpr(syntax_asdl::expr_t*) _gen/bin/oils_for_unix.mycpp.cc:40194
    #4 0x558a98cacda7 in expr_eval::OilEvaluator::EvalExpr(syntax_asdl::expr_t*, syntax_asdl::loc_t*) _gen/bin/oils_for_unix.mycpp.cc:38997
    #5 0x558a98cac497 in expr_eval::OilEvaluator::EvalExprSub(syntax_asdl::word_part__ExprSub*) _gen/bin/oils_for_unix.mycpp.cc:38966
    #6 0x558a98c7e843 in word_eval::AbstractWordEvaluator::_EvalWordPart(syntax_asdl::word_part_t*, List<runtime_asdl::part_value_t*>*, int) _gen/bin/oils_for_unix.mycpp.cc:34879
    #7 0x558a98c7f67a in word_eval::AbstractWordEvaluator::_EvalWordToParts(syntax_asdl::CompoundWord*, List<runtime_asdl::part_value_t*>*, int) _gen/bin/oils_for_unix.mycpp.cc:34931
    #8 0x558a98c88037 in word_eval::AbstractWordEvaluator::SimpleEvalWordSequence2(List<syntax_asdl::CompoundWord*>*, bool) _gen/bin/oils_for_unix.mycpp.cc:35405
    #9 0x558a98c88f0a in word_eval::AbstractWordEvaluator::EvalWordSequence2(List<syntax_asdl::CompoundWord*>*, bool) _gen/bin/oils_for_unix.mycpp.cc:35440
    #10 0x558a98c06abd in cmd_eval::CommandEvaluator::_Dispatch(syntax_asdl::command_t*, runtime_asdl::CommandStatus*) _gen/bin/oils_for_unix.mycpp.cc:25913
    #11 0x558a98c1251a in cmd_eval::CommandEvaluator::_Execute(syntax_asdl::command_t*) _gen/bin/oils_for_unix.mycpp.cc:26777
    #12 0x558a98c14163 in cmd_eval::CommandEvaluator::ExecuteAndCatch(syntax_asdl::command_t*, int) _gen/bin/oils_for_unix.mycpp.cc:26930
    #13 0x558a98b57ed5 in main_loop::Batch(cmd_eval::CommandEvaluator*, cmd_parse::CommandParser*, ui::ErrorFormatter*, int) _gen/bin/oils_for_unix.mycpp.cc:13132
    #14 0x558a98cf1b68 in shell::Main(Str*, args::Reader*, Dict<Str*, Str*>*, bool, pyutil::_ResourceLoader*, py_readline::Readline*) _gen/bin/oils_for_unix.mycpp.cc:43723
    #15 0x558a98b24f2e in oils_for_unix::AppBundleMain(List<Str*>*) _gen/bin/oils_for_unix.mycpp.cc:9930
    #16 0x558a98b256b2 in oils_for_unix::main(List<Str*>*) _gen/bin/oils_for_unix.mycpp.cc:9995
    #17 0x558a98cf616b in main _gen/bin/oils_for_unix.mycpp.cc:43993
    #18 0x7f4093ba8c86 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21c86)
    #19 0x558a98b00b09 in _start (/home/andy/git/oilshell/oil/_bin/cxx-asan/oils-for-unix+0x11eb09)

AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV mycpp/gc_str.cc:591 in _StrFormat
==27385==ABORTING
ysh-cpp4 Command sub paren parsing bug (#1387)

[ysh-cpp stdout] Expected 'true\n3\n125\n13\n', got 'true\n'
[ysh-cpp status] Expected 0, got 1

stdout:
true
stderr:
  const a = $(write $[len('foo')])
                      ^~~
[ stdin ]:3: fatal: Undefined variable 'len'
[ stdin ]:3: errexit PID 27599: Command Sub exited with status 1