52 passed, 5 OK, 1 not implemented, 3 BUG, 1 failed, 0 timeouts, 0 cases skipped 1 failed under osh
bash | 2 ${!undef:-} stdout: NOUNSETstderr: bash: line 1: undef: invalid indirect expansion bash: line 2: undef: invalid indirect expansion bash: line 6: undef: invalid indirect expansion bash: line 7: undef: invalid indirect expansion |
bash | 3 comparison to ${!array[@]} keys (similar SYNTAX) stdout: ['0', '1'] a_keys=0 [''] a_nobrackets=0 --- ['A', 'B'] A_keys=0 [''] A_nobrackets=0stderr: |
bash | 15 array ref with strict_array stdout: alestderr: bash: line 1: shopt: strict_array: invalid shell option name |
bash | 21 Indirect expansion TO fancy expansion features bash disallows stdout: donestderr: main: line 2: a[0: invalid variable name main: line 2: aa[k: invalid variable name main: line 2: !x: invalid variable name main: line 2: !a[0]: invalid variable name main: line 2: x:-foo: invalid variable name main: line 2: x:=foo: invalid variable name main: line 2: x:?oops: invalid variable name main: line 2: x:+yy: invalid variable name main: line 2: x:0: invalid variable name main: line 2: x:0:1: invalid variable name main: line 2: !a@: invalid variable name main: line 2: #x: invalid variable name main: line 2: x#y: invalid variable name main: line 2: x/y/foo: invalid variable name main: line 2: x@Q: invalid variable name |
osh | 22 Bad var ref stdout: stderr: bad var name ^ [ contents of var 'a' at line 2 of [ stdin ] ]:1: Expected end of var ref expression echo ref ${!a} ^ [ stdin ]:2: fatal: Invalid var ref expression |
osh | 23 Bad var ref 2 stdout: stderr: / ^ [ contents of var 'b' at line 2 of [ stdin ] ]:1: Expected var name echo ref ${!b} ^ [ stdin ]:2: fatal: Invalid var ref expression |
bash | 25 var ref doesn't need cycle detection stdout: cycle=x cycle=stderr: bash: line 7: warning: a: circular name reference |
bash | 26 Var Ref Code Injection $(tee PWNED) stdout: 42 PWNED 0stderr: |
bash | 30 Array indirect expansion with @? conversion stdout: ==== v1 ==== ["'value'"] ['value'] [''] ==== v2 ==== ["''"] [''] [''] ==== a1 ==== [''] [''] ['a'] ==== a2[0] ==== ["'element'"] ['element'] ['a'] ==== a3[@] ==== ["'1'", "'2'", "'3'"] ['1', '2', '3'] ['a', 'a', 'a']stderr: |
osh | 30 Array indirect expansion with @? conversion [osh stdout] Expected '==== v1 ====\n[\'value\']\n[\'value\']\n[\'\']\n==== v2 ====\n["\'\'"]\n[\'\']\n[\'\']\n==== a1 ====\n[\'\']\n[\'\']\n[\'a\']\n==== a2[0] ====\n[\'element\']\n[\'element\']\n[\'a\']\n==== a3[@] ====\n[\'1\', \'2\', \'3\']\n[\'1\', \'2\', \'3\']\n[\'a\', \'a\', \'a\']\n' Got '==== v1 ====\n[\'value\']\n[\'value\']\n[\'\']\n==== v2 ====\n["\'\'"]\n[\'\']\n[\'\']\n==== a1 ====\n[\'\']\n[\'\']\n[\'a\']\n==== a2[0] ====\n[\'element\']\n[\'element\']\n[\'\']\n==== a3[@] ====\n[\'1 2 3\']\n' [osh status] Expected 0, got 1 stdout: ==== v1 ==== ['value'] ['value'] [''] ==== v2 ==== ["''"] [''] [''] ==== a1 ==== [''] [''] ['a'] ==== a2[0] ==== ['element'] ['element'] [''] ==== a3[@] ==== ['1 2 3']stderr: argv.py "${!ref[@]@P}" ^~ [ stdin ]:6: fatal: Can't use @P on BashArray |