Provided by: tcl8.4-doc_8.4.20-8_all bug

NAME

       unset - Delete variables

SYNOPSIS

       unset ?-nocomplain? ?--? ?name name name ...?
_________________________________________________________________

DESCRIPTION

       This  command  removes  one or more variables.  Each name is a variable name, specified in
       any of the ways acceptable to the set command.  If a name refers to an element of an array
       then  that element is removed without affecting the rest of the array.  If a name consists
       of an array name with no parenthesized index, then the entire array is deleted.  The unset
       command  returns  an  empty  string  as  result.  If -nocomplain is specified as the first │
       argument, any possible errors are suppressed.  The option may not be abbreviated, in order │
       to  disambiguate  it from possible variable names.  The option -- indicates the end of the │
       options, and should be used if you wish to remove a variable with the same name as any  of │
       the  options.  If an error occurs, any variables after the named one causing the error are
       not deleted.  An error can occur when the named variable doesn't exist, or the name refers
       to  an  array  element but the variable is a scalar, or the name refers to a variable in a
       non-existent namespace.

EXAMPLE

       Create an array containing a mapping from some numbers to their  squares  and  remove  the
       array elements for non-prime numbers:
              array set squares {
                  1 1    6 36
                  2 4    7 49
                  3 9    8 64
                  4 16   9 81
                  5 25  10 100
              }

              puts "The squares are:"
              parray squares

              unset squares(1) squares(4) squares(6)
              unset squares(8) squares(9) squares(10)

              puts "The prime squares are:"
              parray squares

SEE ALSO

       set(3tcl), trace(3tcl), upvar(3tcl)

KEYWORDS

       remove, variable