diff options
author | dkf <donal.k.fellows@manchester.ac.uk> | 2005-09-06 14:40:10 (GMT) |
---|---|---|
committer | dkf <donal.k.fellows@manchester.ac.uk> | 2005-09-06 14:40:10 (GMT) |
commit | 2a03bdad453a632583f84f71bf5091c682999d90 (patch) | |
tree | ee5ecb28aed27dfd77a3aaad1ce38dba487777c1 /tests | |
parent | 6933a16b87680a7df40757d369a9a6d6a6f333de (diff) | |
download | tcl-2a03bdad453a632583f84f71bf5091c682999d90.zip tcl-2a03bdad453a632583f84f71bf5091c682999d90.tar.gz tcl-2a03bdad453a632583f84f71bf5091c682999d90.tar.bz2 |
Add flag to lists so that evaluating contexts can handle them efficiently much
of the time even when they are not pure. The flag works by keeping track of
when the string rep was derived from the internal rep.
Diffstat (limited to 'tests')
-rw-r--r-- | tests/eval.test | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/tests/eval.test b/tests/eval.test index 22de6af..eefa96f 100644 --- a/tests/eval.test +++ b/tests/eval.test @@ -11,7 +11,7 @@ # See the file "license.terms" for information on usage and redistribution # of this file, and for a DISCLAIMER OF ALL WARRANTIES. # -# RCS: @(#) $Id: eval.test,v 1.6 2004/05/19 12:23:13 dkf Exp $ +# RCS: @(#) $Id: eval.test,v 1.7 2005/09/06 14:40:11 dkf Exp $ if {[lsearch [namespace children] ::tcltest] == -1} { package require tcltest @@ -58,6 +58,29 @@ test eval-2.5 {error in eval'ed command: setting errorInfo} { error \"test error\" }\"" +test eval-3.1 {eval and pure lists} { + eval [list list 1 2 3 4 5] +} {1 2 3 4 5} +test eval-3.2 {concatenating eval and pure lists} { + eval [list list 1] [list 2 3 4 5] +} {1 2 3 4 5} +test eval-3.3 {eval and canonical lists} { + set cmd [list list 1 2 3 4 5] + # Force existance of utf-8 rep + set dummy($cmd) $cmd + unset dummy($cmd) + eval $cmd +} {1 2 3 4 5} +test eval-3.4 {concatenating eval and canonical lists} { + set cmd [list list 1] + set cmd2 [list 2 3 4 5] + # Force existance of utf-8 rep + set dummy($cmd) $cmd + set dummy($cmd2) $cmd2 + unset dummy($cmd) dummy($cmd2) + eval $cmd $cmd2 +} {1 2 3 4 5} + # cleanup ::tcltest::cleanupTests return |