summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
| | * | | Add several tests to check consistency of stack traces.dgp2013-08-142-0/+94
| | | | |
| | | | * merge trunkdgp2013-08-142-0/+65
| | | | |\ | | | |_|/ | | |/| |
| | * | | [3610404] Re-resolution of command after enter traces invalidate epoch.dgp2013-08-142-0/+65
| | |\ \ \ | | | | | | | | | | | | Make sure context is such that correct resolution happens.
| | | * \ \ merge trunkbug_3610404dgp2013-08-14205-6902/+12206
| | | |\ \ \ | | | |/ / / | | |/| | |
| | | * | | added some test cases, based on bug reportdkf2013-04-091-0/+63
| | | | | |
| | | * | | Use the double-secret iPtr->lookupNsPtr field to get post-enter-tracedgp2013-04-091-0/+1
| | | | | | | | | | | | | | | | | | re-resolutions of commands done in the right context for oo forwards.
| | | | | * merge trunkdgp2013-08-14203-6898/+12187
| | | | | |\ | | | |_|_|/ | | |/| | |
| | * | | | [a16752c252] Correct failure to call cmd deletion callbacks.dgp2013-08-143-26/+15
| | |\ \ \ \
| | * \ \ \ \ Arrange for both execution traces and [info frame] to get their pre-substdgp2013-08-144-101/+70
| | |\ \ \ \ \ | | | | | | | | | | | | | | | | source strings from a common routine.
| | | * | | | | Consolidate some helper routines.dgp_bye_ctx_eval_flagdgp2013-08-143-29/+19
| | | | | | | |
| | | * | | | | Only schedule leave traces if enter traces complete successfully.dgp2013-08-141-12/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This avoids a memleak, and opens a data slot, so we can pass objc, objv without the need to copy them into a list value.
| | | * | | | | Use a new flag value TCL_EVAL_SOURCE_IN_FRAME passed in by callers todgp2013-08-123-50/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | determine whether the pre-subst source information in a CmdFrame is to be used. This takes the place of numLevels cross checking, so that field is removed. Routines are consolidated as well.
| | | * | | | | merge trunkdgp2013-08-121-1/+1
| | | |\ \ \ \ \ | | | |/ / / / / | | |/| | | | |
| | * | | | | | Never guess non-existing timezone name "America/Brasilia" on Windows. ↵jan.nijtmans2013-08-111-1/+1
| | |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | Reported by Arnulf Wiedemann
| | * \ \ \ \ \ \ Many simplifications to the TIP 280 machinery.dgp2013-08-078-170/+39
| | |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Removed support for non-NULL invoker when TCL_EVAL_DIRECT requested. * Eliminated TCL_EVAL_CTX eval flag. * Removed Tcl_Preserve-ability of ContLineLoc pointers. * Removed clLoc field of CompileEnv struct.
| | * \ \ \ \ \ \ \ The value TCL_LOCATION_EVAL_LIST in the type field of a CmdFrame appears todgp2013-08-067-97/+59
| | |\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | exist only for the sake of taking great pains to make sure that pure list values remain pure list values. The value of pure list values is no longer what it once was. For a long long time now, any canonical list values have been equally good.
| | | | | | * | | | | Arrange for both execution traces and [info frame] to get their pre-substdgp2013-08-104-31/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | source strings from a common routine, with care taken to reduce copying by that routine.
| | | | | | * | | | | Revised GetCommandSource() can (and thus should) return a normal zerodgp2013-08-091-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | refcount value.
| | | | | | * | | | | Revise GetCommandSource() to return a normal Tcl_Obj value.dgp2013-08-071-18/+8
| | | | | | | | | | |
| | | | | | * | | | | Give (objc, objv) their own ride from enter to leave traces.dgp2013-08-071-4/+4
| | | | | |/ / / / / | | | | |/| | | | |
| | | | * | | | | | Remove Tcl_Preserve support for ContLineLoc values. It's not needed.dgp2013-08-073-56/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows the clLoc field of CompileEnv struct to go away too.
| | | | * | | | | | Test for TclContinuationsGet() usage, and simplifications.dgp2013-08-072-17/+7
| | | | | | | | | |
| | | | * | | | | | Replace potentially memleak creating safety check of a "cannot happen"dgp2013-08-071-8/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | condition with an assertion.
| | | | * | | | | | Add comment stating new limitation on Tcl(NR)EvalObjEx() interface.dgp2013-08-071-0/+5
| | | | | | | | | |
| | | | * | | | | | All use of the evalFlag value TCL_EVAL_CTX is unused by the code anddgp2013-08-062-88/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | unreachable by extensions. This checkin removes all the code supporting that flag value. The consequence is that all the calls to TclNREvalObjEx() and its callers that are currently choosing not to pass the TCL_EVAL_DIRECT flag in when they pass in a non-NULL invoker will no longer be free to change their mind. That might be reason not to adopt this change.
| | | | * | | | | | Add assertions that will guide and protect more discovery of dead code for ↵dgp2013-08-062-3/+7
| | | |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | elimination.
| | | * | | | | | Drop TCL_LOCATION_EVAL_LIST now that it is unused.dgp_bye_location_eval_listdgp2013-08-061-4/+0
| | | | | | | | |
| | | * | | | | | Eliminate the union that is no longer needed.dgp2013-08-066-34/+26
| | | | | | | | |
| | | * | | | | | Revert the changes that went too far and broke things.dgp2013-08-061-13/+26
| | | | | | | | |
| | | * | | | | | The value TCL_LOCATION_EVAL_LIST in the type field of a CmdFrame appears todgp2013-08-064-87/+48
| | |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | exist only for the sake of taking great pains to make sure that pure list values remain pure list values. The value of pure list values is no longer what it once was. For a long long time now, any canonical list values have been equally good. This branch is Work In Progress eliminating the complication of the additional type value. Currently some minor botches are breaking execution tracing tests.
| | * | | | | | Mark unixforkevent-1.1 nonPortable, until proven on more platforms. jan.nijtmans2013-08-054-3/+11
| | |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | Make sure that when testing for pthread_atfork the thread library is taken into account.
| | * | | | | | | [3611643fff]: Support TclOO in autoload mechanism.dkf2013-08-032-0/+19
| | | | | | | | |
| | * | | | | | | Deal with the elaborate rip-apart-a-metaclass case as well.dkf2013-08-023-3/+30
| | | | | | | | |
| | * | | | | | | [9d61624b3d]: Stop crashes when emptying the superclass slot.dkf2013-08-022-19/+46
| | | | | | | | |
| | * | | | | | | [1905562] [8d2c0da36d] Raise the recursion limits on regexps to allowdgp2013-08-012-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | existing regexps "in the wild" to continue working with Tcl 8.6. Latest example comes from DejaGnu.
| | * | | | | | | Tcl_InitNotifier: Bug [a0bc856dcd]. Start notifier thread again if we were ↵jan.nijtmans2013-08-013-1/+163
| | |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | forked, to solve Rivet bug 55153
| | * \ \ \ \ \ \ \ Make sure that "string is space \u202f" will continue to return "1", even if ↵jan.nijtmans2013-07-294-3/+10
| | |\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | in future Unicode this character (NARROW_NO_BREAK_SPACE) will cease to be a space. See: [http://www.unicode.org/review/pri249/]. Don't hardcode "tclWinError.o" for Cygwin
| | * | | | | | | | | Simplify AuxData access with a macro.dgp2013-07-274-1/+15
| | | | | | | | | | |
| | * | | | | | | | | [6585b21ca8] [regexp {(\w).*?\1} abb] failed to match. Thanks to Tom Lane ↵dgp2013-07-262-6/+5
| | |\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | for passing on the discovery in Postgres.
| | * \ \ \ \ \ \ \ \ \ Move test for pthread_atfork inside SC_ENABLE_THREADSjan.nijtmans2013-07-263-105/+3
| | |\ \ \ \ \ \ \ \ \ \
| | * | | | | | | | | | | Put Cygwin's tclWinError.o in PLAT_OBJS, not in DL_OBJSjan.nijtmans2013-07-253-3/+8
| | | | | | | | | | | | |
| | * | | | | | | | | | | Demonstrate and fix memory leak in Tcl_ParseVar().dgp2013-07-242-0/+22
| | |\ \ \ \ \ \ \ \ \ \ \
| | * | | | | | | | | | | | Mark commands with potential to compile expansion arguments (as [list] does).dgp2013-07-243-0/+18
| | | | | | | | | | | | | |
| | * | | | | | | | | | | | more disabled code removaldgp2013-07-242-53/+0
| | | | | | | | | | | | | |
| | * | | | | | | | | | | | Remove outdated, disabled code.dgp2013-07-231-503/+0
| | | | | | | | | | | | | |
| | * | | | | | | | | | | | Remove outdated comment. Stack depths are well checked now.dgp2013-07-231-3/+0
| | | | | | | | | | | | | |
| | * | | | | | | | | | | | Stop checking stack depth in [catch] compiler.dgp2013-07-231-10/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Stack depth is checked in compiles of *all* Tcl commands/scripts/bodies in debug builds already.
| | * | | | | | | | | | | | Add "testfork" test command. Not used in any test-case yetjan.nijtmans2013-07-233-103/+152
| | |\ \ \ \ \ \ \ \ \ \ \ \
| | * \ \ \ \ \ \ \ \ \ \ \ \ Rewrite of the TclCompileScript() routine.dgp2013-07-1810-227/+654
| | |\ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Primarily this breaks that large, rather convoluted routine into many smaller more single-purpose routines for greater clarity. This also permits more sharing of function components. Ensemble compiles now share the same low level routines as top-level command compiles. This refactoring should also have the benefit of easing merging between branches by better locating patches according to what function or data structure they tweak. Also in this checkin: Minimized calls to Tcl_ResetResult() during compile. Several commands compile their detected syntax errors into bytecode that reports the syntax error. Significant reform to the TIP 280 machinery, including elimination of the litInfo hash table. Its function of finding the index of a compiled command in a script from a pc value has been redone using the codeDelta information already stored in ByteCode.
| | | * | | | | | | | | | | | | [assemble] compile syntax error into bytecode reporting syntax error message.dgp_tcs_rewritedgp2013-07-181-7/+3
| | | | | | | | | | | | | | | |