init version.
[bush.git] / tests.bak / func.right
blobf4db4d168614a8fe2ec9ff435becb333006ea365
1 a returns 5
2 b returns 4
3 c returns 3
4 d returns 2
5 in e
6 e returned 25
7 x is 25
8 ZZ
9 abcde
10 defghi
14 AVAR
15 AVAR
16 foo
17 foo
18 AVAR
22 f1 () 
23
24     ( return 5 );
25     status=$?;
26     echo $status;
27     return $status
29 before: try to assign to FUNCNAME
30 outside: FUNCNAME =
31 before: FUNCNAME = func
32 FUNCNAME = func2
33 after: FUNCNAME = func
34 outside2: FUNCNAME =
35 function
36 zf is a function
37 zf () 
38
39     echo this is zf
41 f is a function
42 f () 
43
44     echo f-x;
45     echo f-y
46 } 1>&2
47 subshell
48 f is a function
49 f () 
50
51     echo f-x;
52     echo f-y
53 } 1>&2
54 f2 is a function
55 f2 () 
56
57     echo f2-a;
58     function f3 () 
59     { 
60         echo f3-a;
61         echo f3-b
62     } 1>&2;
63     f3
65 subshell
66 f2 is a function
67 f2 () 
68
69     echo f2-a;
70     function f3 () 
71     { 
72         echo f3-a;
73         echo f3-b
74     } 1>&2;
75     f3
77 f4 is a function
78 f4 () 
79
80     echo f4-a;
81     function f5 () 
82     { 
83         echo f5-a;
84         echo f5-b
85     } 1>&2;
86     f5
87 } 2>&1
88 subshell
89 f4 is a function
90 f4 () 
91
92     echo f4-a;
93     function f5 () 
94     { 
95         echo f5-a;
96         echo f5-b
97     } 1>&2;
98     f5
99 } 2>&1
100 testgrp is a function
101 testgrp () 
103     echo testgrp-a;
104     { 
105         echo tg-x;
106         echo tg-y
107     } 1>&2;
108     echo testgrp-b
110 subshell
111 testgrp is a function
112 testgrp () 
114     echo testgrp-a;
115     { 
116         echo tg-x;
117         echo tg-y
118     } 1>&2;
119     echo testgrp-b
121 funca is a function
122 funca () 
124     ( echo func-a )
126 funcb is a function
127 funcb () 
129     ( echo func-b )
131 funcc is a function
132 funcc () 
134     ( echo func-c ) 2>&1
136 func-a
137 func-b
138 func-c
139 foo-bar
140 foo-bar () 
142     :
144 expect 5 10
145 5 10
146 expect 20
148 expect 5 20
149 5 20
150 expect 5 20
151 5 20
152 expect 2 40
153 2 40
154 expect 5 20
155 5 20
156 ./func4.sub: line 23: foo: maximum function nesting level exceeded (100)
158 after: f = 100
159 ./func4.sub: line 23: foo: maximum function nesting level exceeded (100)
161 after: f = 100
163 after FUNCNEST reset: f = 201
165 after FUNCNEST unset: f = 201
166 ./func4.sub: line 23: foo: maximum function nesting level exceeded (20)
168 after FUNCNEST assign: f = 38