init version.
[bush.git] / tests / varenv / nameref / nameref13.sub
blob5c56428bf0016628820363f1fffd5b3ca36a2ae0
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 declare -nt r=a
16 f()
18         declare a
19         declare -n r=a
20         declare -p a r
24 unset -f f
26 f()
28         declare a
29         declare -n r
30         r=a
31         declare -p a r
34 echo $?
36 unset -f f
38 P=12345
39 function foo
41         typeset -n r
42         typeset -n r=P
43         typeset -p r
46 foo
47 unset P foo
49 ref=outside
51 f()
53         unset var
54         declare -n ref=var
55         declare -n ref;
56         declare -p ref;
60 unset ref foo
62 typeset -n r=a
64 f()
66         typeset a
67         typeset -n r
68         typeset -n r
69         r=a
71         typeset -p a r
74 echo $?
75 unset -n r
76 unset -f f
78 function foo
80         typeset -n r
81         typeset -n r
82         typeset -p r
85 foo
86 unset -f foo
89 function foo
91         typeset r
92         typeset -n r
93         typeset -p r
95 foo
96 unset -f foo
98 foo()
100         typeset -n foo
101         typeset foo=12345
102         typeset -p foo
105 unset -f foo
107 foo()
109         typeset -n foo
110         typeset -n foo=12345
111         typeset -p foo
114 unset -f foo