diff options
| author | donal.k.fellows@manchester.ac.uk <dkf> | 2012-02-15 10:01:34 (GMT) |
|---|---|---|
| committer | donal.k.fellows@manchester.ac.uk <dkf> | 2012-02-15 10:01:34 (GMT) |
| commit | f5e80987720edb33880ddcde6f8c53a43302d45c (patch) | |
| tree | cbdc6a0031b4954092cd8a0cefe6fc5cb16a890f /generic/tclCompCmds.c | |
| parent | 9b926a2d596bce04967d6dc467f6ba8ad86a19fc (diff) | |
| parent | 56f2df801851e3fae331e26211e8f97bf11ecffd (diff) | |
| download | tcl-f5e80987720edb33880ddcde6f8c53a43302d45c.zip tcl-f5e80987720edb33880ddcde6f8c53a43302d45c.tar.gz tcl-f5e80987720edb33880ddcde6f8c53a43302d45c.tar.bz2 | |
* generic/tclCompCmds.c (TclCompileDictForCmd): [Bug 3487626]: Fix
crash in compilation of [dict for] when its implementation command is
used directly rather than through the ensemble.
Diffstat (limited to 'generic/tclCompCmds.c')
| -rw-r--r-- | generic/tclCompCmds.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/generic/tclCompCmds.c b/generic/tclCompCmds.c index 57a5370..18ff3dc 100644 --- a/generic/tclCompCmds.c +++ b/generic/tclCompCmds.c @@ -906,7 +906,7 @@ TclCompileDictForCmd( * Compile the loop body itself. It should be stack-neutral. */ - SetLineInformation(4); + SetLineInformation(3); CompileBody(envPtr, bodyTokenPtr, interp); TclEmitOpcode( INST_POP, envPtr); @@ -1112,6 +1112,7 @@ TclCompileDictUpdateCmd( ExceptionRangeStarts(envPtr, range); envPtr->currStackDepth++; + SetLineInformation(parsePtr->numWords - 1); CompileBody(envPtr, bodyTokenPtr, interp); envPtr->currStackDepth = savedStackDepth; ExceptionRangeEnds(envPtr, range); |
