diff options
author | dgp <dgp@users.sourceforge.net> | 2004-11-03 20:30:11 (GMT) |
---|---|---|
committer | dgp <dgp@users.sourceforge.net> | 2004-11-03 20:30:11 (GMT) |
commit | 34fde51726822ae684d2636d8e6b6b56744582cb (patch) | |
tree | b43881df749deba7c22d62dd22deef72b8a92ac6 | |
parent | ccdbf7af4fd7cd4694c8c3ade12c5e054d75750f (diff) | |
download | tcl-34fde51726822ae684d2636d8e6b6b56744582cb.zip tcl-34fde51726822ae684d2636d8e6b6b56744582cb.tar.gz tcl-34fde51726822ae684d2636d8e6b6b56744582cb.tar.bz2 |
* library/init.tcl ([unknown]): Corrections to the 2004-10-25 mods
to Aunt ??? in [unknown]. Flaws revealed by Itcl test suite, which
still apparently relies on this brokenness. Also added comment
suggesting the error message that any code using this hack *ought*
to receive in reply.
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | library/init.tcl | 6 |
2 files changed, 10 insertions, 2 deletions
@@ -12,6 +12,12 @@ 2004-11-03 Don Porter <dgp@users.sourceforge.net> + * library/init.tcl ([unknown]): Corrections to the 2004-10-25 mods + to Aunt ??? in [unknown]. Flaws revealed by Itcl test suite, which + still apparently relies on this brokenness. Also added comment + suggesting the error message that any code using this hack *ought* + to receive in reply. + * generic/tclTrace.c (TclCallVarTraces): Improved ability to debug * tests/incr-old.test (incr-old-2.6): errors during variable * tests/incr.test (incr-{1,2}.28): traces by preserving the diff --git a/library/init.tcl b/library/init.tcl index 96a2bad..c16e515 100644 --- a/library/init.tcl +++ b/library/init.tcl @@ -3,7 +3,7 @@ # Default system startup file for Tcl-based applications. Defines # "unknown" procedure and auto-load facilities. # -# RCS: @(#) $Id: init.tcl,v 1.66 2004/10/25 17:24:40 dgp Exp $ +# RCS: @(#) $Id: init.tcl,v 1.67 2004/11/03 20:30:21 dgp Exp $ # # Copyright (c) 1991-1993 The Regents of the University of California. # Copyright (c) 1994-1996 Sun Microsystems, Inc. @@ -171,10 +171,12 @@ proc unknown args { set cmd [lindex $args 0] if {[regexp "^:*namespace\[ \t\n\]+inscope" $cmd] && [llength $cmd] == 4} { + #return -code error "You need an {expand}" set arglist [lrange $args 1 end] set ret [catch {uplevel 1 ::$cmd $arglist} result opts] dict unset opts -errorinfo - return -options $opts $ret + dict incr opts -level + return -options $opts $result } set name [lindex $args 0] |