Using binary in _tmp/native-tar-test ~/oil/_tmp/native-tar-test/oils-for-unix-0.27.0 ~/oil _build/oils.sh: Building oils-for-unix: _bin/cxx-opt-sh/oils-for-unix PWD = /home/uke/oil/_tmp/native-tar-test/oils-for-unix-0.27.0 cxx = cxx variant = opt translator = mycpp skip_rebuild = true _build/oils.sh: SKIPPING build because _bin/cxx-opt-sh/oils-for-unix exists ~/oil Exported OSH=/home/uke/oil/_tmp/native-tar-test/oils-for-unix-0.27.0/_bin/cxx-opt-sh/osh ~/oil/_clone/ble.sh ~/oil ble.sh: insane environment: $USER is empty. ble.sh: modified USER=uke ble.sh: suspicious environment: $LANG is empty. shopt -s checkwinsize ^~~~~ out/ble.osh:2403: 'shopt' got invalid option 'checkwinsize' ble/term.sh: updating tput cache for TERM=xterm... mawk: line 37: regular expression compile failed (missing operand) ^('[^']*'|\$'([^\\']|\\.)*'|\$?"([^\\"]|\\.)*"|\\.|[^[:space:]"'`;&|()])* ble/term.sh: updating tput cache for TERM=xterm... done osh warning: The 'RETURN' hook isn't implemented real 0.474 user 0.318 sys 0.073 real 0.155 user 0.004 sys 0.011 declare -i i=1 ^~~~~~~ lib/test-util.sh:175: 'declare' doesn't implement flag -i (shopt --set ignore_flags_not_impl) declare -u u=a ^~~~~~~ lib/test-util.sh:181: Warning: OSH doesn't implement flags -l or -u (shopt --set ignore_flags_not_impl) declare -l l=B ^~~~~~~ lib/test-util.sh:182: Warning: OSH doesn't implement flags -l or -u (shopt --set ignore_flags_not_impl) declare -c c=c ^~ lib/test-util.sh:183: 'declare' doesn't accept flag -c Running out/ble.osh DONE Running out/ble.osh Running lib/test-main.sh lib/test-main.sh:58: ble/util/readlink f.txt [[ $ret != /* ]] && ret=${PWD%/}/$ret --- 2466.ret.expect 2025-02-18 17:01:24.477760444 +0000 +++ 2466.ret.result 2025-02-18 17:01:24.477760444 +0000 @@ -1 +1 @@ -/tmp/blesh/1000/2391.test/2466.d/ab/cd/ef/file.txt +/tmp/blesh/1000/2391.test/2466.d/ef/file.txt lib/test-main.sh:80: path=phys.link/1.txt ble/util/readlink/.resolve-physical-directory declare -p path PWD >&2 [[ $path == */phys.dir/1.txt && $PWD == "$pwd" ]] --- 2466.exit.expect 2025-02-18 17:01:24.537760565 +0000 +++ 2466.exit.result 2025-02-18 17:01:24.537760565 +0000 @@ -1 +1 @@ -0 +1 declare -- path=/tmp/blesh/1000/2391.test/2466.d/1.txt declare -x PWD=/tmp/blesh/1000/2391.test/2466.d lib/test-main.sh:101: [[ ${value//$pattern/$'\n'} == $'\n'hello$'\n' ]] --- 2499.exit.expect 2025-02-18 17:01:24.557760606 +0000 +++ 2499.exit.result 2025-02-18 17:01:24.557760606 +0000 @@ -1 +1 @@ -0 +1 84.2% [section] ble/main: 16/19 (3 fail, 0 crash, 0 skip) DONE Running lib/test-main.sh Running lib/test-util.sh lib/test-util.sh:190: ble/variable#get-attr i; ret=$attr --- 2510.ret.expect 2025-02-18 17:01:24.773761043 +0000 +++ 2510.ret.result 2025-02-18 17:01:24.773761043 +0000 @@ -1 +1 @@ -i + lib/test-util.sh:191: ble/variable#get-attr x; ret=$attr --- 2510.ret.expect 2025-02-18 17:01:24.781761059 +0000 +++ 2510.ret.result 2025-02-18 17:01:24.781761059 +0000 @@ -1 +1 @@ -x + lib/test-util.sh:192: ble/variable#get-attr r; ret=$attr --- 2510.ret.expect 2025-02-18 17:01:24.789761076 +0000 +++ 2510.ret.result 2025-02-18 17:01:24.789761076 +0000 @@ -1 +1 @@ -r + lib/test-util.sh:195: ble/variable#get-attr u; ret=$attr --- 2510.ret.expect 2025-02-18 17:01:24.797761092 +0000 +++ 2510.ret.result 2025-02-18 17:01:24.797761092 +0000 @@ -1 +1 @@ -u + lib/test-util.sh:196: ble/variable#get-attr l; ret=$attr --- 2510.ret.expect 2025-02-18 17:01:24.805761108 +0000 +++ 2510.ret.result 2025-02-18 17:01:24.805761108 +0000 @@ -1 +1 @@ -l + lib/test-util.sh:197: ble/variable#get-attr c; ret=$attr --- 2510.ret.expect 2025-02-18 17:01:24.813761125 +0000 +++ 2510.ret.result 2025-02-18 17:01:24.813761125 +0000 @@ -1 +1 @@ -c + lib/test-util.sh:203: ble/variable#has-attr i i --- 2510.exit.expect 2025-02-18 17:01:24.821761141 +0000 +++ 2510.exit.result 2025-02-18 17:01:24.825761149 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:204: ble/variable#has-attr x x --- 2510.exit.expect 2025-02-18 17:01:24.869761238 +0000 +++ 2510.exit.result 2025-02-18 17:01:24.869761238 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:205: ble/variable#has-attr r r --- 2510.exit.expect 2025-02-18 17:01:24.909761319 +0000 +++ 2510.exit.result 2025-02-18 17:01:24.909761319 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:212: ble/variable#has-attr u u --- 2510.exit.expect 2025-02-18 17:01:24.925761351 +0000 +++ 2510.exit.result 2025-02-18 17:01:24.925761351 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:213: ble/variable#has-attr l l --- 2510.exit.expect 2025-02-18 17:01:24.929761360 +0000 +++ 2510.exit.result 2025-02-18 17:01:24.933761368 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:214: ble/variable#has-attr c c --- 2510.exit.expect 2025-02-18 17:01:24.937761376 +0000 +++ 2510.exit.result 2025-02-18 17:01:24.937761376 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:226: ble/is-inttype i --- 2510.exit.expect 2025-02-18 17:01:24.953761408 +0000 +++ 2510.exit.result 2025-02-18 17:01:24.953761408 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:228: ble/is-readonly r --- 2510.exit.expect 2025-02-18 17:01:24.961761424 +0000 +++ 2510.exit.result 2025-02-18 17:01:24.961761424 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:231: ble/is-transformed u --- 2510.exit.expect 2025-02-18 17:01:24.969761440 +0000 +++ 2510.exit.result 2025-02-18 17:01:24.969761440 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:232: ble/is-transformed l --- 2510.exit.expect 2025-02-18 17:01:24.977761457 +0000 +++ 2510.exit.result 2025-02-18 17:01:24.977761457 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:233: ble/is-transformed c --- 2510.exit.expect 2025-02-18 17:01:24.981761465 +0000 +++ 2510.exit.result 2025-02-18 17:01:24.981761465 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:251: is-global v0 --- 2545.exit.expect 2025-02-18 17:01:25.001761506 +0000 +++ 2545.exit.result 2025-02-18 17:01:25.001761506 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:252: is-global v1 --- 2545.exit.expect 2025-02-18 17:01:25.013761530 +0000 +++ 2545.exit.result 2025-02-18 17:01:25.013761530 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:257: ble/variable#is-global v0 --- 2545.exit.expect 2025-02-18 17:01:25.037761578 +0000 +++ 2545.exit.result 2025-02-18 17:01:25.037761578 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:258: ble/variable#is-global v1 --- 2545.exit.expect 2025-02-18 17:01:25.049761603 +0000 +++ 2545.exit.result 2025-02-18 17:01:25.049761603 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:263: ble/variable#is-global v0u --- 2545.exit.expect 2025-02-18 17:01:25.073761651 +0000 +++ 2545.exit.result 2025-02-18 17:01:25.073761651 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:265: ble/variable#is-global v1u --- 2545.exit.expect 2025-02-18 17:01:25.121761749 +0000 +++ 2545.exit.result 2025-02-18 17:01:25.121761749 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:597: ble/string#split-lines a "" ; status --- 2593.stdout.expect 2025-02-18 17:01:25.705762932 +0000 +++ 2593.stdout.result 2025-02-18 17:01:25.705762932 +0000 @@ -1 +1 @@ -1:() +0:() lib/test-util.sh:599: ble/string#split-lines a " " ; status --- 2593.stdout.expect 2025-02-18 17:01:25.713762948 +0000 +++ 2593.stdout.result 2025-02-18 17:01:25.713762948 +0000 @@ -1 +1 @@ -2:( ) +0:() lib/test-util.sh:600: ble/string#split-lines a "1 " ; status --- 2593.stdout.expect 2025-02-18 17:01:25.721762964 +0000 +++ 2593.stdout.result 2025-02-18 17:01:25.721762964 +0000 @@ -1 +1 @@ -2:(1 ) +1:(1) lib/test-util.sh:601: ble/string#split-lines a " 2" ; status --- 2593.stdout.expect 2025-02-18 17:01:25.729762980 +0000 +++ 2593.stdout.result 2025-02-18 17:01:25.729762980 +0000 @@ -1 +1 @@ -2:( 2) +0:() lib/test-util.sh:602: ble/string#split-lines a "1 3" ; status --- 2593.stdout.expect 2025-02-18 17:01:25.737762996 +0000 +++ 2593.stdout.result 2025-02-18 17:01:25.737762996 +0000 @@ -1 +1 @@ -3:(1 3) +1:(1) lib/test-util.sh:782: ble/string#quote-command echo hello world --- 2611.ret.expect 2025-02-18 17:01:26.193763920 +0000 +++ 2611.ret.result 2025-02-18 17:01:26.193763920 +0000 @@ -1 +1 @@ -echo 'hello' 'world' +echo hello world lib/test-util.sh:784: ble/string#quote-command echo "'test'" --- 2611.ret.expect 2025-02-18 17:01:26.201763937 +0000 +++ 2611.ret.result 2025-02-18 17:01:26.201763937 +0000 @@ -1 +1 @@ -echo ''\''test'\''' +echo $'\'test\'' lib/test-util.sh:786: ble/string#quote-command echo a{1..4} --- 2611.ret.expect 2025-02-18 17:01:26.245764026 +0000 +++ 2611.ret.result 2025-02-18 17:01:26.245764026 +0000 @@ -1 +1 @@ -echo 'a1' 'a2' 'a3' 'a4' +echo a1 a2 a3 a4 lib/test-util.sh:790: ble/util/print-quoted-command echo hello world --- 2611.stdout.expect 2025-02-18 17:01:26.257764050 +0000 +++ 2611.stdout.result 2025-02-18 17:01:26.257764050 +0000 @@ -1 +1 @@ -echo 'hello' 'world' +echo hello world lib/test-util.sh:792: ble/util/print-quoted-command echo "'test'" --- 2611.stdout.expect 2025-02-18 17:01:26.265764066 +0000 +++ 2611.stdout.result 2025-02-18 17:01:26.265764066 +0000 @@ -1 +1 @@ -echo ''\''test'\''' +echo $'\'test\'' lib/test-util.sh:794: ble/util/print-quoted-command echo a{1..4} --- 2611.stdout.expect 2025-02-18 17:01:26.273764083 +0000 +++ 2611.stdout.result 2025-02-18 17:01:26.273764083 +0000 @@ -1 +1 @@ -echo 'a1' 'a2' 'a3' 'a4' +echo a1 a2 a3 a4 lib/test-util.sh:843: ble/util/strlen α --- 2626.ret.expect 2025-02-18 17:01:26.381764301 +0000 +++ 2626.ret.result 2025-02-18 17:01:26.381764301 +0000 @@ -1 +1 @@ -2 +1 lib/test-util.sh:844: ble/util/strlen αβγ --- 2626.ret.expect 2025-02-18 17:01:26.389764317 +0000 +++ 2626.ret.result 2025-02-18 17:01:26.389764317 +0000 @@ -1 +1 @@ -6 +3 lib/test-util.sh:845: ble/util/strlen あ --- 2626.ret.expect 2025-02-18 17:01:26.461764463 +0000 +++ 2626.ret.result 2 ble/function#advice/original:f1 ^~~ [ eval arg at line 4396 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:4396: 'ble/function#advice/original:f1' not found (OILS-ERR-100) ble/function#advice/original:f1 ^~~ [ eval arg at line 4396 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:4396: 'ble/function#advice/original:f1' not found (OILS-ERR-100) ble/function#advice/original:f1 ^~~ [ eval arg at line 4396 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:4396: 'ble/function#advice/original:f1' not found (OILS-ERR-100) 025-02-18 17:01:26.461764463 +0000 @@ -1 +1 @@ -3 +1 lib/test-util.sh:846: ble/util/strlen あいう --- 2626.ret.expect 2025-02-18 17:01:26.469764480 +0000 +++ 2626.ret.result 2025-02-18 17:01:26.469764480 +0000 @@ -1 +1 @@ -9 +3 lib/test-util.sh:847: ble/util/strlen aα --- 2626.ret.expect 2025-02-18 17:01:26.473764488 +0000 +++ 2626.ret.result 2025-02-18 17:01:26.473764488 +0000 @@ -1 +1 @@ -3 +2 lib/test-util.sh:848: ble/util/strlen aαあ --- 2626.ret.expect 2025-02-18 17:01:26.481764504 +0000 +++ 2626.ret.result 2025-02-18 17:01:26.481764504 +0000 @@ -1 +1 @@ -6 +3 lib/test-util.sh:852: ble/util/strlen α --- 2626.ret.expect 2025-02-18 17:01:26.489764521 +0000 +++ 2626.ret.result 2025-02-18 17:01:26.489764521 +0000 @@ -1 +1 @@ -2 +1 lib/test-util.sh:853: ble/util/strlen あ --- 2626.ret.expect 2025-02-18 17:01:26.497764537 +0000 +++ 2626.ret.result 2025-02-18 17:01:26.497764537 +0000 @@ -1 +1 @@ -3 +1 lib/test-util.sh:885: ble/util/substr あいう 0 3 --- 2643.ret.expect 2025-02-18 17:01:26.565764674 +0000 +++ 2643.ret.result 2025-02-18 17:01:26.565764674 +0000 @@ -1 +1 @@ -あ +あいう lib/test-util.sh:886: ble/util/substr あいう 3 6 --- 2643.ret.expect 2025-02-18 17:01:26.573764690 +0000 +++ 2643.ret.result 2025-02-18 17:01:26.573764690 +0000 @@ -1 +1 @@ -いう + lib/test-util.sh:887: ble/util/substr あいう 0 1 --- 2643.ret.expect 2025-02-18 17:01:26.581764706 +0000 +++ 2643.ret.result 2025-02-18 17:01:26.581764706 +0000 @@ -1 +1 @@ - +あ lib/test-util.sh:888: ble/util/substr あいう 1 2 --- 2643.ret.expect 2025-02-18 17:01:26.585764715 +0000 +++ 2643.ret.result 2025-02-18 17:01:26.585764715 +0000 @@ -1 +1 @@ - +いう lib/test-util.sh:889: ble/util/substr あいう 1 4 --- 2643.ret.expect 2025-02-18 17:01:26.593764731 +0000 +++ 2643.ret.result 2025-02-18 17:01:26.593764731 +0000 @@ -1 +1 @@ - +いう lib/test-util.sh:890: ble/util/substr あいう 7 5 --- 2643.ret.expect 2025-02-18 17:01:26.601764747 +0000 +++ 2643.ret.result 2025-02-18 17:01:26.601764747 +0000 @@ -1 +1 @@ - + lib/test-util.sh:1239: ble/util/mapfile a < <(echo); status --- 2661.stdout.expect 2025-02-18 17:01:27.241766044 +0000 +++ 2661.stdout.result 2025-02-18 17:01:27.241766044 +0000 @@ -1 +1 @@ -1:() +0:() lib/test-util.sh:1240: ble/util/mapfile a < <(echo;echo); status --- 2661.stdout.expect 2025-02-18 17:01:27.249766060 +0000 +++ 2661.stdout.result 2025-02-18 17:01:27.249766060 +0000 @@ -1 +1 @@ -2:( ) +0:() lib/test-util.sh:1241: ble/util/mapfile a < <(echo a;echo;echo b); status --- 2661.stdout.expect 2025-02-18 17:01:27.257766077 +0000 +++ 2661.stdout.result 2025-02-18 17:01:27.257766077 +0000 @@ -1 +1 @@ -3:(a b) +1:(a) lib/test-util.sh:1259: ble/util/assign-array a echo; status --- 2661.stdout.expect 2025-02-18 17:01:27.277766117 +0000 +++ 2661.stdout.result 2025-02-18 17:01:27.277766117 +0000 @@ -1 +1 @@ -1:() +0:() lib/test-util.sh:1262: ble/util/assign-array a "echo; echo; echo"; status --- 2661.stdout.expect 2025-02-18 17:01:27.289766141 +0000 +++ 2661.stdout.result 2025-02-18 17:01:27.289766141 +0000 @@ -1 +1 @@ -3:( ) +0:() lib/test-util.sh:1263: ble/util/assign-array a "echo 1; echo; echo 2"; status --- 2661.stdout.expect 2025-02-18 17:01:27.297766157 +0000 +++ 2661.stdout.result 2025-02-18 17:01:27.297766157 +0000 @@ -1 +1 @@ -3:(1 2) +1:(1) lib/test-util.sh:1360: f1 --- 2745.stdout.expect 2025-02-18 17:01:27.617766806 +0000 +++ 2745.stdout.result 2025-02-18 17:01:27.617766806 +0000 @@ -1,2 +1 @@ pre -original ble/function#advice/original:"${ADVICE_WORDS[@]}" ^~~ out/ble.osh:4505: 'ble/function#advice/original:f1' not found (OILS-ERR-100) lib/test-util.sh:1362: f1 --- 2745.stdout.expect 2025-02-18 17:01:27.625766822 +0000 +++ 2745.stdout.result 2025-02-18 17:01:27.625766822 +0000 @@ -1,3 +1,2 @@ pre -original post ble/function#advice/original:"${ADVICE_WORDS[@]}" ^~~ out/ble.osh:4505: 'ble/function#advice/original:f1' not found (OILS-ERR-100) lib/test-util.sh:1364: f1 --- 2745.stdout.expect 2025-02-18 17:01:27.633766838 +0000 ++ ble/function#advice/original:f1 ^~~ [ eval arg at line 4396 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:4396: 'ble/function#advice/original:f1' not found (OILS-ERR-100) ble/function#advice/original:f1 ^~~ [ eval arg at line 4396 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:4396: 'ble/function#advice/original:f1' not found (OILS-ERR-100) ble/function#advice/original:f1 ^~~ [ eval arg at line 4396 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:4396: 'ble/function#advice/original:f1' not found (OILS-ERR-100) ble/function#push/0:echo ^~~ [ eval arg at line 4396 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:4396: 'ble/function#push/0:echo' not found (OILS-ERR-100) ble/function#push/0:echo ^~~ [ eval arg at line 4396 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:4396: 'ble/function#push/0:echo' not found (OILS-ERR-100) ble/function#push/0:echo ^~~ [ eval arg at line 4396 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:4396: 'ble/function#push/0:echo' not found (OILS-ERR-100) ble/function#pop: echo is not a function. ble/function#pop: echo is not a function. + 2745.stdout.result 2025-02-18 17:01:27.633766838 +0000 @@ -1,3 +1,2 @@ A -original post ble/function#advice/original:"${ADVICE_WORDS[@]}" ^~~ out/ble.osh:4505: 'ble/function#advice/original:f1' not found (OILS-ERR-100) lib/test-util.sh:1366: f1 --- 2745.stdout.expect 2025-02-18 17:01:27.641766855 +0000 +++ 2745.stdout.result 2025-02-18 17:01:27.641766855 +0000 @@ -1,3 +1,2 @@ A -original B ble/function#advice/original:"${ADVICE_WORDS[@]}" ^~~ out/ble.osh:4505: 'ble/function#advice/original:f1' not found (OILS-ERR-100) lib/test-util.sh:1368: f1 --- 2745.stdout.expect 2025-02-18 17:01:27.653766879 +0000 +++ 2745.stdout.result 2025-02-18 17:01:27.653766879 +0000 @@ -1,5 +1,4 @@ A [ -original ] B ble/function#advice/original:"${ADVICE_WORDS[@]}" ^~~ out/ble.osh:4505: 'ble/function#advice/original:f1' not found (OILS-ERR-100) lib/test-util.sh:1374: f1 --- 2745.stdout.expect 2025-02-18 17:01:27.661766895 +0000 +++ 2745.stdout.result 2025-02-18 17:01:27.661766895 +0000 @@ -1,5 +1,4 @@ A [ -original quick ] B ble/function#advice/original:"${ADVICE_WORDS[@]}" ^~~ out/ble.osh:4505: 'ble/function#advice/original:f1' not found (OILS-ERR-100) lib/test-util.sh:1377: f1 --- 2745.stdout.expect 2025-02-18 17:01:27.669766911 +0000 +++ 2745.stdout.result 2025-02-18 17:01:27.669766911 +0000 @@ -1 +1 @@ -original + --- 2745.exit.expect 2025-02-18 17:01:27.673766919 +0000 +++ 2745.exit.result 2025-02-18 17:01:27.673766919 +0000 @@ -1 +1 @@ -0 +127 ble/function#advice/original:"${ADVICE_WORDS[@]}" ^~~ out/ble.osh:4505: 'ble/function#advice/original:f1' not found (OILS-ERR-100) lib/test-util.sh:1378: f1 1 --- 2745.stdout.expect 2025-02-18 17:01:27.681766935 +0000 +++ 2745.stdout.result 2025-02-18 17:01:27.681766935 +0000 @@ -1 +1 @@ -original 1 + --- 2745.exit.expect 2025-02-18 17:01:27.685766944 +0000 +++ 2745.exit.result 2025-02-18 17:01:27.685766944 +0000 @@ -1 +1 @@ -0 +127 ble/function#advice/original:"${ADVICE_WORDS[@]}" ^~~ out/ble.osh:4505: 'ble/function#advice/original:f1' not found (OILS-ERR-100) lib/test-util.sh:1391: echo 1 2 3 --- 2766.stdout.expect 2025-02-18 17:01:27.741767057 +0000 +++ 2766.stdout.result 2025-02-18 17:01:27.741767057 +0000 @@ -1,3 +1,3 @@ A -(1 2 3) +1 2 3 Z lib/test-util.sh:1393: echo 1 2 3 --- 2766.stdout.expect 2025-02-18 17:01:27.749767073 +0000 +++ 2766.stdout.result 2025-02-18 17:01:27.749767073 +0000 @@ -1,5 +1,3 @@ [ -A -(1 2 3) -Z +1 2 3 ] lib/test-util.sh:1396: echo 1 2 3 --- 2766.stdout.expect 2025-02-18 17:01:27.757767090 +0000 +++ 2766.stdout.result 2025-02-18 17:01:27.757767090 +0000 @@ -1,3 +1 @@ -A -(1 2 3) -Z +1 2 3 lib/test-util.sh:1398: echo 1 2 3 --- 2766.stdout.expect 2025-02-18 17:01:27.765767106 +0000 +++ 2766.stdout.result 2025-02-18 17:01:27.765767106 +0000 @@ -1 +1 @@ -(1 2 3) +1 2 3 lib/test-util.sh:1400: echo 1 2 3 --- 2766.stdout.expect 2025-02-18 17:01:27.773767122 +0000 +++ 2766.stdout.result 2025-02-18 17:01:27.773767122 +0000 @@ -1 +1 @@ -[1 2 3] +1 2 3 lib/test-util.sh:1401: ble/is-function echo --- 2766.exit.expect 2025-02-18 17:01:27.781767139 +0000 +++ 2766.exit.result 2025-02-18 17:01:27.781767139 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:1402: ble/function#pop echo --- 2766.exit.expect 2025-02-18 17:01:27.789767155 +0000 +++ 2766.exit.result 2025-02-18 17:01:27.789767155 +0000 @@ -1 +1 @@ -0 +1 ble/function#pop: echo is not a function. lib/test-util.sh:1439: ble/util/sprintf ret "[%#.2g]" 27 --- 2782.ret.expect 2025-02-18 17:01:27.897767373 +0000 +++ 2782.ret.result 2025-02-18 17:01:27.897767373 +0000 @@ -1 +1 @@ -[27.] +[1b] [%#.2g] ^ [ printf arg at line 4690 of out/ble.osh ]:1 lib/test-util.sh:1440: ble/util/sprintf ret "[%#.2f]" 27 --- 2782.ret.expect 2025-02-18 17:01:27.905767390 +0000 +++ 2782.ret.result 2025-02-18 17:01:27.905767390 +0000 @@ -1 +1 @@ -[27.00] +[1b] [%#.2f] ^ [ printf arg at line 4690 of out/ble.osh ]:1 lib/test-util.sh:1478: ble/alias#expand aaa1 --- 2788.ret.expect 2025-02-18 17:01:28.009767600 +0000 +++ 2788.ret.result 2025-02-18 17:01:28.009767600 +0000 @@ -1 +1 @@ -aaa2 world +aaa1 lib/test-util.sh:1480: ble/alias#expand aaa2 --- 2788.ret.expect 2025-02-18 17:01:28.017767616 +0000 +++ 2788.ret.result 2025-02-18 17:01:28.017767616 +0000 @@ -1 +1 @@ -aaa3 hello +aaa2 lib/test-util.sh:1481: ble/alias#expand aaa1 --- 2788.ret.expect 2025-02-18 17:01:28.025767633 +0000 +++ 2788.ret.result 2025-02-18 17:01:28.025767633 +0000 @@ -1 +1 @@ -aaa2 world +aaa1 lib/test-util.sh:1483: ble/alias#expand aaa3 --- 2788.ret.expect 2025-02-18 17:01:28.033767649 +0000 +++ 2788.ret.result 2025-02-18 17:01:28.033767649 +0000 @@ -1 +1 @@ -aaa4 +aaa3 lib/test-util.sh:1484: ble/alias#expand aaa2 --- 2788.ret.expect 2025-02-18 17:01:28.041767665 +0000 +++ 2788.ret.result 2025-02-18 17:01:28.041767665 +0000 @@ -1 +1 @@ -aaa3 hello +aaa2 lib/test-util.sh:1485: ble/alias#expand aaa1 --- 2788.ret.expect 2025-02-18 17:01:28.049767681 +0000 +++ 2788.ret.result 2025-02-18 17:01:28.049767681 +0000 @@ -1 +1 @@ -aaa2 world +aaa1 lib/test-util.sh:1487: ble/alias#expand aaa4 --- 2788.ret.expect 2025-02-18 17:01:28.057767698 +0000 +++ 2788.ret.result 2025-02-18 17:01:28.057767698 +0000 @@ -1 +1 @@ -echo +aaa4 lib/test-util.sh:1488: ble/alias#expand aaa3 --- 2788.ret.expect 2025-02-18 17:01:28.065767713 +0000 +++ 2788.ret.result 2025-02-18 17:01:28.065767713 +0000 @@ -1 +1 @@ -aaa4 +aaa3 lib/test-util.sh:1489: ble/alias#expand aaa2 --- 2788.ret.expect 2025-02-18 17:01:28.069767722 +0000 +++ 2788.ret.result 2025-02-18 17:01:28.069767722 +0000 @@ -1 +1 @@ -aaa3 hello +aaa2 lib/test-util.sh:1490: ble/alias#expand aaa1 --- 2788.ret.expect 2025-02-18 17:01:28.077767738 +0000 +++ 2788.ret.result 2025-02-18 17:01:28.077767738 +0000 @@ -1 +1 @@ -aaa2 world +aaa1 lib/test-util.sh:1582: declare -p v2a xv2a | cat -v >&2; [[ $v2a == $xv2a ]] --- 2827.exit.expect 2025-02-18 17:01:28.285768160 +0000 +++ 2827.exit.result 2025-02-18 17:01:28.285768160 +0000 @@ -1 +1 @@ -0 +1 declare -- xv2a=a lib/test-util.sh:1582: declare -p v2b xv2b | cat -v >&2; [[ $v2b == $xv2b ]] --- 2827.exit.expect 2025-02-18 17:01:28.297768184 +0000 +++ 2827.exit.result 2025-02-18 17:01:28.297768184 +0000 @@ -1 +1 @@ -0 +1 declare -- xv2b=ab lib/test-util.sh:1582: declare -p v3a xv3a | cat -v >&2; [[ $v3a == $xv3a ]] --- 2827.exit.expect 2025-02-18 17:01:28.309768208 +0000 +++ 2827.exit.result 2025-02-18 17:01:28.309768208 +0000 @@ -1 +1 @@ -0 +1 declare -- xv3a=' ' lib/test-util.sh:1582: declare -p v3b xv3b | cat -v >&2; [[ $v3b == $xv3b ]] --- 2827.exit.expect 2025-02-18 17:01:28.317768224 +0000 +++ 2827.exit.result 2025-02-18 17:01:28.317768224 +0000 @@ -1 +1 @@ -0 +1 declare -- xv3b='a b' lib/test-util.sh:1582: declare -p v4a xv4a | cat -v >&2; [[ $v4a == $xv4a ]] --- 2827.exit.expect 2025-02-18 17:01:28.329768248 +0000 +++ 2827.exit.result 2025-02-18 17:01:28.329768248 +0000 @@ -1 +1 @@ -0 +1 declare -- xv4a=$'\n' lib/test-util.sh:1582: declare -p v4b xv4b | cat -v >&2; [[ $v4b == $xv4b ]] --- 2827.exit.expect 2025-02-18 17:01:28.341768273 +0000 +++ 2827.exit.result 2025-02-18 17:01:28.341768273 +0000 @@ -1 +1 @@ -0 +1 declare -- xv4b=$'a\nb' lib/test-util.sh:1582: declare -p v5a xv5a | cat -v >&2; [[ $v5a == $xv5a ]] --- 2827.exit.expect 2025-02-18 17:01:28.349768289 +0000 +++ 2827.exit.result 2025-02-18 17:01:28.353768297 +0000 @@ -1 +1 @@ -0 +1 declare -- xv5a=$'\r' lib/test-util.sh:1582: declare -p v5b xv5b | cat -v >&2; [[ $v5b == $xv5b ]] --- 2827.exit.expect 2025-02-18 17:01:28.361768314 +0000 +++ 2827.exit.result 2025-02-18 17:01:28.361768314 +0000 @@ -1 +1 @@ -0 +1 declare -- xv5b=$'a\rb' lib/test-util.sh:1582: declare -p v6a xv6a | cat -v >&2; [[ $v6a == $xv6a ]] --- 2827.exit.expect 2025-02-18 17:01:28.373768338 +0000 +++ 2827.exit.result 2025-02-18 17:01:28.373768338 +0000 @@ -1 +1 @@ -0 +1 declare -- xv6a=$'\u0001' lib/test-util.sh:1582: declare -p v6b xv6b | cat -v >&2; [[ $v6b == $xv6b ]] --- 2827.exit.expect 2025-02-18 17:01:28.381768354 +0000 +++ 2827.exit.result 2025-02-18 17:01:28.381768354 +0000 @@ -1 +1 @@ -0 +1 declare -- xv6b=$'a\u0001b' lib/test-util.sh:1582: declare -p v7a xv7a | cat -v >&2; [[ $v7a == $xv7a ]] --- 2827.exit.expect 2025-02-18 17:01:28.393768378 +0000 +++ 2827.exit.result 2025-02-18 17:01:28.393768378 +0000 @@ -1 +1 @@ -0 +1 declare -- xv7a=$'\u0002' lib/test-util.sh:1582: declare -p v7b xv7b | cat -v >&2; [[ $v7b == $xv7b ]] --- 2827.exit.expect 2025-02-18 17:01:28.405768403 +0000 +++ 2827.exit.result 2025-02-18 17:01:28.405768403 +0000 @@ -1 +1 @@ -0 +1 declare -- xv7b=$'a\u0002b' lib/test-util.sh:1582: declare -p v8a xv8a | cat -v >&2; [[ $v8a == $xv8a ]] --- 2827.exit.expect 2025-02-18 17:01:28.413768419 +0000 +++ 2827.exit.result 2025-02-18 17:01:28.413768419 +0000 @@ -1 +1 @@ -0 +1 declare -- xv8a='^?' lib/test-util.sh:1582: declare -p v8b xv8b | cat -v >&2; [[ $v8b == $xv8b ]] --- 2827.exit.expect 2025-02-18 17:01:28.425768443 +0000 +++ 2827.exit.result 2025-02-18 17:01:28.425768443 +0000 @@ -1 +1 @@ -0 +1 declare -- xv8b='a^?b' lib/test-util.sh:1604: status a1 --- 2827.ret.expect 2025-02-18 17:01:28.441768476 +0000 +++ 2827.ret.result 2025-02-18 17:01:28.441768476 +0000 @@ -1 +1 @@ -1:() +0:() lib/test-util.sh:1604: status a2 --- 2827.ret.expect 2025-02-18 17:01:28.449768491 +0000 +++ 2827.ret.result 2025-02-18 17:01:28.449768491 +0000 @@ -1 +1 @@ -2:(a ab) +0:() lib/test-util.sh:1604: status a3 --- 2827.ret.expect 2025-02-18 17:01:28.457768508 +0000 +++ 2827.ret.result 2025-02-18 17:01:28.457768508 +0000 @@ -1 +1 @@ -2:( a b) +0:() lib/test-util.sh:1604: status a4 --- 2827.ret.expect 2025-02-18 17:01:28.465768524 +0000 +++ 2827.ret.result 2025-02-18 17:01:28.465768524 +0000 @@ -1,3 +1 @@ -2:( - a -b) +0:() lib/test-util.sh:1604: status a5 --- 2827.ret.expect 2025-02-18 17:01:28.473768540 +0000 +++ 2827.ret.result 2025-02-18 17:01:28.473768540 +0000 @@ -1 +1 @@ -2:( a b) +0:() lib/test-util.sh:1604: status a6 --- 2827.ret.expect 2025-02-18 17:01:28.477768549 +0000 +++ 2827.ret.result 2025-02-18 17:01:28.477768549 +0000 @@ -1 +1 @@ -2:( ab) +0:() lib/test-util.sh:1604: status a7 --- 2827.ret.expect 2025-02-18 17:01:28.485768565 +0000 +++ 2827.ret.result 2025-02-18 17:01:28.485768565 +0000 @@ -1 +1 @@ -2:( ab) +0:() lib/test-util.sh:1604: status a8 --- 2827.ret.expect 2025-02-18 17:01:28.493768581 +0000 +++ 2827.ret.result 2025-02-18 17:01:28.493768581 +0000 @@ -1 +1 @@ -2:( ab) +0:() lib/test-util.sh:1615: [[ ! ${v0+set} ]] --- 2908.exit.expect 2025-02-18 17:01:28.513768621 +0000 +++ 2908.exit.result 2025-02-18 17:01:28.513768621 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:1616: status v1 --- 2908.stdout.expect 2025-02-18 17:01:28.525768646 +0000 +++ 2908.stdout.result 2025-02-18 17:01:28.525768646 +0000 @@ -1 +1 @@ -1:(123) +1:(2) lib/test-util.sh:1617: status v2 --- 2908.stdout.expect 2025-02-18 17:01:28.533768662 +0000 +++ 2908.stdout.result 2025-02-18 17:01:28.533768662 +0000 @@ -1 +1 @@ -3:(1 2 3) +1:(3) lib/test-util.sh:1618: status v3 --- 2908.stdout.expect 2025-02-18 17:01:28.541768678 +0000 +++ 2908.stdout.result 2025-02-18 17:01:28.541768678 +0000 @@ -1 +1 @@ -1:(bbb) +3:(bbb) lib/test-util.sh:1619: status v4 --- 2908.stdout.expect 2025-02-18 17:01:28.549768695 +0000 +++ 2908.stdout.result 2025-02-18 17:01:28.549768695 +0000 @@ -1 +1 @@ -1:(ccc) +1:(5) lib/test-util.sh:1631: ble/util/print-global-definitions value --- 2908.stdout.expect 2025-02-18 17:01:28.561768719 +0000 +++ 2908.stdout.result 2025-02-18 17:01:28.561768719 +0000 @@ -1 +1 @@ -declare value='hello '\''world'\''' +declare value; builtin unset -v value lib/test-util.sh:1668: shopt -q failglob --- 2925.exit.expect 2025-02-18 17:01:28.601768800 +0000 +++ 2925.exit.result 2025-02-18 17:01:28.601768800 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:1669: shopt -q nullglob --- 2925. ble/function#push/0:ble/util/msleep ^~~ [ eval arg at line 4396 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:4396: 'ble/function#push/0:ble/util/msleep' not found (OILS-ERR-100) [%1] PID 2958 Started [%2] PID 2960 Started set -m; ble/bin/sleep 10 & pid3=$!; set +m ^~ lib/test-util.sh:1700: 'set' got invalid flag '-m' [%3] PID 2962 Started set -m; ble/bin/sleep 10 & pid3=$!; set +m ^ lib/test-util.sh:1700: 'set' got invalid flag '-m' exit.expect 2025-02-18 17:01:28.609768816 +0000 +++ 2925.exit.result 2025-02-18 17:01:28.609768816 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:1670: shopt -q extglob --- 2925.exit.expect 2025-02-18 17:01:28.617768832 +0000 +++ 2925.exit.result 2025-02-18 17:01:28.617768832 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:1681: ble-measure -q "ble/util/msleep 100"; echo "$ret usec" >&2; ((msec=ret/1000,90<=msec&&msec<=120)) --- 2935.exit.expect 2025-02-18 17:01:28.749769103 +0000 +++ 2935.exit.result 2025-02-18 17:01:28.749769103 +0000 @@ -1 +1 @@ -0 +1 0 usec lib/test-util.sh:1682: ble-measure -q "ble/util/sleep 0.1"; echo "$ret usec" >&2; ((msec=ret/1000,90<=msec&&msec<=120)) --- 2935.exit.expect 2025-02-18 17:01:28.861769327 +0000 +++ 2935.exit.result 2025-02-18 17:01:28.861769327 +0000 @@ -1 +1 @@ -0 +1 0 usec lib/test-util.sh:1690: ble/util/conditional-sync 'ble/bin/sleep 10' '((time<1000))' 100 --- 2942.stdout.expect 2025-02-18 17:01:38.881789635 +0000 +++ 2942.stdout.result 2025-02-18 17:01:38.881789635 +0000 @@ -1,10 +1 @@ 100 -200 -300 -400 -500 -600 -700 -800 -900 -1000 [%1] PID 2944 Started [%1] PID 2944 Done lib/test-util.sh:1692: ble/util/conditional-sync 'ble/bin/sleep 10' '((time<1000))' 100 progressive-weight --- 2942.stdout.expect 2025-02-18 17:01:48.893808339 +0000 +++ 2942.stdout.result 2025-02-18 17:01:48.893808339 +0000 @@ -1,16 +1 @@ 1 -3 -7 -15 -31 -63 -127 -227 -327 -427 -527 -627 -727 -827 -927 -1027 [%1] PID 2949 Started [%1] PID 2949 Done lib/test-util.sh:1694: ble/util/conditional-sync 'ble/bin/sleep 10' 'true' 100 timeout=10 --- 2942.exit.expect 2025-02-18 17:01:58.909827600 +0000 +++ 2942.exit.result 2025-02-18 17:01:58.909827600 +0000 @@ -1 +1 @@ -142 +0 [%1] PID 2954 Started [%1] PID 2954 Done lib/test-util.sh:1709: kill -0 "$pid1" --- 2942.exit.expect 2025-02-18 17:01:58.957827693 +0000 +++ 2942.exit.result 2025-02-18 17:01:58.957827693 +0000 @@ -1 +1 @@ -1 +0 lib/test-util.sh:1710: kill -0 "$pid2" --- 2942.exit.expect 2025-02-18 17:01:58.969827716 +0000 +++ 2942.exit.result 2025-02-18 17:01:58.969827716 +0000 @@ -1 +1 @@ -1 +0 lib/test-util.sh:1711: kill -0 "$pid3" --- 2942.exit.expect 2025-02-18 17:01:58.981827740 +0000 +++ 2942.exit.result 2025-02-18 17:01:58.981827740 +0000 @@ -1 +1 @@ -1 +0 lib/test-util.sh:1736: ble/util/get-pager ret --- 2996.ret.expect 2025-02-18 17:01:59.037827848 +0000 +++ 2996.ret.result 2025-02-18 17:01:59.037827848 +0000 @@ -1 +1 @@ -less +pager lib/test-util.sh:1758: ble/util/buffer.flush --- 3001.stdout.expect 2025-02-18 17:01:59.057827887 +0000 +++ 3001.stdout.result 2025-02-18 17:01:59.057827887 +0000 @@ -1 +1 @@ -helloworld + lib/test-util.sh:1762: ble/util/buffer.flush --- 3001.stdout.expect 2025-02-18 17:01:59.065827903 +0000 +++ 3001.stdout.result 2025-02-18 17:01:59.065827903 +0000 @@ -1,2 +1 @@ -hello -world + lib/test-util.sh:1958: ble/util/c2s 956; [[ $ret != μ ]] --- 3007.exit.expect 2025-02-18 17:01:59.133828035 +0000 +++ 3007.exit.result 2025-02-18 17:01:59.133828035 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:1959: ble/util/c2s 12354; [[ $ret != あ ]] --- 3007.exit.expect 2025-02-18 17:01:59.141828050 +0000 +++ 3007.exit.result 2025-02-18 17:01:59.141828050 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:1989: ble/util/chars2s --- 3013.ret.expect 2025-02-18 17:01:59.181828128 +0000 +++ 3013.ret.result 2025-02-18 17:01:59.181828128 +0000 @@ -1 +1 @@ - +12354 \\U%08x ^ [ printf arg at line 10195 of out/ble.osh ]:1 lib/test-util.sh:2006: ble/util/keyseq2chars 'b\C-@c'; ret="${ret[*]}" --- 3016.ret.expect 2025-02-18 17:01:59.321828400 +0000 +++ 3016.ret.result 2025-02-18 17:01:59.321828400 +0000 @@ -1 +1 @@ -98 0 99 +98 0 lib/test-util.sh:2006: ble/util/keyseq2chars 'b\C-ac'; ret="${ret[*]}" --- 3016.ret.expect 2025-02-18 17:01:59.337828431 +0000 +++ 3016.ret.result 2025-02-18 17:01:59.337828431 +0000 @@ -1 +1 @@ -98 1 99 +98 1 lib/test-util.sh:2006: ble/util/keyseq2chars 'b\C-zc'; ret="${ret[*]}" --- 3016.ret.expect 2025-02-real 35.034 user 0.060 sys 0.056 real 0.073 user 0.002 sys 0.003 18 17:01:59.349828454 +0000 +++ 3016.ret.result 2025-02-18 17:01:59.349828454 +0000 @@ -1 +1 @@ -98 26 99 +98 26 lib/test-util.sh:2006: ble/util/keyseq2chars 'b\C-]c'; ret="${ret[*]}" --- 3016.ret.expect 2025-02-18 17:01:59.361828478 +0000 +++ 3016.ret.result 2025-02-18 17:01:59.361828478 +0000 @@ -1 +1 @@ -98 29 99 +98 29 lib/test-util.sh:2006: ble/util/keyseq2chars 'b\C-^c'; ret="${ret[*]}" --- 3016.ret.expect 2025-02-18 17:01:59.397828547 +0000 +++ 3016.ret.result 2025-02-18 17:01:59.397828547 +0000 @@ -1 +1 @@ -98 30 99 +98 30 lib/test-util.sh:2006: ble/util/keyseq2chars 'b\C-_c'; ret="${ret[*]}" --- 3016.ret.expect 2025-02-18 17:01:59.409828571 +0000 +++ 3016.ret.result 2025-02-18 17:01:59.409828571 +0000 @@ -1 +1 @@ -98 31 99 +98 31 lib/test-util.sh:2006: ble/util/keyseq2chars 'b\M-\C-@c'; ret="${ret[*]}" --- 3016.ret.expect 2025-02-18 17:01:59.421828594 +0000 +++ 3016.ret.result 2025-02-18 17:01:59.421828594 +0000 @@ -1 +1 @@ -98 27 0 99 +98 27 0 89.1% [section] ble/util: 1095/1228 (133 fail, 0 crash, 6 skip) DONE Running lib/test-util.sh Running lib/test-decode.sh 100.0% [section] ble/decode: 33/33 (0 fail, 0 crash, 0 skip) DONE Running lib/test-decode.sh ~/oil DONE