Provided by: tcl8.6-doc_8.6.1-4ubuntu1_all bug

NAME

       global - Access global variables

SYNOPSIS

       global ?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