init version.
[bush.git] / tests.bak / dollar-at-star9.sub
blobe5062f79fd5cabe786d28e06b7ba0af0955bd04e
1 #   This program is free software: you can redistribute it and/or modify
2 #   it under the terms of the GNU General Public License as published by
3 #   the Free Software Foundation, either version 3 of the License, or
4 #   (at your option) any later version.
6 #   This program is distributed in the hope that it will be useful,
7 #   but WITHOUT ANY WARRANTY; without even the implied warranty of
8 #   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
9 #   GNU General Public License for more details.
11 #   You should have received a copy of the GNU General Public License
12 #   along with this program.  If not, see <http://www.gnu.org/licenses/>.
14 IFS=$' \t\n'   # or any other IFS
15 set -- ''
16 recho ${v= "$*" }
17 recho "$v"
18 unset -v v
20 IFS=''
21 set -- '' ''
22 recho ${v= "$*" }
23 recho "$v"
24 unset -v v
26 IFS=$' \t\n'   # or any other IFS
27 unset -v v
29 set -- ''
30 recho ${v= "$@" }
31 recho "$v"
32 unset v
33 recho ${v= $@ }
34 recho "$v"
35 unset v
36 recho ${v= $@"" }
37 recho "$v"
38 unset v
39 recho ${v= ${@} }
40 recho "$v"
41 unset v
42 recho ${v= ${@}"" }
43 recho "$v"
44 unset v
46 set -- '' ''
47 recho ${v= $@ }
48 recho "$v"
49 unset v
50 recho ${v= "$@" }
51 recho "$v"
52 unset v
53 recho "${v= $@}"
54 recho "$v"
55 unset v
56 recho ${v= "$@"}
57 recho "$v"
58 unset v
60 IFS=
62 set -- X
63 X=X
65 recho ${0+ "$@" }
66 recho ${0+ $@ }
67 recho ${0+ $* }
69 recho ${0+ "$X" }
70 recho ${0+ $X }
71 recho ${0+ $X }
73 recho ${0+ "$@" }
74 recho "$Y"
75 unset Y
76 recho ${0+ $@ }
77 recho "$Y"
78 unset Y
79 recho ${0+ $* }
80 recho "$Y"
81 unset Y
83 recho ${Y:= "$X" }
84 recho "$Y"
85 unset Y
86 recho ${Y:= $X }
87 recho "$Y"
88 unset Y
89 recho ${Y:= $X }
90 recho "$Y"
91 unset Y
93 IFS=
95 unset -v X Y
97 set -- X Y
98 X='X Y'
100 recho ${0+ "$@" }
101 recho ${0+ $@ }
102 recho ${0+ $* }
104 recho ${0+ "$X" }
105 recho ${0+ $X }
106 recho ${0+ $X }
108 recho ${Y:= "$@" }
109 recho "$Y"
110 unset Y
111 recho ${Y:= $@ }
112 recho "$Y"
113 unset Y
114 recho ${Y:= $* }
115 recho "$Y"
116 unset Y
118 recho ${Y:= "$X" }
119 recho "$Y"
120 unset Y
121 recho ${Y:= $X }
122 recho "$Y"
123 unset Y
124 recho ${Y:= $X }
125 recho "$Y"
126 unset Y
128 IFS=''
129 set -- ' X '
131 unset x y
133 x=$*
134 y=${*:1}
136 recho "$x"
137 recho "$y"
139 unset x y
141 recho ${x=$*}
142 recho ${y=${*:1}}
144 set -- b a
145 declare -A A=([b]= [a]=)
147 x=$*
148 y=${!A[*]}
150 unset A
152 recho "$x"
153 recho "$y"
155 unset x y
157 recho ${x=$*}
158 recho ${y=${!A[*]}}
160 unset x y
162 recho ${x-$*}
163 recho ${y-${!A[*]}}     # this isn't right yet
165 IFS=:
166 set -- a b
167 ind=*
169 unset x y
171 x=$*
172 y=${!ind}
174 recho "$x"
175 recho "$y"
177 unset x y
179 recho ${x-$*}
180 recho ${y-${!ind}}      # this isn't right yet
182 unset x y
184 recho ${x=$*}
185 recho ${y=${!ind}}
187 set -- ' X '
188 IFS=$' \t\n'
190 x=$*
191 y=${!ind};
193 recho "$x"
194 recho "$y"
196 IFS=''
197 x=$*
198 y=${!ind}
200 recho "$x"
201 recho "$y"
203 IFS=:
204 set -- a b
205 ind=*
207 unset x y
209 recho ${x-$*}
210 recho ${y-${!ind}}      # this isn't right yet
212 unset x y
214 recho ${x=$*}
215 recho ${y=${!ind}}
217 set -- ' X '
218 IFS=$' \t\n'
220 unset x y
222 x=$*
223 y=${!ind};
225 recho "$x"
226 recho "$y"
228 IFS=''
229 x=$*
230 y=${!ind}
232 recho "$x"
233 recho "$y"
235 IFS=''
236 set -- $'\177'
238 unset -v var
240 recho "${*:1}"
241 var=${*:1}
242 recho "$var"
244 unset var
245 recho ${var=${*:1}}
246 recho "$var"
248 declare -a a=($'\177')
250 unset var
251 var=${a[*]:0}
252 recho "$var"
254 unset var
255 recho ${var=${a[*]:0}}
256 unset var
258 set -- $'\177'
259 ind='*'
261 recho $*
262 var=${!ind}
263 recho "$var"
265 unset var
266 recho ${var=${!ind}}
267 recho "$var"
269 declare -A A=([0]=$'\177')
271 unset var
272 var=${A[*]:0}
273 recho "$var"
275 # this isn't really right yet
276 unset var
277 recho ${var=${A[*]:0}}
278 recho "$var"