ninja: no work to do. /// /// Runtime errors - Unquoted test functions /// ===== TEST function: unquoted-ambiguous_redirect ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-ambiguous_redirect_context ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-array_arith ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-array_assign_1 ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-array_assign_2 ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-bad_file_descriptor ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-bad_var_ref ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-bool_status ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-bool_status_simple ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-builtin_alias_unalias ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-builtin_bracket ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-builtin_builtin ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-builtin_cd ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-builtin_exec ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-builtin_getopts ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-builtin_help ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-builtin_popd ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-builtin_pushd ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-builtin_source ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-builtin_trap ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-builtin_unset ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-builtin_wait ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-command_sub_errexit ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-multiple_assign ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-multiple_assign_2 ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-no_such_command_heredoc ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-nounset ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-nounset_arith ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-patsub_bad_glob ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-pipefail ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-pipefail_func ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-pipefail_group ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-pipefail_multiple ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-pipefail_no_words ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-pipefail_subshell ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-pipefail_while ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-process_sub_fail ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-readonly_assign ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-strict_arith_warnings ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-strict_array ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-strict_array_2 ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-strict_array_3 ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-strict_array_4 ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-strict_word_eval_warnings ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-string_as_array ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-string_to_hex ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-string_to_int_arith ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-string_to_int_bool ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-string_to_intbase ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-string_to_octal ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-undef-assoc-array ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-undef_arith ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 ===== TEST function: unquoted-undef_arith2 ===== nproc=$(nproc 2>/dev/null || echo 1) ^ test/common.sh:17: Invalid word while parsing command list _osh-error-X $1 "$(cat)" ^ test/sh-assert.sh:55: Invalid word while parsing command list $(ZZZZZ) ^ test/runtime-errors.sh:101: Invalid word while parsing command list ----- STATUS: 0 test/runtime-errors.sh: 53 unquoted functions run. TODO: migrate to test-* to assert status /// /// Runtime errors - test functions /// *** Running test-FAIL ===== CASE: -c echo hi > /zzz ===== echo hi > /zzz ^ [ -c flag ]:1: Can't open '/zzz': Permission denied [ -c flag ]:1: I/O error applying redirect: Permission denied OK test-FAIL *** Running test-arith-ops-str ===== CASE: -c = "100" + "10a" ===== = "100" + "10a" ^ [ -c flag ]:1: fatal: Binary operator expected numbers, got Str and Str (OILS-ERR-201) ===== CASE: -c = "100" - "10a" ===== = "100" - "10a" ^ [ -c flag ]:1: fatal: Binary operator expected numbers, got Str and Str (OILS-ERR-201) ===== CASE: -c = "100" * "10a" ===== = "100" * "10a" ^ [ -c flag ]:1: fatal: Binary operator expected numbers, got Str and Str (OILS-ERR-201) ===== CASE: -c = "100" / "10a" ===== = "100" / "10a" ^ [ -c flag ]:1: fatal: Binary operator expected numbers, got Str and Str (OILS-ERR-201) ===== CASE: -c var a = "100"; setvar a += "10a" ===== var a = "100"; setvar a += "10a" ^~ [ -c flag ]:1: fatal: Binary operator expected numbers, got Str and Str (OILS-ERR-201) ===== CASE: -c var a = "100"; setvar a -= "10a" ===== var a = "100"; setvar a -= "10a" ^~ [ -c flag ]:1: fatal: Binary operator expected numbers, got Str and Str (OILS-ERR-201) ===== CASE: -c var a = "100"; setvar a *= "10a" ===== var a = "100"; setvar a *= "10a" ^~ [ -c flag ]:1: fatal: Binary operator expected numbers, got Str and Str (OILS-ERR-201) ===== CASE: -c var a = "100"; setvar a /= "10a" ===== var a = "100"; setvar a /= "10a" ^~ [ -c flag ]:1: fatal: Binary operator expected numbers, got Str and Str (OILS-ERR-201) ===== CASE: -c = "age: " + "100" ===== = "age: " + "100" ^ [ -c flag ]:1: fatal: Binary operator expected numbers, got Str and Str (OILS-ERR-201) ===== CASE: -c var myvar = "a string" = 100 + myvar ===== = 100 + myvar ^ [ -c flag ]:2: fatal: Binary operator expected numbers, got Int and Str (OILS-ERR-201) OK test-arith-ops-str *** Running test-assoc-array ===== CASE: -c declare -A assoc; assoc[x]=1 ===== declare -A assoc; assoc[x]=1 ^~~~~~ [ -c flag ]:1: fatal: Assoc array keys must be strings: $x 'x' "$x" etc. (OILS-ERR-101) ===== CASE: -c declare -A assoc; assoc[$key]=1 ===== ===== CASE: -c declare -A assoc; assoc["x"]=1 ===== ===== CASE: -c declare -A assoc; assoc['x']=1 ===== ===== CASE: -c declare -A assoc; echo ${assoc[x]} ===== declare -A assoc; echo ${assoc[x]} ^ [ -c flag ]:1: fatal: Assoc array keys must be strings: $x 'x' "$x" etc. (OILS-ERR-101) ===== CASE: -c declare -A assoc; echo ${assoc["x"]} ===== ===== CASE: -c declare -A assoc; echo ${assoc[$key]} ===== ===== CASE: -c declare -A assoc; key=k; unset assoc[$key] ===== assoc[k] ^ [ sh arith expr at ? ]:1 [??? no location ???] fatal: Assoc array keys must be strings: $x 'x' "$x" etc. (OILS-ERR-101) ===== CASE: -c declare -A assoc; key=k; unset "assoc[$key]" ===== assoc[k] ^ [ sh arith expr at ? ]:1 [??? no location ???] fatal: Assoc array keys must be strings: $x 'x' "$x" etc. (OILS-ERR-101) ===== CASE: -c declare -A assoc; key=k; unset "assoc[$key]" ===== assoc[k] ^ [ sh arith expr at ? ]:1 [??? no location ???] fatal: Assoc array keys must be strings: $x 'x' "$x" etc. (OILS-ERR-101) ===== CASE: -c declare -A assoc; key=k; unset 'assoc[$key]' ===== ===== CASE: -c eval 'declare -A assoc; assoc[x]=1' ===== declare -A assoc; assoc[x]=1 ^~~~~~ [ eval arg at line 1 of [ -c flag ] ]:1 eval 'declare -A assoc; assoc[x]=1' ^~~~ [ -c flag ]:1: fatal: Assoc array keys must be strings: $x 'x' "$x" etc. (OILS-ERR-101) ===== CASE: -c eval 'declare -A assoc; unset "assoc[x]"' ===== assoc[x] ^ [ sh arith expr at ? ]:1 [??? no location ???] fatal: Assoc array keys must be strings: $x 'x' "$x" etc. (OILS-ERR-101) OK test-assoc-array *** Running test-bind ===== CASE: -c bind -x ===== bind -x ^~ [ -c flag ]:1: 'bind' expected argument to '-x' ===== CASE: -c bind -x foo ===== bind -x foo ^~~~ [ -c flag ]:1: bind error: foo: missing colon separator OK test-bind *** Running test-brace-range ===== CASE: -c {35..37} ===== {35..37} ^~~~~~ [ -c flag ]:1: Command '35' not found (OILS-ERR-100) ===== CASE: -c x{35..37} ===== x{35..37} ^ [ -c flag ]:1: Command 'x35' not found (OILS-ERR-100) ===== CASE: -c {35..37}"x" ===== {35..37}"x" ^~~~~~ [ -c flag ]:1: Command '35x' not found (OILS-ERR-100) OK test-brace-range *** Running test-command-not-found ===== CASE: -c findz ===== findz ^~~~~ [ -c flag ]:1: Command 'findz' not found (OILS-ERR-100) OK test-command-not-found *** Running test-control-flow-subshell ===== CASE: -c set -o errexit for i in $(seq 2); do echo $i ( break; echo oops) done ===== for i in $(seq 2); do ^ [ -c flag ]:3: Invalid word while parsing command list test/runtime-errors.sh: fatal: Should FAIL under _bin/cxx-asan/osh: expected status 1, got 2 FAIL test-control-flow-subshell