#################### # Test the -V flag #################### # Testing -V $foo: set in local scope, unexported, with 1 elements $foo[1]: length=9 value=|local foo| $foo: set in global scope, unexported, with 1 elements $foo[1]: length=10 value=|global foo| $foo: not set in universal scope $bar: set in local scope, unexported, with 5 elements $bar[1]: length=3 value=|one| $bar[2]: length=8 value=|two 2| $bar[3]: length=1 value=|\t| $bar[4]: length=0 value=|| $bar[5]: length=1 value=|3| $bar: set in global scope, unexported, with 5 elements $bar[1]: length=3 value=|one| $bar[2]: length=8 value=|two 2| $bar[3]: length=1 value=|\t| $bar[4]: length=0 value=|| $bar[5]: length=1 value=|3| $bar: not set in universal scope $baz: set in local scope, unexported, with 0 elements $baz: set in global scope, unexported, with 0 elements $baz: not set in universal scope #################### # Testing -V with changed variables $foo: set in local scope, unexported, with 1 elements $foo[1]: length=9 value=|local foo| $foo: set in global scope, unexported, with 1 elements $foo[1]: length=10 value=|global foo| $foo: not set in universal scope $bar: set in local scope, unexported, with 5 elements $bar[1]: length=3 value=|one| $bar[2]: length=8 value=|two 2| $bar[3]: length=1 value=|\t| $bar[4]: length=0 value=|| $bar[5]: length=1 value=|3| $bar: set in global scope, unexported, with 1 elements $bar[1]: length=7 value=|bad bar| $bar: not set in universal scope $baz: set in local scope, unexported, with 0 elements $baz: set in global scope, unexported, with 1 elements $baz[1]: length=7 value=|bad baz| $baz: not set in universal scope Function name1 found Function name2 not found as expected Function name3 found Function name4 not found as expected #################### # Verify that functions can be copied. Tests against regression of issue #3601 #################### # Checking that the copied functions are identical other than the name function name1 --argument arg1 arg2 function name1a --argument arg1 arg2 1 = 1a function name3 --argument arg1 arg2 function name3a --argument arg1 arg2 3 = 3a #################### # Checking reserved names #################### # Checking `functions -q` without arguments False