aa bb cc dd
AAaa bb cc ddBB
aa bb cc dd
aa bb cc dd
DDDDDaa bb cc ddEEEEE
aa bb cc dd
outside: 42
aa bb cc dd
outside:
assignment: 12
func () 
{ 
    echo func-inside
}
abcde
67890
12345
argv[1] = <>
argv[1] = <>
aa,bb
JOBaa bb cc ddCONTROL
./comsub2.tests: line 68: p: command not found
NOTFOUND
./comsub2.tests: line 75: p: command not found
./comsub2.tests: line 75: p: command not found
expand_aliases      	off
expand_aliases      	off
outside:
./comsub2.tests: line 79: alias: p: not found
alias e='echo inside redefine'
expand_aliases      	off
1
expand_aliases      	on
2
expand_aliases      	on
outside:
./comsub2.tests: line 89: alias: p: not found
expand_aliases      	on
1
xx
expand_aliases      	on
2
xx
expand_aliases      	on
outside:
expand_aliases      	on
inside: 12 22 42
outside: 42 2
newlines


outside: 42
before: 1 2
after: 2
before: 1 2
after: 2
before: 1 2
after: 1 2
XnestedY
a nested b
one two
42
42
42
123
123
0
123
123
0
Mon Aug 29 20:03:02 EDT 2022
Mon Aug 29 20:03:02 EDT 2022
Mon Aug 29 20:03:02 EDT 2022
Mon Aug 29 20:03:02 EDT 2022
123
before 123
in for 123
outside before: value
inside before: value
inside after: funsub
inside: after false xxx
outside after: funsub
=====posix mode=====
outside before: value
.
declare -a a=([0]="1" [1]="2" [2]="3" [3]="4")
declare -- int="2"
after here-doc: 1
[1]-  Running                    sleep 1 &
[2]+  Running                    sleep 1 &
[1]-  Running                    sleep 1 &
[2]+  Running                    sleep 1 &
17772 26794
17772 26794
we should try rhs
comsub
and
funsub
in here-documents
after all they work here
and work here
a b c == 1 2 3
 == 1 2 3
before return
after func
1 2 3a b c
2 2
foobara b c
declare -- IFS=" "
*???
*???
yyy zzzz
argv[1] = <AA^ABB>
argv[1] = <AA^OBB>
argv[1] = <AA^?BB>
argv[1] = <^A>
argv[1] = <^A>
argv[1] = <^A>
argv[1] = <^A>
argv[1] = <^A>
argv[1] = <^A>
argv[1] = <^?>
argv[1] = <^?>
argv[1] = <^?>
argv[1] = <^?>
argv[1] = <^?>
argv[1] = <^?>
argv[1] = <AA^ABB>
argv[1] = <AA^ABB>
argv[1] = <AA^OBB>
argv[1] = <AA^OBB>
argv[1] = <AA^?BB>
argv[1] = <AA^?BB>
argv[1] = <^A>
argv[1] = <^A>
argv[1] = <^A>
argv[1] = <^A>
argv[1] = <^A>
argv[1] = <^A>
argv[1] = <^A>
argv[1] = <^A>
argv[1] = <^A>
argv[1] = <^A>
argv[1] = <^?>
argv[1] = <^?>
argv[1] = <^?>
argv[1] = <^?>
argv[1] = <^?>
argv[1] = <^?>
argv[1] = <^?>
argv[1] = <^?>
argv[1] = <^?>
argv[1] = <^?>
argv[1] = <AA^ABB>
argv[1] = <AA>
argv[2] = <BB>
argv[1] = <AA^ABB>
argv[1] = <AA>
argv[2] = <BB>
argv[1] = <AA^?BB>
argv[1] = <AA>
argv[2] = <BB>
argv[1] = <AA^?BB>
argv[1] = <AA>
argv[2] = <BB>
argv[1] = <AA BB>
argv[1] = <AA>
argv[2] = <BB>
argv[1] = <AA BB>
argv[1] = <AA BB>
argv[1] = <AA BB>
argv[1] = <AA>
argv[2] = <BB>
argv[1] = <AA BB>
argv[1] = <AA BB>
inside1-inside2-outside
BEFOREAA
BB
CC
AFTER
BEFOREAA
BB
CC
AFTER
unbalanced braces}}
combined comsubs
combined comsubs
inside
after: var = inside
after: 42 var = inside
var=inside 42
after: 0 var = inside
