Provided by: tcl8.6-doc_8.6.14+dfsg-1build1_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

Tcl                                                                                                 global(3tcl)