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.
5#
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.
10#
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/>.
13#
14# these should be errors
15typeset -n x=x
16#echo $x -- $?
17
18typeset -n x[3]=x
19#echo $x -- $?
20
21x=(the browns suck)
22y=(one two three)
23# should be an error but not disturb the current contents of x
24# maybe rethink that later
25typeset -n x=y
26echo $x -- $?
27
28typeset -n
29
30unset x y
31
32y=42
33typeset -i x=1
34
35# the integer attribute causes arithmetic eval to be done
36# we should not allow namerefs to non-identifiers
37typeset -n x=y
38echo $x -- $?
39
40typeset +n x
41echo $x -- $?
42
43# same kind of thing
44
45unset -n x
46unset y
47
48set -- first second third
49y=2
50typeset -i x=1
51
52typeset -n x=y
53echo $x -- $?
54echo ${x} -- $?
55
56typeset +n x
57echo $x -- $?
58