summaryrefslogtreecommitdiffstats
path: root/generic/tclBasic.c
Commit message (Collapse)AuthorAgeFilesLines
* [a4494e28ed] Use flag bit instead of NULL pointer to suppressdgp2014-02-061-10/+29
|\ | | | | | | | | | | teardown list of imported commands when the original command gets re-created. This prevents the panic otherwise possible when the invalid state represented by the NULL pointer is encountered during a command delete trace.
| * [a4494e28ed] Use flag bit instead of NULL pointer to suppress teardown list ofdgp2014-02-061-10/+29
| | | | | | | | | | imported commands when the original command gets re-created. This prevents the panic otherwise possible when the invalid state represented by the NULL pointer is encountered during a command delete trace.
* | minor tidying updkf2014-01-221-3/+2
| |
* | [a90d9331bc]: must not crash when yieldto called in vanishing namespacedkf2014-01-221-11/+7
| |
* | implementation of [yieldto] in bytecodedkf2014-01-211-1/+1
| |
* | merge trunkdkf2013-12-231-0/+3
|\ \
| * | Making the optimizer pluggable by extensions; please review for committing ↵mig_tmp_optimizemig2013-12-181-0/+3
| | | | | | | | | | | | to trunk
* | | First step in compiling [concat]: the trivial cases.dkf2013-10-241-1/+1
| | |
* | | Added 'linsert' compiler. Factored out constant list index parser.dkf2013-10-051-1/+1
|/ /
* | [86ceb4e2b6] Improve reaction when multiple *tm files purport to offer thedgp2013-09-071-2/+22
|\ \ | |/ | | | | | | | | | | same version of the same package. Prefer the file that comes first on the tm path. Makes TCL*_TM_PATH variables more useful. Thanks to Gustaf Neumann for the suggestion. [a16752c252] Revise (partially revert) bug fix to stop crashes in buggy tclcompiler.
| * Partial revert of [a16752c252] bug fix to stop crashes in buggy tclcompiler.unbreak_tclcompilerdgp2013-09-051-2/+22
| |
* | Add test and improve errorInfo.bug_010f4162efdgp2013-09-021-6/+16
| |
* | [010f4162ef] First step of fix on stammering errorstack. errorstack fixed.dgp2013-09-021-0/+6
| | | | | | errorinfo revision still under consideration.
* | New internal eval flag value so that all TclNREvalObjv() callers thatbug_2502002dgp2013-08-291-27/+48
| | | | | | | | pre-resolve command names can choose whether or not TclNREvalObjv() should attempt to re-do the resolution from objv[0] when something goes wrong.
* | Rework the re-resolution after enter traces machinery with cleanerdgp2013-08-281-145/+69
| | | | | | separations and neater interfaces.
* | Clarfy and prettify influence of flag settings and command lookups.dgp2013-08-281-37/+40
| |
* | Tidy up indenting for clarity in refactoring.dgp2013-08-271-61/+62
| |
* | Exceptions raised from enter traces take priority over re-resolution games.dgp2013-08-271-6/+6
| |
* | Inline TEOV_RunEnterTraces() so its interface can be redesigned.dgp2013-08-271-3/+71
| |
* | merge trunkdgp2013-08-231-18/+33
|\ \
| * | Make sure all Tcl_NR*Eval*() routines do a schedule only. No errors raised.dgp2013-08-231-17/+32
| | |
* | | merge trunkdgp2013-08-231-19/+1
|\ \ \ | |/ /
| * | Remove complications that no longer server any required purpose.dgp2013-08-231-19/+1
| | |
| | |
| \ \
*-. \ \ merge trunkdgp2013-08-221-59/+32
|\ \ \ \ | | |/ /
| | * | compiler warningdgp2013-08-221-1/+1
| |/ /
| * | Make Dispatch() the single point for calling a Tcl_ObjCmdProc, and attachdgp2013-08-221-59/+32
| | | | | | | | | the DTRACE machinery there (one place, not two).
* | | merge trunkdgp2013-08-221-24/+15
|\ \ \ | |/ /
| * | Tidy the code and add a test.dgp_purge_NRRunObjProcdgp2013-08-211-39/+0
| | |
| * | Push out a trial patch for more eyes to see.dgp2013-08-201-0/+22
| | |
| * | Testing doing away with the NRRunObjProc routine, which looks like adgp2013-08-191-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | useless extra bounce on the NRE trampoline. Normal testing has no problem with it, but debug-enabled testing triggers an assert failure. Either it would be good to have a normal test that fails in the conditions of the assert failure, or it would be good to discover the assert is asserting something not actually required, and then make the purge.
* | | Revise execution trace handling to take account of the new reality indgp2013-08-191-14/+37
| | | | | | | | | | | | | | | Tcl 8.6 that callers can pre-resolve a cmdPtr for us. In that case a re-resolution in the form of another command name lookup isn't the right thing.
* | | merge trunkdgp2013-08-151-3/+3
|\ \ \ | |/ /
| * | Make sure the errors raised by execution traces become errors raised by thedgp2013-08-151-3/+3
| |\ \ | | |/ | | | | | | traced command, as documented. Deletion of the traced command was supressing that.
| | * Make sure the errors raised by execution traces become errors raised bydgp2013-08-151-1/+1
| | | | | | | | | | | | the traced command, as documented. Deletion of the traced command was supressing that.
* | | merge trunkdgp2013-08-141-353/+225
|\ \ \ | |/ /
| * | [a16752c252] Correct failure to call cmd deletion callbacks.dgp2013-08-141-23/+5
| |\ \ | | |/
| | * [a16752c252] Correct failure to call cmd deletion callbacks.dgp2013-08-141-23/+5
| | |
| * | 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-121-34/+9
| | | | | | | | | | | | | | | 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.
| * | Arrange for both execution traces and [info frame] to get their pre-substdgp2013-08-101-26/+15
| | | | | | | | | | | | 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
| | |
| * | Test for TclContinuationsGet() usage, and simplifications.dgp2013-08-071-17/+1
| | |
| * | 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-061-87/+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-061-0/+2
| | | | | | | | | | | | elimination.
| * | Eliminate the union that is no longer needed.dgp2013-08-061-7/+6
| | |
| * | 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-061-44/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.