spec test index / oilshell.org
35 passed, 0 OK, 0 not implemented, 0 BUG, 2 failed, 0 timeouts, 0 cases skipped 2 failed under osh
| ysh-cpp | 13 setvar to swap List and Dict elements [ysh-cpp stdout] Expected '1 2 3\n2 1 3\n42 1 3\n{\n "int": 2\n}\n', got '1 2 3\n2 1 3\n' [ysh-cpp status] Expected 0, got 1 stdout: 1 2 3 2 1 3stderr: AddressSanitizer:DEADLYSIGNAL
=================================================================
==25334==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000010 (pc 0x560922f7f5dd bp 0x7ffd2e6a6910 sp 0x7ffd2e6a68f0 T0)
==25334==The signal is caused by a READ memory access.
==25334==Hint: address points to the zero page.
#0 0x560922f7f5dc in Dict<BigStr*, value_asdl::value_t*>::find_kv_index(BigStr*) const /home/uke/oil/mycpp/gc_dict.h:367
#1 0x560922e8efdc in Dict<BigStr*, value_asdl::value_t*>::get(BigStr*) const (/home/uke/oil/_bin/cxx-asan/oils-for-unix+0x437fdc)
#2 0x560922e1f419 in expr_eval::ExprEvaluator::_EvalDot(syntax_asdl::Attribute*, value_asdl::value_t*) _gen/bin/oils_for_unix.mycpp.cc:51352
#3 0x560922e206dd in expr_eval::ExprEvaluator::_EvalAttribute(syntax_asdl::Attribute*) _gen/bin/oils_for_unix.mycpp.cc:51435
#4 0x560922e23544 in expr_eval::ExprEvaluator::_EvalExpr(syntax_asdl::expr_t*) _gen/bin/oils_for_unix.mycpp.cc:51698
#5 0x560922e2292e in expr_eval::ExprEvaluator::_EvalExpr(syntax_asdl::expr_t*) _gen/bin/oils_for_unix.mycpp.cc:51630
#6 0x560922e13e2d in expr_eval::ExprEvaluator::EvalExpr(syntax_asdl::expr_t*, syntax_asdl::loc_t*) _gen/bin/oils_for_unix.mycpp.cc:50494
#7 0x560922d59fe3 in cmd_eval::CommandEvaluator::_DoMutation(syntax_asdl::command__Mutation*) _gen/bin/oils_for_unix.mycpp.cc:35604
#8 0x560922d68004 in cmd_eval::CommandEvaluator::_Dispatch(syntax_asdl::command_t*, runtime_asdl::CommandStatus*) _gen/bin/oils_for_unix.mycpp.cc:36652
#9 0x560922d6a1a6 in cmd_eval::CommandEvaluator::_Execute(syntax_asdl::command_t*) _gen/bin/oils_for_unix.mycpp.cc:36853
#10 0x560922d6bf0e in cmd_eval::CommandEvaluator::ExecuteAndCatch(syntax_asdl::command_t*, int) _gen/bin/oils_for_unix.mycpp.cc:37024
#11 0x560922cc9db9 in main_loop::Batch(cmd_eval::CommandEvaluator*, cmd_parse::CommandParser*, ui::ErrorFormatter*, int) _gen/bin/oils_for_unix.mycpp.cc:24417
#12 0x560922e753cd in shell::Main(BigStr*, args::Reader*, Dict<BigStr*, BigStr*>*, bool, pyutil::_ResourceLoader*, py_readline::Readline*) _gen/bin/oils_for_unix.mycpp.cc:57393
#13 0x560922c1b429 in oils_for_unix::AppBundleMain(List<BigStr*>*) _gen/bin/oils_for_unix.mycpp.cc:12377
#14 0x560922c1ba8b in oils_for_unix::main(List<BigStr*>*) _gen/bin/oils_for_unix.mycpp.cc:12413
#15 0x560922e77522 in main _gen/bin/oils_for_unix.mycpp.cc:57415
#16 0x7fa88242309a in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x2409a)
#17 0x560922bf4fc9 in _start (/home/uke/oil/_bin/cxx-asan/oils-for-unix+0x19dfc9)
AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV /home/uke/oil/mycpp/gc_dict.h:367 in Dict<BigStr*, value_asdl::value_t*>::find_kv_index(BigStr*) const
==25334==ABORTING
|
| ysh-cpp | 14 setvar d.key = 42 (setitem) [ysh-cpp stdout] Expected 'f3=43\nf2=42\n', got '' [ysh-cpp status] Expected 0, got 1 stdout: stderr: AddressSanitizer:DEADLYSIGNAL
=================================================================
==25363==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000000 (pc 0x5604ba7335ca bp 0x7ffd4e7b6d00 sp 0x7ffd4e7b6ce0 T0)
==25363==The signal is caused by a READ memory access.
==25363==Hint: address points to the zero page.
#0 0x5604ba7335c9 in Dict<BigStr*, value_asdl::value_t*>::find_kv_index(BigStr*) const /home/uke/oil/mycpp/gc_dict.h:367
#1 0x5604ba642fdc in Dict<BigStr*, value_asdl::value_t*>::get(BigStr*) const (/home/uke/oil/_bin/cxx-asan/oils-for-unix+0x437fdc)
#2 0x5604ba5d3419 in expr_eval::ExprEvaluator::_EvalDot(syntax_asdl::Attribute*, value_asdl::value_t*) _gen/bin/oils_for_unix.mycpp.cc:51352
#3 0x5604ba5d46dd in expr_eval::ExprEvaluator::_EvalAttribute(syntax_asdl::Attribute*) _gen/bin/oils_for_unix.mycpp.cc:51435
#4 0x5604ba5d7544 in expr_eval::ExprEvaluator::_EvalExpr(syntax_asdl::expr_t*) _gen/bin/oils_for_unix.mycpp.cc:51698
#5 0x5604ba5c7e2d in expr_eval::ExprEvaluator::EvalExpr(syntax_asdl::expr_t*, syntax_asdl::loc_t*) _gen/bin/oils_for_unix.mycpp.cc:50494
#6 0x5604ba50ca4e in cmd_eval::CommandEvaluator::_DoVarDecl(syntax_asdl::command__VarDecl*) _gen/bin/oils_for_unix.mycpp.cc:35523
#7 0x5604ba51bf42 in cmd_eval::CommandEvaluator::_Dispatch(syntax_asdl::command_t*, runtime_asdl::CommandStatus*) _gen/bin/oils_for_unix.mycpp.cc:36646
#8 0x5604ba51e1a6 in cmd_eval::CommandEvaluator::_Execute(syntax_asdl::command_t*) _gen/bin/oils_for_unix.mycpp.cc:36853
#9 0x5604ba51ff0e in cmd_eval::CommandEvaluator::ExecuteAndCatch(syntax_asdl::command_t*, int) _gen/bin/oils_for_unix.mycpp.cc:37024
#10 0x5604ba47ddb9 in main_loop::Batch(cmd_eval::CommandEvaluator*, cmd_parse::CommandParser*, ui::ErrorFormatter*, int) _gen/bin/oils_for_unix.mycpp.cc:24417
#11 0x5604ba6293cd in shell::Main(BigStr*, args::Reader*, Dict<BigStr*, BigStr*>*, bool, pyutil::_ResourceLoader*, py_readline::Readline*) _gen/bin/oils_for_unix.mycpp.cc:57393
#12 0x5604ba3cf429 in oils_for_unix::AppBundleMain(List<BigStr*>*) _gen/bin/oils_for_unix.mycpp.cc:12377
#13 0x5604ba3cfa8b in oils_for_unix::main(List<BigStr*>*) _gen/bin/oils_for_unix.mycpp.cc:12413
#14 0x5604ba62b522 in main _gen/bin/oils_for_unix.mycpp.cc:57415
#15 0x7f90f9cc609a in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x2409a)
#16 0x5604ba3a8fc9 in _start (/home/uke/oil/_bin/cxx-asan/oils-for-unix+0x19dfc9)
AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV /home/uke/oil/mycpp/gc_dict.h:367 in Dict<BigStr*, value_asdl::value_t*>::find_kv_index(BigStr*) const
==25363==ABORTING
|
| ysh | 17 circular dict - TODO 2023-06 REGRESS [ysh stdout] Expected "(OrderedDict) <'name': 'foo'>\n(OrderedDict) <'name': 123>\n(OrderedDict) <'name': 'mystr'>\n(OrderedDict) <'name': ...>\n" Got '(Dict) {"name":"foo"}\n(Dict) {"name":123}\n(Dict) {"name":"mystr"}\n(Dict) {"name":{ --> 0x7f1583f26950 }}\n' stdout: (Dict) {"name":"foo"}
(Dict) {"name":123}
(Dict) {"name":"mystr"}
(Dict) {"name":{ --> 0x7f1583f26950 }}
stderr: |
| ysh-cpp | 17 circular dict - TODO 2023-06 REGRESS [ysh-cpp stdout] Expected "(OrderedDict) <'name': 'foo'>\n(OrderedDict) <'name': 123>\n(OrderedDict) <'name': 'mystr'>\n(OrderedDict) <'name': ...>\n" Got '(Dict) {"name":"foo"}\n(Dict) {"name":123}\n(Dict) {"name":"mystr"}\n(Dict) {"name":{ --> 0x1839 }}\n' stdout: (Dict) {"name":"foo"}
(Dict) {"name":123}
(Dict) {"name":"mystr"}
(Dict) {"name":{ --> 0x1839 }}
stderr: |
| ysh | 18 circular list - TODO 2023-06 REGRESS [ysh stdout] Expected '(List) [1, 2, 3]\n(List) [[...], 2, 3]\n' Got '(List) [1, 2, 3]\n' stdout: (List) [1, 2, 3]stderr: |
| ysh-cpp | 18 circular list - TODO 2023-06 REGRESS [ysh-cpp stdout] Expected '(List) [1, 2, 3]\n(List) [[...], 2, 3]\n' Got '(List) [1, 2, 3]\n' stdout: (List) [1, 2, 3]stderr: |
| ysh-cpp | 20 setvar obj[INVALID TYPE] = [ysh-cpp stdout] Expected 'd.key = 5\noutside1=3\nL[0] = 43\noutside2=3\n' Got 'outside1=1\nL[0] = 43\noutside2=3\n' stdout: outside1=1 L[0] = 43 outside2=3stderr: AddressSanitizer:DEADLYSIGNAL
=================================================================
==25663==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000010 (pc 0x55c12558d5dd bp 0x7ffe012cb450 sp 0x7ffe012cb430 T0)
==25663==The signal is caused by a READ memory access.
==25663==Hint: address points to the zero page.
#0 0x55c12558d5dc in Dict<BigStr*, value_asdl::value_t*>::find_kv_index(BigStr*) const /home/uke/oil/mycpp/gc_dict.h:367
#1 0x55c12549cfdc in Dict<BigStr*, value_asdl::value_t*>::get(BigStr*) const (/home/uke/oil/_bin/cxx-asan/oils-for-unix+0x437fdc)
#2 0x55c12542d419 in expr_eval::ExprEvaluator::_EvalDot(syntax_asdl::Attribute*, value_asdl::value_t*) _gen/bin/oils_for_unix.mycpp.cc:51352
#3 0x55c12542e6dd in expr_eval::ExprEvaluator::_EvalAttribute(syntax_asdl::Attribute*) _gen/bin/oils_for_unix.mycpp.cc:51435
#4 0x55c125431544 in expr_eval::ExprEvaluator::_EvalExpr(syntax_asdl::expr_t*) _gen/bin/oils_for_unix.mycpp.cc:51698
#5 0x55c125421e2d in expr_eval::ExprEvaluator::EvalExpr(syntax_asdl::expr_t*, syntax_asdl::loc_t*) _gen/bin/oils_for_unix.mycpp.cc:50494
#6 0x55c125422682 in expr_eval::ExprEvaluator::EvalExprSub(syntax_asdl::word_part__ExprSub*) _gen/bin/oils_for_unix.mycpp.cc:50521
#7 0x55c1253e74da in word_eval::AbstractWordEvaluator::_EvalWordPart(syntax_asdl::word_part_t*, List<runtime_asdl::part_value_t*>*, int) _gen/bin/oils_for_unix.mycpp.cc:45998
#8 0x55c1253ddbfb in word_eval::AbstractWordEvaluator::_EvalDoubleQuoted(List<syntax_asdl::word_part_t*>*, List<runtime_asdl::part_value_t*>*) _gen/bin/oils_for_unix.mycpp.cc:45359
#9 0x55c1253e684b in word_eval::AbstractWordEvaluator::_EvalWordPart(syntax_asdl::word_part_t*, List<runtime_asdl::part_value_t*>*, int) _gen/bin/oils_for_unix.mycpp.cc:45929
#10 0x55c1253e847c in word_eval::AbstractWordEvaluator::_EvalWordToParts(syntax_asdl::CompoundWord*, List<runtime_asdl::part_value_t*>*, int) _gen/bin/oils_for_unix.mycpp.cc:46064
#11 0x55c1253f0ea4 in word_eval::AbstractWordEvaluator::SimpleEvalWordSequence2(List<syntax_asdl::CompoundWord*>*, bool, bool) _gen/bin/oils_for_unix.mycpp.cc:46608
#12 0x55c1253f1c51 in word_eval::AbstractWordEvaluator::EvalWordSequence2(List<syntax_asdl::CompoundWord*>*, bool, bool) _gen/bin/oils_for_unix.mycpp.cc:46647
#13 0x55c1253698cc in cmd_eval::CommandEvaluator::_DoSimple(syntax_asdl::command__Simple*, runtime_asdl::CommandStatus*) _gen/bin/oils_for_unix.mycpp.cc:35695
#14 0x55c12537536b in cmd_eval::CommandEvaluator::_Dispatch(syntax_asdl::command_t*, runtime_asdl::CommandStatus*) _gen/bin/oils_for_unix.mycpp.cc:36574
#15 0x55c1253781a6 in cmd_eval::CommandEvaluator::_Execute(syntax_asdl::command_t*) _gen/bin/oils_for_unix.mycpp.cc:36853
#16 0x55c125379f0e in cmd_eval::CommandEvaluator::ExecuteAndCatch(syntax_asdl::command_t*, int) _gen/bin/oils_for_unix.mycpp.cc:37024
#17 0x55c1252d7db9 in main_loop::Batch(cmd_eval::CommandEvaluator*, cmd_parse::CommandParser*, ui::ErrorFormatter*, int) _gen/bin/oils_for_unix.mycpp.cc:24417
#18 0x55c1254833cd in shell::Main(BigStr*, args::Reader*, Dict<BigStr*, BigStr*>*, bool, pyutil::_ResourceLoader*, py_readline::Readline*) _gen/bin/oils_for_unix.mycpp.cc:57393
#19 0x55c125229429 in oils_for_unix::AppBundleMain(List<BigStr*>*) _gen/bin/oils_for_unix.mycpp.cc:12377
#20 0x55c125229a8b in oils_for_unix::main(List<BigStr*>*) _gen/bin/oils_for_unix.mycpp.cc:12413
#21 0x55c125485522 in main _gen/bin/oils_for_unix.mycpp.cc:57415
#22 0x7f40fcbf809a in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x2409a)
#23 0x55c125202fc9 in _start (/home/uke/oil/_bin/cxx-asan/oils-for-unix+0x19dfc9)
AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV /home/uke/oil/mycpp/gc_dict.h:367 in Dict<BigStr*, value_asdl::value_t*>::find_kv_index(BigStr*) const
==25663==ABORTING
setvar L["key"] = 44
^~~~~~
[ -c flag ]:5: fatal: List index should be Int, got Str
|