diff options
| author | dgp <dgp@users.sourceforge.net> | 2013-09-19 15:05:55 (GMT) |
|---|---|---|
| committer | dgp <dgp@users.sourceforge.net> | 2013-09-19 15:05:55 (GMT) |
| commit | 4551ca9b2c151484b548e735e322182f8255c2ff (patch) | |
| tree | 966b73ff43ff8a55beeaa03c75d6b657e49a082f | |
| parent | 63e65ca6f1995944b98adfe63074f59ea6ba1552 (diff) | |
| parent | e4dfb0d689c07715c52b1a8b95391e5af075c02f (diff) | |
| download | tcl-4551ca9b2c151484b548e735e322182f8255c2ff.zip tcl-4551ca9b2c151484b548e735e322182f8255c2ff.tar.gz tcl-4551ca9b2c151484b548e735e322182f8255c2ff.tar.bz2 | |
Line numbers wrong in compiled [dict update].
| -rw-r--r-- | generic/tclCompCmds.c | 2 | ||||
| -rw-r--r-- | tests/dict.test | 6 |
2 files changed, 7 insertions, 1 deletions
diff --git a/generic/tclCompCmds.c b/generic/tclCompCmds.c index 45e856f..9829b9c 100644 --- a/generic/tclCompCmds.c +++ b/generic/tclCompCmds.c @@ -1633,7 +1633,7 @@ TclCompileDictUpdateCmd( infoIndex = TclCreateAuxData(duiPtr, &tclDictUpdateInfoType, envPtr); for (i=0 ; i<numVars ; i++) { - CompileWord(envPtr, keyTokenPtrs[i], interp, i); + CompileWord(envPtr, keyTokenPtrs[i], interp, 2*i+2); } TclEmitInstInt4( INST_LIST, numVars, envPtr); TclEmitInstInt4( INST_DICT_UPDATE_START, dictIndex, envPtr); diff --git a/tests/dict.test b/tests/dict.test index f8d62f1..797ab46 100644 --- a/tests/dict.test +++ b/tests/dict.test @@ -1893,6 +1893,12 @@ test dict-23.7 {CompileWord OBOE} { } {} }} [linenumber] } 2 +test dict-23.8 {CompileWord OBOE} { + apply {n { + dict update foo {*}{ + } [return [incr n -[linenumber]]] x {} + }} [linenumber] +} 1 rename linenumber {} test dict-24.22 {dict map results (non-compiled)} { |
