summaryrefslogtreecommitdiffstats
path: root/ChangeLog
Commit message (Collapse)AuthorAgeFilesLines
* 2007-07-11 Miguel Sofer <msofer@users.sf.net>Miguel Sofer2007-07-111-0/+8
| | | | | | | | * generic/tclCompCmds.c (TclCompileWhileCmd): * generic/tclCompile.c (TclCompileScript): Corrected faulty avoidance of INST_START_CMD when the first opcode in a script is within a loop (as produced by 'while 1'), so that the corresponding command is properly counted [Bug 1752146].
* * generic/tclCompExpr.c: Added a "parseOnly" flag argument todgp2007-07-111-0/+12
| | | | | | | | | | | ParseExpr() to indicate whether the caller is Tcl_ParseExpr(), with an end goal of filling a Tcl_Parse with Tcl_Tokens representing the parsed expression, or TclCompileExpr() with the goal of compiling and executing the expression. In the latter case, more aggressive conversion of QUOTED and BRACED lexeme to literals is done. In the former case, all such conversion is avoided, since Tcl_Token production would revert it anyway. This enables simplifications to the GenerateTokensForLiteral() routine as well.
* Renamed some variables fordgp2007-07-101-1/+2
| | | | clarity and replaced some cryptic logic with more readable macros.
* Removed some unused counter variables.dgp2007-07-101-0/+1
|
* * generic/tclCompExpr.c: Added a field for operator precedencedgp2007-07-101-0/+9
| | | | | | | | to be stored directly in the parse tree. There's no memory cost to this addition, since that memory would have been lost to alignment issues anyway. Also, converted precedence definitions and lookup tables to use symbolic constants instead of raw number for improved readability, and continued extending/improving/correcting comments.
* * generic/tclCompExpr.c: Revision so that the END lexeme neverdgp2007-07-091-0/+6
| | | | | | | gets inserted into the parse tree. Later tree traversal never reaches it since its location in the tree is not variable. Starting and stopping with the START lexeme (node 0) is sufficient. Also finished lexeme code commentary.
* * generic/tclCompExpr.c: Added missing creation and returndgp2007-07-091-0/+5
| | | | of the Tcl_Parse fields that indicate error conditions. [Bug 1749987]
* * library/init.tcl (unknown): Corrected inconsistent error messagedgp2007-07-051-0/+5
| | | | in interactive [unknown] when empty command is invoked. [Bug 1743676]
* * generic/tclNamesp.c (SetNsNameFromAny):Miguel Sofer2007-07-051-0/+6
| | | | | * generic/tclObj.c (SetCmdNameFromAny): Avoid unnecessary ckfree/ckalloc when the old structs can be reused.
* * generic/tclNamesp.c: Fix case where a FQ cmd or ns was beingMiguel Sofer2007-07-041-0/+6
| | | | | * generic/tclObj.c: cached in a different interp, tkcon [Bug 1747512]
* * generic/tclCompExpr.c: Revised #define values so that theredgp2007-07-031-0/+5
| | | | is now more expansion room to define more BINARY operators.
* * generic/tcl.h: Removed TCL_PRESERVE_BINARY_COMPATIBILITY anddgp2007-07-021-0/+7
| | | | | | | | * generic/tclHash.c: any code enabled when it is set to 0. We will * generic/tclStubInit.c: always want to preserve binary compat of the structs that appear in the interface through the 8.* series of releases, so it's pointless to drag around this never-enabled alternative.
* Simplify string hashing a little. [FRQ 951168]dkf2007-07-021-2/+9
|
* * generic/tclIO.c: Removed dead code.dgp2007-07-021-0/+3
| | | | * unix/tclUnixChan.c:
* * generic/tclCompExpr.c: Removed dead code, old implementationsdgp2007-07-021-0/+6
| | | | | * generic/tclEvent.c: of expr parsing and compiling, including the * generic/tclInt.h: routine TclFinalizeCompilation().
* Plug a memory leak caused by a missing Tcl_DecrRefCount on an error path. ↵dkf2007-06-301-23/+28
| | | | [Bug 1717186]
* Prevent RemeberSyncObj() from growing the syncvasiljevic2007-06-301-0/+6
| | | | | object lists by reusing already free'd slots, if possible. See discussion on Bug 1726873 for more information.
* Improved documentation of Tcl_DictObjDone to make it clearer how to use it. ↵dkf2007-06-291-0/+5
| | | | [Bug 1710795]
* * generic/tclAlloc.c: on Darwin, ensure memory allocated bydas2007-06-291-1/+18
| | | | | * generic/tclThreadAlloc.c: the custom TclpAlloc()s is aligned to 16 byte boundaries (as is the case with the Darwin system malloc).
* * generic/tclBasic.c: Removed dead code, including thedgp2007-06-281-0/+14
| | | | | | | | | | | | | * generic/tclExecute.c: entire file tclMathOp.c. * generic/tclInt.h: * generic/tclMathOp.c (removed): * generic/tclTestObj.c: * win/tclWinFile.c: * unix/Makefile.in: Updated to reflect deletion of tclMathOp.c. * win/Makefile.in: * win/makefile.bc: * win/makefile.vc:
* Silence constness warnings for TclStackFree when building with msvc.patthoyts2007-06-281-0/+8
|
* * generic/tclVar.c (UnsetVarStruct): fix possible segfault withMiguel Sofer2007-06-281-0/+4
| | | | recent streamlining.
* * generic/tclTrace.c: Corrected broken trace reversal logic indgp2007-06-271-0/+7
| | | | | | * generic/tclTest.c: TclCheckInterpTraces that led to infinite loop * tests/trace.test: when multiple Tcl_CreateTrace traces were set and one of them did not fire due to level restrictions. [Bug 1743931].
* * generic/tclBasic.c (TclEvalEx): Moved some arrays from thedgp2007-06-261-0/+5
| | | | C stack to the Tcl stack.
* * generic/tclVar.c (UnsetVarStruct): more streamlining.Miguel Sofer2007-06-261-0/+4
|
* * generic/tclExecute.c: Safety checks to avoid crashes in thedgp2007-06-261-0/+6
| | | | | TclStack* routines when called with an incompletely initialized interp. [Bug 1743302]
* * generic/tclVar.c (UnsetVarStruct): fixing incomplete change,Miguel Sofer2007-06-251-1/+2
| | | | more streamlining.
* * generic/tclVar.c (UnsetVarStruct): fixing incomplete changeMiguel Sofer2007-06-251-0/+4
|
* * generic/tclVar.c (TclDeleteCompiledLocalVars): removed inliningMiguel Sofer2007-06-241-0/+5
| | | | | | that ended up not really optimising (limited benchmarks). Now calling UnsetVarStruct (streamlined old code is #ifdef'ed out, in case better benchmarks do show a difference).
* * generic/tclVar.c (UnsetVarStruct): fixed a leak introduced inMiguel Sofer2007-06-241-0/+5
| | | | last commit.
* * generic/tclVar.c (UnsetVarStruct, TclDeleteVars): made the logicMiguel Sofer2007-06-231-0/+10
| | | | | | | | | slightly clearer, eliminated some duplicated code. *** POTENTIAL INCOMPATIBILITY *** (tclInt.h and Var struct users) The core never builds VAR_LINK variable to have traces. Such a "monster", should one exist, will now have its unset traces called *before* it is unlinked.
* * macosx/tclMacOSXNotify.c (AtForkChild): don't call CoreFoundationdas2007-06-231-5/+9
| | | | APIs after fork() on systems where that would lead to an abort().
* * generic/tclCmdIL.c: More conversions to use TclStackAlloc.dgp2007-06-221-0/+3
| | | | * generic/tclScan.c:
* * generic/tclExecute.c: Revised TclStackRealloc() signature to betterdgp2007-06-221-0/+8
| | | | | | | * generic/tclInt.h: parallel (and fall back on) Tcl_Realloc. * generic/tclNamesp.c (TclResetShadowesCmdRefs): Replaced ckrealloc based allocations with TclStackRealloc allocations.
* * generic/tclBasic.c: Move most instances of the Tcl_Parse structdgp2007-06-211-0/+7
| | | | | | * generic/tclCompExpr.c: off the C stack and onto the Tcl stack. * generic/tclCompile.c: This is a rather large struct (> 3kB). * generic/tclParse.c:
* * generic/tclBasic.c (TEOvI): Made sure that leaveMiguel Sofer2007-06-211-0/+8
| | | | | | | * generic/tclExecute.c (INST_INVOKE): traces that were created * tests/trace.test (trace-36.2): during execution of an originally untraced command do not fire [Bug 1740962], partial fix.
* Fix comments referring to {expand}. [Bug 1600859]dkf2007-06-211-4/+9
|
* * generic/tclVar.c: streamline namespace vars deletion: onlyMiguel Sofer2007-06-201-0/+5
| | | | compute the variable's full name if the variable is traced.
* * generic/tclInt.decls: Revised the interfaces of the routinesdgp2007-06-201-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * generic/tclExecute.c: TclStackAlloc and TclStackFree to make them easier for callers to use (or more precisely, harder to misuse). TclStackFree now takes a (void *) argument which is the pointer intended to be freed. TclStackFree will panic if that's not actually the memory the call will free. TSA/TSF also now tolerate receiving (interp == NULL), in which case they simply fall back to be calls to Tcl_Alloc/Tcl_Free. * generic/tclIntDecls.h: make genstubs * generic/tclBasic.c: Updated callers * generic/tclCmdAH.c: * generic/tclCmdIL.c: * generic/tclCompCmds.c: * generic/tclCompExpr.c: * generic/tclCompile.c: * generic/tclFCmd.c: * generic/tclFileName.c: * generic/tclIOCmd.c: * generic/tclIndexObj.c: * generic/tclInterp.c: * generic/tclNamesp.c: * generic/tclProc.c: * generic/tclTrace.c: * unix/tclUnixPipe.c:
* * tools/tcltk-man2html.tcl: revamp of html doc output to use CSS,hobbs2007-06-201-0/+5
| | | | standardized headers, subheaders, dictionary sorting of names.
* * tools/tcltk-man2html.tcl: clean up copyright merging and output.hobbs2007-06-191-0/+5
| | | | clean up coding constructs.
* * generic/tclCmdIL.c (InfoFrameCmd):Miguel Sofer2007-06-181-0/+6
| | | | | | | * generic/tclCmdMZ.c (Tcl_SwitchObjCmd): * generic/tclCompile.c (TclInitCompileEnv): * generic/tclProc.c (Tcl_ProcObjCmd, SetLambdaFromAny): Moved the CmdFrame off the C stack and onto the Tcl stack.
* * generic/tclExecute.c (TEBC): Moved the CmdFrame off the C stackMiguel Sofer2007-06-181-2/+7
| | | | and onto the Tcl stack, between the catch and the execution stacks
* * generic/tclBasic.c (TclEvalEx,TclEvalObjEx): Moved the CmdFrame offdgp2007-06-181-2/+2
| | | | the C stack and onto the Tcl stack.
* * generic/tclBasic.c (TclEvalEx): Moved the CmdFrame off the C ↵dgp2007-06-181-0/+5
| | | | | | stack and onto the Tcl stack.
* Fix [Bug 1738542]dkf2007-06-171-0/+6
|
* * generic/tclProc.c (TclObjInterpProcCore): Use switch instead of adkf2007-06-161-12/+17
| | | | chain of if's for a modest performance gain and a little more clarity.
* * generic/tclCompCmds.c: Simplified [variable] compiler andMiguel Sofer2007-06-151-0/+4
| | | | | * generic/tclExecute.c: executor. Missed updates to "there is always a valid frame".
* * generic/tclCompile.c: reverted TclEvalObjvInternal andMiguel Sofer2007-06-151-5/+10
| | | | | | | | | | | | * generic/tclExecute.c: INST_INVOKE to essentially what they were * generic/tclBasic.c: previous to the commit of 2007-04-03 [Patch 1693802] and the subsequent optimisations, as they break the new trace tests described below. * generic/trace.test: added tests 36 to 38 for dynamic trace creation and addition. These tests expose a change in dynamics due to a recent round of optimisations. The "correct" behaviour is not described in docs nor TIP 62.
* * generic/trace.test: added tests 36.* for dynamic trace creationMiguel Sofer2007-06-151-0/+8
| | | | | | | and addition. These tests expose a change in dynamics due to a recent round of optimisations. The "correct" behaviour is not described in docs nor TIP 62. Currently test 36.2 fails, the opts will be rolled back.