summaryrefslogtreecommitdiffstats
path: root/generic
Commit message (Collapse)AuthorAgeFilesLines
* Simplify the final loop when we know we're generating strings for all.dgp2017-06-161-33/+7
|
* Split loop into two cases for further simplification.dgp2017-06-161-2/+43
|
* Factor out and simplify loop scanning leading known empty values.dgp2017-06-161-0/+21
|
* Use local variables.dgp2017-06-161-5/+5
|
* Rework the logic. Equivalent function.dgp2017-06-161-19/+9
|
* Extend cases where string rep generation can be prevented.dgp2017-06-161-0/+16
|
* Better define the meaning of "first" and "last".dgp2017-06-161-3/+5
|
* merge core-8-6-branchjan.nijtmans2017-06-151-1/+1
|\
| * Make panic in TclParseNumber() work when IEEE_FLOATING_POINT is not defined.jan.nijtmans2017-06-151-1/+1
| |
* | Don't test the impossible.dgp_stringcat_delaystringrepdgp2017-06-081-5/+3
| |
* | Modernize overflow checks.dgp2017-06-081-6/+6
| |
* | merge trunkdgp2017-06-087-58/+349
|\ \
| * \ Make read and write operations on Tcl_Var handles available in tclInt API.dkf2017-06-087-58/+349
| |\ \ | | |/
| | * Make read and write operations on Tcl_Var handles available in tclInt API. dkf2017-06-087-58/+349
| | |\ | | | | | | | | (This will be useful for tclquadcode, and it addresses a basic omission in Tcl's API that made working with Tcl_Vars rather more specialized than it was ever really intended to be. However, this also closes off the part of the API that was not reasonably usable by ordinary external code; LVT indices require too deep an entanglement into Tcl's implementation.)
| | | * Expose some of the core variable access APIs. dkf_expose_ptrgetvar_8_6dkf2017-06-067-58/+349
| | | | | | | | | | | | (Cherrypick from [b4dfc30083])
* | | | More streamliningdgp2017-06-081-14/+14
| | | |
* | | | More streamlining.dgp2017-06-081-12/+5
| | | |
* | | | pendingPtr == NULL implies (last == first) implies early outdgp2017-06-081-14/+3
| | | |
* | | | merge trunkdgp2017-06-082-14/+15
|\ \ \ \ | |/ / /
| * | | merge core-8-6-branchjan.nijtmans2017-06-081-12/+35
| |\ \ \ | | |/ /
| | * | Revert part of [95d096e0378b460c6c5168bb55bb2ca8b2fd799e|95d096e037]: Missed ↵jan.nijtmans2017-06-081-12/+35
| | | | | | | | | | | | | | | | the fact that tolower() was optimized for the ASCII case as well, so this was a mistake!
| * | | merge core-8-6-branchjan.nijtmans2017-06-083-49/+27
| |\ \ \ | | |/ /
| | * | Fix [2738427]: Tcl_NumUtfChars(...) no overflow check.jan.nijtmans2017-06-081-13/+14
| | |\ \
| | | * | Fix [2738427]: Tcl_NumUtfChars(...) no overflow check.jan.nijtmans2017-06-081-13/+14
| | | | |
| | * | | tclUtil.c: Use TclUtfToUniChar() in stead of handling ASCII characters ↵jan.nijtmans2017-06-082-36/+13
| | | | | | | | | | | | | | | | | | | | | | | | | separately: This macro already does that. Add new test-case for Tcl_NumUtfChars(), for a knownBug still to be fixed.
* | | | | When possible delay string rep generation until necessary.dgp2017-06-081-10/+46
|/ / / /
* | | | merge core-8-6-branchjan.nijtmans2017-06-073-18/+16
|\ \ \ \ | |/ / /
| * | | Tcl_GetWideIntFromObj() -> TclGetWideIntFromObj(), and minor other ↵jan.nijtmans2017-06-073-22/+19
| | |/ | |/| | | | | | | simplifications/optimizations. No functional change.
* | | [716b427f76] Optimize TclStringCatObjv when only one non-empty argument.dgp2017-06-062-56/+56
|\ \ \
| * | | A few more tweaks to streamline and clarify.bug_716b427f76dgp2017-06-061-13/+17
| | | |
| * | | makes TclStringCatObjv safe accepting objc = 0 (or 1), then fast exits with ↵sebres2017-06-061-12/+16
| | | | | | | | | | | | | | | | new object / first; check-cycles rewritten to be still more faster.
| * | | amend to [eac4656f1e8cf793] (moved to scope where numChars != 0 in Unicode case)sebres2017-06-061-3/+3
| | | |
| * | | small code review: don't need to check length if unchanged + the same case ↵sebres2017-06-061-17/+18
| | | | | | | | | | | | | | | | if 0 length
| * | | Optimize TclStringCatObjv() for case when only one argument is non-empty.dgp2017-06-051-8/+22
| | | |
| * | | Revert performance optimization as first step to providing a refactored one.dgp2017-06-051-24/+1
| | | |
* | | | merge core-8-6-branchjan.nijtmans2017-06-061-18/+18
|\ \ \ \ | |/ / / |/| / / | |/ /
| * | Follow-up to [67aa9a2070]: Use uppercase consistantly, slight optimization ↵jan.nijtmans2017-06-061-18/+18
| |\ \ | | |/ | | | | | | in character tests, comment fixes. No change in functionality.
| | * [67aa9a2070] Tcl_UtfToUniChar returns single byte for invalid UTF-8 input as ↵jan.nijtmans2017-06-061-75/+52
| | | | | | | | | | | | documented.
* | | [67aa9a2070] Tcl_UtfToUniChar returns single byte for invalid UTF-8 input as ↵dgp2017-06-051-3/+9
|\ \ \ | |/ / | | | | | | documented.
| * | merge core-8-6-branchbug_67aa9a2070jan.nijtmans2017-06-021-10/+8
| |\ \
| * | | Fix [67aa9a207037ae67f9014b544c3db34fa732f2dc|67aa9a2070]: Security: Invalid ↵jan.nijtmans2017-06-021-3/+9
| | | | | | | | | | | | | | | | UTF-8 can inject unexpected characters
* | | | merge core-8-6-branchjan.nijtmans2017-06-022-11/+8
|\ \ \ \ | | |/ / | |/| |
| * | | Change refCount field in DictObj from int to size_t. Cherry-picked from ↵jan.nijtmans2017-06-021-10/+8
| |/ / | | | | | | | | | "sebres-8-6-clock-speedup-cr1" branch.
* | | Merge core-8-6-branch. This removes the work currently being done in ↵jan.nijtmans2017-06-0214-7472/+740
|\ \ \ | |/ / | | | | | | | | | "sebres-8-6-clock-speedup-cr1" branch, but that will be merged again as soon as the work is done. All other changes in "trunk" since then (e.g. the INST_STR_CONCAT1 performance improvement, and the removal of SunOS-4) are retained.
* | | Fix [83a3d869722fab9caaae3b6728215fb2507a6f0d|83a3d86972]: tclEpollNotfy.c ↵jan.nijtmans2017-05-311-5733/+156
| | | | | | | | | | | | | | | fails to compile on Linux 2.6.<22 due to unconditionally including <sys/eventfd.h> Also re-generate regc_locale.c with Unicode 10 tables: previous generation went horribly wrong somehow...
* | | merge core-8-6-branchjan.nijtmans2017-05-311-3/+9
|\ \ \
| * | | Fix [67aa9a207037ae67f9014b544c3db34fa732f2dc|67aa9a2070]: Security: Invalid ↵jan.nijtmans2017-05-311-3/+9
| | | | | | | | | | | | | | | | UTF-8 can inject unexpected characters
* | | | merge core-8-6-branch (except: the "timerate" command and the clock ↵jan.nijtmans2017-05-3112-258/+257
|\ \ \ \ | |/ / / | | | | | | | | performance-tests are kept)
| * | | More code review, e.g. use Tcl_SetObjResult in stead of Tcl_SetResult, ↵jan.nijtmans2017-05-3110-246/+245
| | | | | | | | | | | | | | | | preventing a (char *) type case. No functional changes.
| * | | Remove "timerate" functionality: this definitely needs a TIP. Also undo ↵jan.nijtmans2017-05-313-351/+1
| | | | | | | | | | | | | | | | changes in library/reg/pkgIndex.tcl, which are unrelated to clock functionality