summaryrefslogtreecommitdiffstats
path: root/generic/tclExecute.c
Commit message (Collapse)AuthorAgeFilesLines
* Don't ever allow UTF-8 sequences of more than 4 characters to be generated ↵jan.nijtmans2016-08-301-1/+1
|\ | | | | | | | | or parsed, even when TCL_UTF_MAX>4: According to current Unicode standard, a byte string of >4 characters can never form a single UTF-8 character. And a few minor micro-optimizations related to UTF-8 handling.
* | Stop internals intrusion into lists.dgp2016-07-201-17/+4
| |
* | merge 8.6dgp2016-07-111-0/+7
|\ \ | |/
| * [cea0344a1] Restore a clearing of the ensemble rewrite in one execution pathdgp2016-07-111-0/+7
| | | | | | | | so attempts to use the data after free are not made. Test namespace-50.9 demonstrates the need for this.
* | merge 8.6dgp2016-07-101-0/+1
|\ \ | |/
| * [96fe2f1cc7] Plug memory leak.dgp2016-07-101-0/+1
| |
* | merge 8.6dgp2016-07-091-17/+16
|\ \ | |/
| * Revise INST_INVOKE_REPLACE to call EvalObjv with TCL_EVAL_INVOKE anddgp2016-07-091-15/+14
| | | | | | | | no longer call EvalObjEx which does not support it reliably. Also convert to conventional list operations.
| * Expose the AVOID_RESOLVERS flag to [namespace upvar] implementations, which ↵bug_1493a43044dkf2016-07-071-2/+2
| | | | | | | | seem to need it.
* | Micro-optimization: Use TclGetStringFromObj in stead of Tcl_GetStringFromObj ↵jan.nijtmans2016-07-081-3/+3
| | | | | | | | in many places where possible.
* | Fixup the ensemble rewrite conversionsjan.nijtmans2016-07-051-2/+0
|\ \ | |/
| * Fixup the ensemble rewrite conversions.core_8_6_branch_forkdgp2016-07-041-2/+0
| |
* | Route all ensemble rewrite activity through a few utility routines.dgp2016-06-281-3/+4
|\ \ | |/
| * merge 8.6dgp2016-06-231-0/+4
| |\
| * | excise debug scaffoldingdgp2016-05-261-6/+1
| | |
| * | Reduce to minimum set of TclResetRewriteEnsemble() calls.dgp2016-05-261-0/+2
| | |
| * | Put in some missing Resets.dgp2016-05-251-1/+3
| | |
| * | Appears that the TclInitRewriteEnsemble() routine was created with an intentdgp2016-05-241-3/+5
| | | | | | | | | to refactor, but never actually got used. Work on continuing that effort.
* | | [d553228d9f] Stop crashes in [dict update] with low refcount dictionaries.dkf2016-06-231-0/+4
|\ \ \ | | |/ | |/|
| * | [d553228d9f] Stop crashes in [dict update] with low refcount dictionaries.dkf2016-06-231-0/+4
| |/
* | Parameterize TclInitByteCodeObj to callers sense of typePtr.dgp_init_bytecodedgp2016-04-291-3/+1
| |
* | Refactor bytecode cleanup.dgp2016-04-221-12/+5
| |
* | Merge *both* commits to get the TclAsyncReady optimization. Withoutdgp2016-04-041-10/+17
|/ | | both parts, the test interp-34.3.1 hangs.
* Factor out string internal rep definition so fix for [1af8de570511] is less ↵dkf2016-03-221-4/+4
| | | | awful.
* [1af8de570511] Fix crash in [string replace] caused by cut-n-paste.dkf2016-03-201-22/+13
|
* Eliminate AuxDataType table: since this table only contains 4 constant ↵jan.nijtmans2015-12-151-2/+0
| | | | entries, it is overkill to use a hash table for that.
* Cherrypick [812a81812ebf89d2416059d45fabd27e45603f5e|812a81812e]: Turn off ↵jan.nijtmans2015-11-221-3/+0
| | | | NRE asserts by default. About a 5% speedup on [clock format].
* Proposed fix for invalid write, found by valgrind.bug_7a87a9bc5bdkf2015-08-171-1/+0
|
* Fix the documentation comment.Coverity_CID_1251203dkf2015-08-031-7/+8
|
* And another problem with continue in for-step clauses, this time a problem ↵dkf2015-08-021-9/+16
| | | | in how TEBC handled an edge case in the semantics.
* remove self-assignment - found by CoverityMiguel Sofer2015-07-301-1/+1
|
* Add the missing cleanup bits in INST_UNSET_ARRAY.bug_a3309d01dbdgp2015-07-181-0/+3
|
* [a0ece9d6d4] The cmd field of a CmdFrame when non-NULL must point within thedgp2015-07-051-1/+0
| | | string of the corresponding codePtr->source.
* Don't use internalRep.otherValuePtr any more, twoPtrValue.ptr1 is always a ↵jan.nijtmans2015-07-011-18/+18
| | | | | better idea. A few more consistancies in refcount management.
* Consistancy in refcount management.jan.nijtmans2015-06-301-1/+1
|
* Use twoPtrValue in stead of ptrAndLongRep for implementation of some ↵jan.nijtmans2015-06-301-8/+7
| | | | | internal Obj types. On most platforms this doesn't make a difference, as (void *) and (long) generially have the same size. The only exception where it makes a difference is win64, as we can now store 64 bits in this field in stead of only 32 bits, exactly what the processor is optimized for.
* [268b23df11] Revised patch to create phony source string when thedgp2015-06-031-5/+11
| | | | original script does not actually contain the command being invoked. (Example: the tcl::mathfunc::* command invoked via [expr] interpretation)
* [268b23df11] When GetSrcInfoForPc() returns NULL, make sure it also setsdgp2015-06-031-8/+6
| | | | the length to a non-positive value so nothing tries to read offsets from a NULL pointer.
* Correction suggested by miguel. Passes test suite and fixes bug demos.dgp2015-04-081-1/+1
|
* Proposed fix.dgp2015-04-081-0/+1
|
* Don't fetch values we don't need.dkf2015-04-041-1/+1
|
* completing the fix for bug d87cb182053fd79b3Miguel Sofer2015-03-231-0/+1
|
* [d87cb18205] Let compiled ensembles handle tailcalls properly.dgp2015-03-211-1/+0
|
* [0dca3bfa8f] Strengthen validity checks on fast-path string comparison.dkf2014-12-031-3/+5
|
* [e087812465] Trim back operatorStrings array to just the entries that are ↵dgp2014-11-241-4/+2
|\ | | | | | | needed. Trims away the part of the array that was out of sync with the opcodes.
| * [e087812465] Trim back operatorStrings array to just the entries that aredgp2014-11-241-4/+2
| | | | | | needed. Trims away the part of the array that was out of sync with the opcodes.
| * Fix more corner-cases like ↵jan.nijtmans2014-05-011-5/+5
| | | | | | | | [0e92c404f19ede5b2eb06e6db27647d3138cc56|0e92c404f1]: The only place where a type of &tclByteArrayType can be trusted is when determining its length, because the character length of a (UTF-8) string is always equal to the byte length of the byte array.
* | Addition of a cast in tclWinFile.c to match types in a comparison, andandreask2014-08-011-1/+1
| | | | | | | | | | fix of a TRACE string literal in tclExecute.c with a bogus escape. Both would otherwise bug a Windows debug build (where warnings are errors).
* | [b43f2b49f7] New compilation strategy for lappend that allows multi-valuedkf2014-07-181-1/+166
| | | | | | lappend to not have quadratic performance (through better reference management).
* | [9969cf8ca6] Move the bailout when the ->rewind flag is set down after alldgp2014-07-171-4/+4
| | | | | | the housekeeping matters tearing down frames (trace data) is complete.