http://www.purl.org/tcl/home/man/tcl8.4/TclCmd/tclvars.htm ---- $::errorCode contains error information in various cases (see the man page above); one of these cases is the exit status of the last [exec] or [open] "|..."/[close] pair that received an error. See also [tclvars], [error], [errorInfo], and [return]. ---- Anyone have good programming practices for using this? (The [exec] page gives a start at handling $::errorCode for [[exec]] or [[open "|..."]].) DKF writes in [Interrupting loops]: : The global ''errorCode'' variable is probably the best way to detect what kind of error happened; all too often it is shamefully ignored by the majority of scripts, and yet it is far easier for scripts to handle it than the ''errorInfo'' variable or the message string itself. One way to encourage setting the ''errorCode'' would be to propose additional error classes. The standard ARITH, CHILD*, NONE, and POSIX only cover a fraction of all possible error conditions. How about: USERCANCEL: Processing cancelled by user. Most code that might [catch] this should probably re-throw it, possibly after doing some cleanup. More? ---- [[Say a few words on how '''errorCode''' is currently used, and ''not'' used, and how it might be better used. Relate to discussion [http://groups.google.com/group/comp.lang.tcl/browse_thread/thread/7b1d81ef58925eb1/].]] ---- !!!!!! %| [Tcl syntax help] | [Category Debugging] |% !!!!!!