init version.
[bush.git] / tests.bak / dollar-star7.sub
blobdb352bfcbef357da29b5ba4567802ab4ee468eec
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 # if IFS side effects in ${IFS=} assignments take place, how do you cope with
15 # later changes to IFS in the same set of expansions?  You've already
16 # committed to using the first character of the (old) IFS to expand $* in
17 # the previous expansions, and changing it to not include ' ', for instance,
18 # results in the first couple of ${*} below not being split at all
20 set -f -- a b c
22 unset -v IFS
23 printf '<%s> ' ${*}${IFS=}${*}${IFS:=-}"${*}"
24 echo
25 printf "after 1: IFS "
26 echo "${IFS-unset}"
27 recho "$*"
29 set -f -- a 'b c' d
30 unset -v IFS
31 printf '<%s> ' ${*}${IFS=}${*}${IFS:=-}"${*}"
32 echo
33 printf "after 2: IFS "
34 echo "${IFS-unset}"
35 recho "$*"
37 unset -v IFS
38 recho $*
39 recho "$*"
41 IFS=' '
42 recho $*
43 recho "$*"