Provided by: tcl8.5-doc_8.5.19-4_all bug

NAME

       global - Access global variables

SYNOPSIS

       global varname ?varname ...?
________________________________________________________________________________________________________________

DESCRIPTION

       This  command  has  no  effect  unless  executed in the context of a proc body.  If the global command is
       executed in the context of a proc body, it creates local variables linked  to  the  corresponding  global
       variables  (though  these  linked  variables,  like  those created by upvar, are not included in the list
       returned by info locals).

       If varname contains namespace qualifiers, the local variable's name is the unqualified name of the global
       variable, as determined by the namespace tail command.

       varname  is  always treated as the name of a variable, not an array element.  An error is returned if the
       name looks like an array element, such as a(b).

EXAMPLES

       This procedure sets the namespace variable ::a::x
              proc reset {} {
                  global a::x
                  set x 0
              }

       This procedure accumulates the strings passed to it in a global buffer, separated  by  newlines.   It  is
       useful  for  situations  when  you want to build a message piece-by-piece (as if with puts) but send that
       full message in a single piece (e.g. over a connection opened with socket or as part of  a  counted  HTTP
       response).
              proc accum {string} {
                  global accumulator
                  append accumulator $string \n
              }

SEE ALSO

       namespace(3tcl), upvar(3tcl), variable(3tcl)

KEYWORDS

       global, namespace, procedure, variable