Tcl Source Code

All files named ”generic/tclStringObj.c”
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

History for generic/tclStringObj.c

2026-11-06
09:20
string cat: one allocation; skip empty-string checks in Tcl_AppendObjToObj file: a0f5f00539 check-in: [20c4c1cf4b] user: rocketship98 branch: list-string-fastpaths, size: 121368
2026-10-24
04:37
V15q `type def {-compact}T`, `type is {compact?}`, and `type {c!}export` are now in place, following the chosen design—this is version v15q, available in `typeparse.zip`. `type is {compact?}polygone` checks the type, while `type is {compact?}$P` checks the value. I did not need to modify local annotations for value-based checks; the value retains only its content, which is precisely what holds the underlying data cells. tcl type def {-compact}polygone list.point set {polygone}P {0 0} {4 0} {4 3} ;# {0.0 0.0} {4.0 0.0} {4.0 3.0} type is {compact?}polygone ;# 1: the type requires it type is {compact?}$P ;# 1: the value is stored in cells string length $P; type is {compact?}$P ;# still 1 type {c!}export point ;# the C header (replaces `type c`) Normalization upon construction: `0` becomes `0.0`, and `0x10` becomes `16`. A `double(32)` is rounded to a `float`: `0.1` becomes `0.10000000149011612`. This normalization also applies to `set P(i.x)`, `lset`, and `lappend`. Conversions on a copy: core string and byte functions now operate on a string copy, maintained alongside the data cells. This is implemented via the new kernel patch `compact-conversions.patch`, which modifies `tclStringObj.c` and `tclBinary.c`. `tcl::unsupported::content` returns a copy that shares the same underlying data cells. This also applies to the global switch: in v15p, `string length $P` would break the compact form, but that is no longer the case. The following are disallowed in a definition: a type that is not a list of fixed-size elements (the definition is discarded, and the name remains available); an unknown option; `{-compact}` applied to an alias; a parameterized family (which I have not yet implemented). Export: `{llvm!}export` returns "not available yet," and an export without a target—or with an unknown target—is rejected. I discovered a flaw along the way: `string reverse` could modify the content of an annotated value in-place. This is no longer the case. A limitation regarding the `is` type check: if the text of a value also happens to be a type name (a value that is literally a type name), the query is interpreted as a type check. I have noted this in the planning. Tests against v15p: All expected outputs pass, with the exception of `t70_compact.out`; I have regenerated it because `string length` now maintains the compact format there. All tests and examples yield the same output, regardless of whether `TCL_TYPES_COMPACT=1` is set. The Tcl `string*`, `binary`, `stringObj`, `utf`, `dict`, `lset*`, and `list*` test suites show 3,482 passes out of 3,579, with 97 skipped and zero failures—consistent with v15. `valgrind` (PURIFY build) reports no issues for `t70_compact`, `t71_type_c`, and the new `t72_compact_type`. file: 13c8590a9d check-in: [7952bb1028] user: Florentis branch: tip-764_tcl90, size: 119037
2026-10-23
09:29
Fix [40f315bc23]: [format %g] does not portably produce a Tcl number file: 7559d652dc check-in: [326e1bf923] user: serhiy.storchaka branch: core-8-6-branch, size: 83828
2026-10-18
20:09
Follow-up to [2dff98e079]: Fix testcases on MSVCRT file: 241f570dfd check-in: [25cc9dd9b0] user: jan.nijtmans branch: core-9-0-branch, size: 119388
09:19
Format infinities ourselves, as C99 specifies (inf/INF with sign flags, padded with spaces), since msvcrt prints "1.#INF" for all float conversions. Make test format-19.5 exact again, and add format-19.6. file: 0f5af3e53f check-in: [f5bb9702a9] user: serhiy.storchaka branch: format-A-prefix, size: 120551
2026-10-17
07:22
Fix [2dff98e079]: format %A garbles negative, padded and infinite values file: 551d3f43f0 check-in: [06f25062c2] user: serhiy.storchaka branch: core-9-0-branch, size: 118853
2026-10-16
22:17
Fix [2dff98e079]: format %A garbled negative, padded and infinite values. Lowercase the "0X" prefix and the "P" exponent marker where they are, instead of assuming that the result starts with "0X". file: d939370d98 check-in: [5f07f3abba] user: serhiy.storchaka branch: format-A-prefix, size: 120016
2026-10-13
08:17
Annoted values and typed variables file: ef9ef9349f check-in: [957c079f46] user: Florentis branch: tip-764_tcl90, size: 118933
2026-08-09
11:38
Error messages almost all generated via Tcl_PrintfResult family file: 88ef77bfd3 check-in: [4b4b6ea188] user: dkf branch: tip-757, size: 122920
2026-07-18
08:10
Add Tcl_AppendPrintfToErrorInfo to our set of printers file: 86e3cf1224 check-in: [a65eb900f8] user: dkf branch: tip-757, size: 123344
2026-07-10
07:13
No, better to always generate a new object; simplifies lifetime management elsewhere file: d5c5e12c73 check-in: [5c7a9acf54] user: dkf branch: tip-757, size: 121672
2026-07-05
18:32
Alternative with %#s, for fewer tool grumbles file: 296bf9eb02 check-in: [f31fb86990] user: dkf branch: tip-757-obj-special-alt, size: 122304
15:09
Special handling for %&s to allow passing Tcl_Objs directly to Tcl_ObjPrintf file: 3a430888fe check-in: [7af2ecc37b] user: dkf branch: tip-757-obj-special, size: 122331
10:57
Inline Tcl_GetObjResult and Tcl_SetObjResult file: dab179d77d check-in: [3cacc758e8] user: dkf branch: tip-757, size: 121858
10:46
Avoid allocating an object in a common case. file: f6be189bd0 check-in: [be9d036e69] user: dkf branch: tip-757, size: 121597
2026-07-04
22:00
Switch TclOO over to using Tcl_PrintfResult as test and demo file: cdf4ea8de6 check-in: [44ceac0276] user: dkf branch: tip-757, size: 121341
20:47
First draft of implementation of TIP 757. Not yet its consequences. file: 12949fb2d0 check-in: [7ba8fb7d94] user: dkf branch: tip-757, size: 121351
2026-06-30
14:48
Merge 9.0 file: 08e031fb2e check-in: [d00129435c] user: jan.nijtmans branch: main, size: 119834
11:44
Fix [fcd3dadd79]: format honours LC_NUMERIC for %f/%g, producing numbers Tcl cannot parse file: ad6e99089e check-in: [9f3410de14] user: jan.nijtmans branch: core-8-6-branch, size: 83293
11:39
Fix [fcd3dadd79]: format honours LC_NUMERIC for %f/%g, producing numbers Tcl cannot parse file: 551ac9f2b0 check-in: [12306649fb] user: jan.nijtmans branch: core-9-0-branch, size: 118671
2026-06-08
18:41
Small corrections to doc comments file: 0bf001faef check-in: [ccb5df9767] user: dkf branch: main, size: 119827
2026-05-28
12:13
Merge 9.0. Formatting file: 49d7803b4f check-in: [8e78be4610] user: jan.nijtmans branch: main, size: 119821
2026-05-17
15:06
More indentation/spacing corrections; no behaviour changes file: 09167e0541 check-in: [7c918d5f96] user: dkf branch: main, size: 119824
2026-05-10
12:03
Fix merge, apply branch theme in more places file: a439dbf264 check-in: [7acb2fbb2b] user: dkf branch: c11-array-literals, size: 119770
2026-04-30
14:52
Fix formatting of function-level comments file: 1e0930356b check-in: [3dc5544544] user: dkf branch: main, size: 119756
2026-04-09
19:54
Add a macro to declare a variable as 'used' when the compiler can't see it. For when TCL_UNUSED isn't so suitable. file: 510781aad7 check-in: [a41f6993bb] user: dkf branch: tcl-used, size: 119120
2026-02-23
09:17
Rebase to trunk. More bool's file: a0e95fbde1 check-in: [e0b054564f] user: jan.nijtmans branch: tip-748, size: 119761
2026-02-14
16:39
General whitespace fixes. No semantic changes. file: 131cc7970f check-in: [af2708b4ef] user: dkf branch: main, size: 119760
2026-01-12
07:47
Merge trunk file: 155ae330d1 check-in: [324255f4a1] user: jan.nijtmans branch: attemptgetstring, size: 125036
2025-12-29
21:49
Rebase to trunk file: 517e29a01a check-in: [4bc0680742] user: jan.nijtmans branch: tip-748, size: 119759
2025-12-28
13:09
Add some missing static/const keywords file: 691f0072cb check-in: [c8ea9c379e] user: jan.nijtmans branch: main, size: 119758
2025-12-15
13:34
Rebase to trunk file: 47dc700e7d check-in: [f69efd5ab6] user: jan.nijtmans branch: attemptgetstring, size: 125038
2025-12-14
15:47
Some more adaptations for small strings. file: 3be57f6e7a check-in: [b949edd94f] user: apnadkarni branch: apn-ss-wip, size: 122248
2025-12-12
17:19
Start experimenting with small string intreps file: fc0a656519 check-in: [12a540f932] user: apnadkarni branch: apn-ss-wip, size: 122312
2025-12-04
17:12
More signature changes to 'bool' file: 369112e9f5 check-in: [4aeb62cdab] user: jan.nijtmans branch: tip-748, size: 119626
2025-11-30
21:02
Rebase to trunk file: 52ec9cb964 check-in: [60b44be862] user: jan.nijtmans branch: tip-626, size: 119760
12:57
Better comments on the Tcl_ObjType instances file: f90a34bb71 check-in: [44e8e5ff97] user: dkf branch: main, size: 119625
2025-11-28
08:46
Rebase to trunk file: c9c52e85f2 check-in: [821ab78290] user: jan.nijtmans branch: attemptgetstring, size: 125001
2025-11-18
17:15
Work in progress: adding restrict to OUT arguments file: d1005de3e6 check-in: [f9725400dd] user: dkf branch: c11-restrict, size: 119732
2025-11-17
09:18
merge trunk file: 18d767cf01 check-in: [8d7f54a91b] user: dkf branch: c11-automarker, size: 119558
2025-11-15
21:56
merge trunk file: d1497addd0 check-in: [459669e809] user: dkf branch: c-std-update, size: 119357
2025-11-13
20:36
Rebase to trunk file: 8e33a7e251 check-in: [c9532e9436] user: jan.nijtmans branch: tip-626, size: 119858
17:08
Merge 9.0 - Bug [e56486a2] - check for negative lengths, not equality with TCL_INDEX_NONE file: cf993d15cb check-in: [8c070cca13] user: apnadkarni branch: main, size: 119723
2025-11-12
10:11
Check for negative lengths, not TCL_INDEX_NONE file: 62d6f958f9 check-in: [9d50cd1c81] user: apnadkarni branch: bug-e56486a2, size: 118664
2025-11-09
14:12
merge trunk file: 505d4be0be check-in: [c495403a16] user: dkf branch: c11-printf-result, size: 119695
2025-10-30
16:45
Rebase to trunk file: b33cdc1822 check-in: [ac26ccdcec] user: jan.nijtmans branch: tip-626, size: 119961
15:57
Change Tcl_IsEmpty signature, using bool file: 995b82ba6c check-in: [cd11175e1d] user: jan.nijtmans branch: tip-748, size: 119827
14:23
Rebase to trunk file: 738221e024 check-in: [f1175f4029] user: jan.nijtmans branch: attemptgetstring, size: 125104
2025-10-28
12:41
Yet more bools... file: 0ec128ca99 check-in: [0517c8f089] user: dkf branch: c11-bool, size: 120038
2025-10-24
11:51
Make the bool type available properly (and reduce include duplication). Be careful though; C23 deprecates that header. file: 1845699dfd check-in: [bd8805313f] user: jan.nijtmans branch: core-9-0-branch, size: 118767
2025-10-17
22:46
More progress file: c042d0fdcb check-in: [315fef2a77] user: jan.nijtmans branch: attemptgetstring, size: 125123
2025-10-13
17:04
Rebase to trunk file: 0208a5c590 check-in: [644669e6cb] user: jan.nijtmans branch: attemptgetstring, size: 124007
2025-10-10
14:11
Tranche 3 of adoption of bool file: cbf7b4c6f0 check-in: [6e7e183bb2] user: dkf branch: c11-bool, size: 120037
2025-10-06
15:52
Make the bool type available properly (and reduce include duplication). Be careful though; C23 deprecates that header. file: b8691ee6f6 check-in: [fa8b63f0c3] user: dkf branch: c11-bool, size: 119826
2025-10-05
10:38
Tranche 2 of adoption of TclPrintfResult file: 6951878ca4 check-in: [9a6fb43196] user: dkf branch: c11-printf-result, size: 119714
2025-10-03
11:47
Use C11 macros to automatically add a NULL to the end of varargs sequences file: 142dad019f check-in: [9c524e00d4] user: dkf branch: c11-automarker, size: 119680
2025-09-26
18:53
merge trunk file: 41363497a7 check-in: [f0dcb3e615] user: dkf branch: c-std-update, size: 119479
2025-09-09
19:15
further erro-handling file: 634402cdc0 check-in: [f382bf4a51] user: jan.nijtmans branch: attemptgetstring, size: 123983
2025-09-07
19:30
Fix TCL_MEM_DEBUG build file: c51aa87b60 check-in: [c0ebd58450] user: jan.nijtmans branch: attemptgetstring, size: 123325
2025-09-05
07:08
Introduce Tcl_AttemptGetCharLength() file: 48e69282e9 check-in: [24bb637dd2] user: jan.nijtmans branch: attemptgetstring, size: 122733
2025-09-04
15:01
Rebase to trunk file: 53d638548a check-in: [42e496eea2] user: jan.nijtmans branch: attemptgetstring, size: 122288
14:57
Use TclAttemptGetString() in "string repeat". Fix Tcl_AttemptNewStringObj in debug mode file: cc2762f521 check-in: [46b5a96877] user: jan.nijtmans branch: attemptgetstring, size: 122289
09:52
Rebase to trunk file: 08af4c75e9 check-in: [84e8b8343a] user: jan.nijtmans branch: tip-626, size: 119980
08:24
Minor indent fixes file: 2a3f81c035 check-in: [518418cbc3] user: dkf branch: main, size: 119845
2025-09-02
20:04
Rebase to trunk file: e72b4e3992 check-in: [1880179400] user: jan.nijtmans branch: tip-626, size: 119981
14:54
(partial) merge trunk file: d3e2f678fe check-in: [70410fe882] user: jan.nijtmans branch: tip-626, size: 119863
09:21
(partial) merge trunk file: e74804a1f7 check-in: [bfbb3990ac] user: jan.nijtmans branch: tip-626, size: 119855
2025-09-01
13:53
(partial) merge trunk file: 78b4ca3c20 check-in: [893e489e6e] user: jan.nijtmans branch: tip-626, size: 119742
2025-08-27
15:38
Rebase to latest trunk file: 210eab1bcd check-in: [6399ade2e2] user: jan.nijtmans branch: attemptgetstring, size: 122110
2025-08-22
19:25
Fix memory debugging info file: 316ddebae5 check-in: [83a6689b71] user: jan.nijtmans branch: core-8-6-branch, size: 83286
14:52
Fix memory debugging info file: 0f807067fe check-in: [7247e77c5f] user: dkf branch: core-9-0-branch, size: 118786
07:16
Fix memory debugging info file: 2d7fe0eb68 check-in: [0a91b87749] user: dkf branch: main, size: 119846
2025-08-17
16:09
merge trunk file: 278043184e check-in: [4a7b1f9d1b] user: dkf branch: c-std-update, size: 119362
11:25
More bools and pieces file: 78b54efa3e check-in: [28a7d957c7] user: dkf branch: c-std-update, size: 119362
2025-08-13
21:10
Merge 9.0 file: e7a7fec34c check-in: [454d2b4b2e] user: jan.nijtmans branch: main, size: 119728
16:43
Remove more references to version 8.7 file: 2361ea7401 check-in: [c00ce71a06] user: jan.nijtmans branch: core-9-0-branch, size: 118668
2025-08-12
14:14
Yet more booleans file: 62fcb194d5 check-in: [98c372af54] user: dkf branch: c-std-update, size: 119372
09:06
More booleans. file: 96dfd00565 check-in: [8a9080996d] user: dkf branch: c-std-update, size: 119371
2025-08-01
11:48
More moving of variable declarations file: 4ca96d25ff check-in: [1d20e4cf45] user: dkf branch: c-std-update, size: 119093
2025-07-19
12:31
More moving of variable declarations file: c6a6fe9163 check-in: [c149575323] user: dkf branch: c-std-update, size: 119488
2025-07-14
14:26
TclSetErrorCode lets us avoid writing a lot of marker values file: 95b4868cd4 check-in: [a29f1f8fab] user: dkf branch: c-std-update, size: 119481
08:11
A bunch of small changes building on previous commits file: 3c8a263c83 check-in: [1811f74742] user: dkf branch: c-std-update, size: 119646
2025-07-13
07:03
Define TclAppendPrintfToErrorInfo for a related pattern file: 7b98ebf983 check-in: [321d2b5cd3] user: dkf branch: c-std-update, size: 119632
2025-07-12
20:58
Define TclPrintfResult() for common pattern in error generation. file: 42888d94b7 check-in: [70b6205548] user: dkf branch: c-std-update, size: 119652
2025-07-10
21:12
Clearer declarations of many C arrays; C11 lets the initialisers be expressions file: 2a26b78230 check-in: [63912394cf] user: dkf branch: c-std-update, size: 119727
2025-06-02
14:18
Backport: Add [[unreachable]] and [[fallthrough]] from C23 (where available) file: d0eee844dc check-in: [01eaeaebf1] user: jan.nijtmans branch: core-9-0-branch, size: 118668
2025-05-29
15:10
merge trunk file: bfd146d488 check-in: [e1ef92cb5d] user: dkf branch: tcl-unreachable, size: 119728
08:13
more unreachable/fallthrough marks file: 1b3f632d6c check-in: [dc49f7f0a3] user: dkf branch: tcl-unreachable, size: 119615
2025-05-26
12:59
Add some more Tcl_Attempt* functions file: bb946a9d95 check-in: [3c0642b89c] user: jan.nijtmans branch: attemptgetstring, size: 121984
10:04
Use TclAttemptInitStringRep() in a few more places where it's possible. Fix indenting. file: 9758dd37e1 check-in: [20449a8a25] user: jan.nijtmans branch: main, size: 119720
2025-05-23
09:24
Rebase to trunk file: cb516a36a7 check-in: [db81c145b2] user: jan.nijtmans branch: attemptgetstring, size: 119806
09:03
Clean up indentation and overlong lines file: 3687fd53f6 check-in: [71f3f24f7b] user: dkf branch: main, size: 119607
2025-05-20
09:28
Rebase to attemptgetstring file: e0b48a6009 check-in: [70e5788e19] user: jan.nijtmans branch: tip-626, size: 119942
2025-05-15
15:14
New function Tcl_AttemptGetString(). WIP file: c1c95b910e check-in: [68a2b7038d] user: jan.nijtmans branch: attemptgetstring, size: 119807
2025-05-02
08:00
Deprecate (internal) TclVarHashCreateVar() function. It isn't (and shouldn't) be used by any extension. file: 85a17bfb9c check-in: [816e9ddf1b] user: jan.nijtmans branch: main, size: 119608
2025-04-29
13:48
Indenting and comments, backported from 9.1 file: c861c25ffa check-in: [98ab04e3c6] user: jan.nijtmans branch: core-9-0-branch, size: 118660
2025-04-20
17:44
Rebase file: 86f190e979 check-in: [c4b6797289] user: jan.nijtmans branch: tip-626, size: 119758
2025-04-17
14:47
Another round of -Wconversion warning fixes, see [03cff7a777] file: 9270a101e5 check-in: [d92999333a] user: jan.nijtmans branch: conversion-warning, size: 119623
2025-04-03
15:55
Rebase to 9.1. Un-deprecate Tcl_CreateCommand() file: f420c0a69f check-in: [ae40ecf95f] user: jan.nijtmans branch: tip-626, size: 119757
2025-03-30
08:54
Attempt to fix format-19.4.1 testcase with gcc on Windows (optimization bug???) file: 72c758f946 check-in: [25b879f4b3] user: jan.nijtmans branch: tip-626, size: 119705
2025-03-26
16:33
More C4244 Windows warnings file: 41b967fc32 check-in: [6938f5b6c3] user: jan.nijtmans branch: tip-626, size: 119713
2025-03-21
13:25
Remove TclCommandWordLimitError() utility function: it is not used any more file: 23e724f411 check-in: [124360b3fd] user: jan.nijtmans branch: tip-626, size: 119622
2025-03-02
15:48
Bunch of whitespace basic fixes. file: 49f0fe0704 check-in: [809d595b56] user: dkf branch: main, size: 119624
2025-02-21
22:55
* In-code comments reflect what is actually happening - eg: Tcl_GetRange() does *not* only convert the Obj values to a valid Unicode string, it will preserve a byte-array if a byte-array is what is passed in. * s/bytearray/byte-array/, consistent with (eg) Tcl_NewByteArrayObj(3) * update Tcl_GetRange(3) doc to reflect the byte-array -preserving aspect. file: 021daab007 check-in: [dc94c20ed5] user: jan.nijtmans branch: core-9-0-branch, size: 118663
00:46
* In-code comments reflect what is actually happening - eg: Tcl_GetRange() does *not* only convert the Obj values to a valid Unicode string, it will preserve a byte-array if a byte-array is what is passed in. * s/bytearray/byte-array/, consistent with (eg) Tcl_NewByteArrayObj(3) * update Tcl_GetRange(3) doc to reflect the byte-array -preserving aspect. file: 6bea2f344d check-in: [546413afa8] user: bch branch: main, size: 119626
2025-02-12
08:01
More accurate documentation file: 4c82a9c299 check-in: [98e788fbcd] user: jan.nijtmans branch: tip-711, size: 119505
2025-02-11
17:10
More bits and pieces of functions file: 3118e9c631 check-in: [f94ca90326] user: dkf branch: inline-func, size: 118533
2025-02-06
22:54
Slightly better: less code duplication file: 16fa95b4f0 check-in: [d906def78e] user: jan.nijtmans branch: tip-711, size: 119443
22:21
Change implementation, based on community feedback file: 1585c1771e check-in: [53556c9fe8] user: jan.nijtmans branch: tip-711, size: 119465
2025-01-24
09:40
More WS... file: 442606dfc5 check-in: [0e28e62952] user: dkf branch: whitespace-fix, size: 118534
2025-01-22
12:52
New function Tcl_IsEmpty() file: 4077ef9ad1 check-in: [dc19df4f1d] user: jan.nijtmans branch: tip-711, size: 119420
2025-01-20
14:39
Fixes for many many whitespace infelicities file: e9bcdc21eb check-in: [ba7d219e65] user: dkf branch: whitespace-fix, size: 118520
2025-01-13
09:59
More macros for measuring literals at compile time, and a shortcut for adding to error info file: f27d26170d check-in: [43e1c33e9e] user: dkf branch: dkf-c11-features, size: 118307
2025-01-10
13:01
Add TclPrintfResult() for easy error message generation file: d1ae5774f3 check-in: [665eb99f69] user: dkf branch: dkf-c11-features, size: 118270
2025-01-09
09:30
TclSetErrorCode is a macro to end-mark Tcl_SetErrorCode file: fb08ccd4e5 check-in: [0e84f9c9df] user: dkf branch: dkf-c11-features, size: 118377
2024-10-07
19:52
Merge [1f19a433ece17043]: Fix ungrammatical doubling of words in comments. file: 8fa96fb538 check-in: [9a9ba6ce11] user: pooryorick branch: unchained, size: 120093
19:02
Update bytecode instruction implementations so that Tcl_Obj interface functions are used if they are available, and all existing tests in objInterface.test pass. file: 03eab4525f check-in: [b99baa5ce5] user: pooryorick branch: unchained, size: 120050
2024-09-21
08:41
Fix ungrammatical doubling of words in comments file: 2d024ced95 check-in: [1f19a433ec] user: dkf branch: main, size: 118542
2024-08-30
20:38
Remove unnecessary checks of allocSegment that were introduced in the previous merge. file: 2519604803 check-in: [4be13940ed] user: pooryorick branch: unchained, size: 119983
20:28
Merge [71923cd05371e8ad]: merge release. file: 96d04b19e3 check-in: [b7fb38f106] user: pooryorick branch: unchained, size: 120043
2024-08-29
19:21
Merge [810eb78647bbdf9b]: TIP #697: 32-bit truncation in format and scan (let's gain some time). file: 1b0c88bfb3 check-in: [cc35134867] user: pooryorick branch: unchained, size: 119925
08:23
Merge [f6c559b364487a9d]: Space before tab is an extremely unlikely to be correct indentation pattern. file: 266c23745e check-in: [8a11a89576] user: pooryorick branch: unchained, size: 120266
05:50
Merge [39eee6cff88a3b68]: Some tidying up, mostly of indentation. file: c003eb5d4d check-in: [c179fcc606] user: pooryorick branch: unchained, size: 120314
05:22
Merge [3d5e024e64e79fcf]: Fix [9c258a841a]: document %t/%z/%j/%q size field specifiers. Fix %j/%z/%t matching the C printf. file: 69078eb640 check-in: [0780a92568] user: pooryorick branch: unchained, size: 120328
2024-08-28
19:49
Merge [b4a4d46ce04a5a62]: Better flag up the oo::Slot class in the docs, add missing method [28d6013ae6]. file: c24e050ab4 check-in: [34763ffa19] user: pooryorick branch: unchained, size: 119993
16:33
Merge [3a60363aa10ef993]: Clean up a lot of whitespace issues. file: e8e19d4f84 check-in: [627781a6db] user: pooryorick branch: unchained, size: 119983
2024-08-27
21:31
Merge [835b1a5566c28af4]: More whitespace cleanup. file: e172374663 check-in: [fc7d06c8b8] user: pooryorick branch: unchained, size: 119872
11:14
Merge [295715a1b1b2c3d5]: "One more TclHasInternalRep()" and fix inadvertent inversion of logic. file: 24dc7e5dac check-in: [8dd140f624] user: pooryorick branch: unchained, size: 119874
10:50
Fix logic that was inadvertently inverted back in [295715a1b1b2c3d5] file: 70a8a0b1dd check-in: [5ffd5f90b8] user: pooryorick branch: main, size: 118538
10:40
Merge [22cb6d973e5b8327]: Use TclHasInternalRep() macro in more places. file: 4204099d77 check-in: [17b13231f6] user: pooryorick branch: unchained, size: 119856
2024-08-26
22:08
Merge [4a704590fe9d36b2]: encodingPtr -> encodingNamePtr (for consistency). file: d341d11964 check-in: [ff09f3b8ba] user: pooryorick branch: unchained, size: 119840
14:21
Merge [5d52c6d7302b320e]: Fix [edb4b065f4] - crash on string compare. file: 921a06e43c check-in: [551f710347] user: pooryorick branch: unchained, size: 119841
11:01
Merge [8fd228c66035f615]: Put back line accidently removed. file: ace8ea1647 check-in: [20e1bbea29] user: pooryorick branch: unchained, size: 119839
11:01
Merge [9b8a66aff6923a69]: Fix [6811a00819]: lsearch performance degradation on Tcl 8.6.11 release (thanks, Sergey!). file: 67ea38888d check-in: [9f27ea7880] user: pooryorick branch: unchained, size: 119806
09:54
Merge [9a59cf84995963c5]: More spacing/formatting tweaks. file: c6cda9f010 check-in: [33360d10e4] user: pooryorick branch: unchained, size: 119865
09:45
Merge [1fbff64078d7fb02]: Fix indentation/brace usage style issues. file: 2f853ca0f0 check-in: [bd3faf4a67] user: pooryorick branch: unchained, size: 119888
2024-08-25
20:44
Merge [63d442cdc0d0d498]: "Restore TclListObjGetElements()/TclListObjLength() as they were in 8.6 too." Also remove TclListObjGetElements and TclListObjLength from the stubs table. file: 1f9822d5f5 check-in: [891803cf8c] user: pooryorick branch: unchained, size: 119806
11:05
Merge [f1cef9d6c96f7ce5]: Fix util-18.13/util-18.14 constraint, which masked the wrong result on 64-bit windows. Fixed that as well. file: 744bf5bf63 check-in: [278f6064f8] user: pooryorick branch: unchained, size: 119808
11:04
Merge [b9cc5534cc5ed0b3]: Fix indenting and remove asserts that were commented out. file: abec9c7634 check-in: [96267fd1d7] user: pooryorick branch: unchained, size: 119974
08:33
Merge [f08e71ebd9742f29]: Fix [0d78177f20]: unsigned use of Tcl_ObjPrintf() doesn't work as expected. With testcases. file: 8f16d372bb check-in: [b826c4d1e8] user: pooryorick branch: unchained, size: 120375
08:20
Merge [a4f2b185777ab206]: Final fix for [db4f2843cd]: Segfault by BO in ReadChars (and Tcl_ReadChars with append). file: 349b91845e check-in: [103eef358c] user: pooryorick branch: unchained, size: 119762
05:36
Merge [c83fa73b65ca3849]: Fix [abd489a1c]: TclStringCmp() calls functions through pointer to incorrect type. file: 4af553aa31 check-in: [c9ab508174] user: pooryorick branch: unchained, size: 118796
2024-08-23
14:00
Merge [252948ef015ff03e]: Fix binary/format/string testcase failures on 32-bit platforms. Reported by Harald Oehlmann. file: 7986949a29 check-in: [b66f7a1859] user: pooryorick branch: unchained, size: 115909
10:46
Merge [3d21abe8464432b2]: Tcl_GetByteArrayFromObj -> Tcl_GetBytesFromObj everywhere in core, since it has the possibility of better error-reporting. This fixes the -DTCL_NO_DEPRECATED build failure. file: 3c3a3194f6 check-in: [df9e95d3b7] user: pooryorick branch: unchained, size: 115926
2024-08-22
20:52
Merge [f67f60d202716adf]: Fix [26870862f0]: Wrong sentinel in Tcl_SetErrorCode usage; Handle any C++-compiler as well. file: bdcf8b7db7 check-in: [e18c9ab9f6] user: pooryorick branch: unchained, size: 115876
09:11
Merge [410d0ff3eb5e0b31], "Bug [f5e36eb588] - uncompiled lassign memory usage for lseq". Replace Tcl_ObjInterfaceSetFnListSetFlat with Tcl_ObjInterfaceSetFnListSetDeep, and change the signatures of Tcl_ObjInterfaceSetFnListSet and Tcl_ObjInterfaceSetFnListSetDeep. Make all Tcl_Obj interface functions return a standard Tcl value. file: 1f733a5700 check-in: [89d323ba4d] user: pooryorick branch: unchained, size: 115788
2024-08-20
20:41
Merge [f46e5b193a336295]: Fix bug [891a74b941] - format %#d not consistent with other radix prefixes. file: 19685c34b1 check-in: [3f2368cce4] user: pooryorick branch: unchained, size: 115280
20:04
Merge [d24c3420fa4add26], TIP #665: Remove support for internal utf-16. file: 09b32dd422 check-in: [77d9dffc85] user: pooryorick branch: unchained, size: 115189
17:28
Merge [06dbbb7dbc17e375], "Merge 8.7 - Fix [b5ac3e3786] - Tcl_GetUniChar oob read". file: e26e454708 check-in: [f6110039af] user: pooryorick branch: unchained, size: 115220
2024-08-19
16:03
Merge [354b22cef810c880], " Add (hopefully confincing) testcase for bug [e58d7e19e9]" and resolve conflicts. Add string.isEmpty interface for Tcl_Obj values and modify TclCheckEmptyString to use it. Also modify TclCheckEmptyString to accept a Tcl_Interp arg and return a standard Tcl result. file: 2ff4ef98c8 check-in: [be88ae27ad] user: pooryorick branch: unchained, size: 115143
2024-08-05
22:44
Missed some backports from 9.0. Some indenting file: 27d8e004ec check-in: [41996582d5] user: jan.nijtmans branch: core-8-branch, size: 128182
2024-07-30
16:54
Plug memory leak in format-19.4.1 file: 874fd9d3a2 check-in: [47a734b4e6] user: dgp branch: core-9-0-b3-rc, size: 118537
2024-07-20
15:59
Merge trunk [91c2f411e7e71552], TIP #636 (tip-636-tcl9-644), resolve all conflicts including those resulting from conflicting Tcl_Obj interface implementations, and relicense under GNU Affero General Public License. All tests pass. file: d9a707da31 check-in: [d8a3450f12] user: pooryorick branch: unchained, size: 113927
2024-06-12
14:00
Merge trunk file: a26f27c228 check-in: [cf8a455aeb] user: apnadkarni branch: apn-experiment-chardet, size: 118419
2024-06-04
15:35
Space before tab is an extremely unlikely to be correct indentation pattern file: 5682a2ea67 check-in: [f6c559b364] user: dkf branch: main, size: 118760
2024-06-01
16:13
Some tidying up, mostly of indentation file: 28720e80bc check-in: [39eee6cff8] user: dkf branch: main, size: 118817
2024-05-31
09:30
Make 'I', 'I32', 'I64' only available on Windows, because they serve no purpose on other platforms. file: a43247190c check-in: [01e6a242c4] user: jan.nijtmans branch: bug-9c258a841a, size: 128324
09:16
Make a start with new TIP implementation, handling '%d' for 'format' and '%d'/'L'/'z'/'t'/'q'/'j' for 'scan' file: ca9c019fdb check-in: [4fe0d34f53] user: jan.nijtmans branch: tip-697, size: 118490
2024-05-30
22:02
Fix [9c258a841a]: document %t/%z/%j/%q size field specifiers. Fix %j/%z/%t matching the C printf file: ab97212bc6 check-in: [3d5e024e64] user: jan.nijtmans branch: main, size: 118831
21:26
Let's [9c258a841a|fix] the j%j/%q type specifiers, so they behave like C in scripts, and document them file: 04b5537ccd check-in: [0c66ee7d75] user: jan.nijtmans branch: bug-9c258a841a, size: 128064
2024-05-29
15:20
Let's [9c258a841a|fix] the %p/%z/%t type specifiers, so they behave like C in scripts, and document them file: 1b2ee0a3fe check-in: [2d6520b382] user: jan.nijtmans branch: bug-9c258a841a, size: 127937
2024-05-28
12:38
Make TclGlob() a static function. Sentinel/indenting/comment improvements (all backported from 8.7) file: f435d5450a check-in: [5f6c7373c1] user: jan.nijtmans branch: core-8-6-branch, size: 83165
2024-05-27
20:19
Some more functions for lists, a bit like the ones for dicts file: 3c83e47632 check-in: [80e4f71f99] user: dkf branch: dkf/experimental-more-list-c-funcs, size: 83177
2024-05-23
13:44
Merge 8.7 file: c73d102397 check-in: [b4a4d46ce0] user: jan.nijtmans branch: main, size: 118496
12:00
Merge 8.6 file: ddad9faab2 check-in: [37b8b3fdaf] user: jan.nijtmans branch: core-8-branch, size: 127729
11:52
Fix 2 warnings on Win32 (Thanks, Harald). Some more code cleanup, backported from 8.7) file: 409ed6f48c check-in: [73474e33a9] user: jan.nijtmans branch: core-8-6-branch, size: 83225
08:53
More trickery with macros file: 393e1e84dd check-in: [a3f9c1bec2] user: dkf branch: more-macros, size: 118300
2024-05-20
16:38
merge trunk file: 7df1f71068 check-in: [3fd88cd4cd] user: dkf branch: result-helpers, size: 118319
2024-05-14
16:06
Add helper macros TclSetResult and TclPrintfResult file: 84f3b301a6 check-in: [0b65fb9e0c] user: dkf branch: result-helpers, size: 118328
2024-05-13
19:57
Rebuild the stub table, add attributes to func definitions file: ba8d0536ac check-in: [a396528193] user: dkf branch: sentinel, size: 118527
15:41
Clean up a lot of small whitespace issues This is the dullest commit ever. Sorry. file: 6f5ca16f0c check-in: [3a60363aa1] user: dkf branch: main, size: 118514
2024-05-02
14:54
put (back) comment file: 5a6ecabe6a check-in: [6ffee5b2cb] user: jan.nijtmans branch: rfe-4b12ccb336, size: 84541
13:05
A little bit more minimum file: af202c7e9d check-in: [6f3cfbaafa] user: jan.nijtmans branch: rfe-4b12ccb336, size: 84495
12:46
Minimum backport [4b12ccb336] to Tcl 8.6. If we do %lld/%llu we should do the %I32/%I64 (microsoft-)variants as well, otherwise TCL_LL_MODIFIER only is usable on non-Windows platforms file: a79d326884 check-in: [96aa2c6b01] user: jan.nijtmans branch: rfe-4b12ccb336, size: 84590
11:12
Remove COMPAT==0 part, no longer makes sense. More code-cleanup, backported from 8.7 file: 6837c9052e check-in: [f5665fcac2] user: jan.nijtmans branch: core-8-6-branch, size: 83522
2024-04-23
16:06
Hmm, something is broken. Leaving this here but this commit is definitely wrong somehow file: 10927d786f check-in: [b356268e32] user: dkf branch: tidy-indentation, size: 118517
2024-04-18
15:06
Tidy up some indentation and other little code style issues file: 05927248be check-in: [cb11914788] user: dkf branch: tidy-indentation, size: 118514
2024-04-10
15:35
One more TclHasInternalRep() file: be56d44cbe check-in: [295715a1b1] user: jan.nijtmans branch: main, size: 118516
15:26
Merge 8.7 file: e22f6e8e53 check-in: [22cb6d973e] user: jan.nijtmans branch: main, size: 118510
14:47
Merge 8.6 Use TclHasInternalRep() macro in more places. file: f8c9585b76 check-in: [d326acc1c9] user: jan.nijtmans branch: core-8-branch, size: 127741
2024-04-04
12:35
Merge 8.7. encodingPtr -> encodingNamePtr (for consistency) file: 9064dc30f7 check-in: [4a704590fe] user: jan.nijtmans branch: main, size: 118494
11:44
Merge 8.6 file: befb9d4f03 check-in: [09cdca236b] user: jan.nijtmans branch: core-8-branch, size: 127718
11:09
Tcl_GetString() -> TclGetString(), for minor speedup. file: 2043321aac check-in: [0256b2a319] user: jan.nijtmans branch: core-8-6-branch, size: 85871
2024-03-27
20:18
fixes SF [edb4b065f49b9e51]: cherry-picked from 5d52c6d7302b320e] file: 400cc66984 check-in: [ac30912bcc] user: sebres branch: core-8-branch, size: 127724
16:14
Proposed fix for [edb4b065f4] file: 71b2b587f1 check-in: [f5f42a6211] user: apnadkarni branch: bug-edb4b065f4, size: 118495
2024-03-21
13:55
Merge 8.7. Tcl_GetStringFromObj() -> TclGetStringFromObj() (optimization) file: 07868d809b check-in: [28e5e230b6] user: jan.nijtmans branch: main, size: 118493
2024-03-20
20:40
put back line accidently removed file: 35c55e2c36 check-in: [8fd228c660] user: jan.nijtmans branch: main, size: 118509
20:29
Fix [6811a00819]: lsearch performance degradation on Tcl 8.6.11 release (thanks, Sergey!) file: 10a5b75cc3 check-in: [9b8a66aff6] user: jan.nijtmans branch: main, size: 118476
20:09
Fix [6811a00819]: lsearch performance degradation on Tcl 8.6.11 release (thanks, Sergey!) file: 53eedbc5e6 check-in: [3186ba81a2] user: jan.nijtmans branch: core-8-branch, size: 127722
2024-03-19
17:09
more spacing/formatting tweaks file: 1c26d25a0a check-in: [9a59cf8499] user: dkf branch: main, size: 118535
14:56
Fix indentation/brace usage style issues file: 12f26e6d4d check-in: [1fbff64078] user: dkf branch: main, size: 118558
2024-03-13
09:45
Restore TclListObjLength()/TclListObjGetElements() macro's, as they were in 8.6 file: 4b3a88a84a check-in: [c575f9dc00] user: jan.nijtmans branch: core-8-branch, size: 127723
2024-03-12
21:24
Restore TclListObjGetElements()/TclListObjLength() as they were in 8.6 too. file: f1e338bbbb check-in: [63d442cdc0] user: jan.nijtmans branch: main, size: 118473
2024-02-08
12:15
Backport Tcl_ObjPrintf "ll" (and "I32/64") from Tcl 8.7 (again) file: f79f381d00 check-in: [139b450167] user: jan.nijtmans branch: rfe-2089279, size: 86943
2024-02-06
09:55
Merge 8.7 file: df0d4b4e2f check-in: [f1cef9d6c9] user: jan.nijtmans branch: main, size: 118475
09:41
Fix util-18.13/util-18.14 constraint, which masked the wrong result on 64-bit windows. Fixed that as well. file: ae3b764c0b check-in: [d1c674d649] user: jan.nijtmans branch: core-8-branch, size: 127725
2024-02-05
21:12
Merge 8.7 file: 75922bad3c check-in: [b9cc5534cc] user: jan.nijtmans branch: main, size: 118641
21:02
Merge 8.6 file: 148ca59848 check-in: [8060f3f83d] user: jan.nijtmans branch: core-8-branch, size: 127891
18:02
Fix indenting file: 071c6347cd check-in: [64110c20ee] user: jan.nijtmans branch: core-8-6-branch, size: 85872
15:26
Fix [2089279]: StringObj.3 Tcl_ObjPrintf inaccuracies. Not only the documentation, also the behavior in the "unsigned long" case was wrong. Testcases added. file: ab98f1ed84 check-in: [0e4c7187e7] user: jan.nijtmans branch: core-8-6-branch, size: 85919
2024-02-01
21:47
Merge 8.7 file: 6e7c50fc8e check-in: [f08e71ebd9] user: jan.nijtmans branch: main, size: 119042
21:44
Fix [0d78177f20]: unsigned use of Tcl_ObjPrintf() doesn't work as expected. With testcases. file: 8998884352 check-in: [7abae71820] user: jan.nijtmans branch: core-8-branch, size: 128274
2024-01-31
16:29
Backport Tcl_ObjPrintf "ll" (and "I32/64") from Tcl 8.7 file: 4d124814fb check-in: [c6795d89c8] user: jan.nijtmans branch: rfe-2089279, size: 86350
2024-01-30
17:07
Tweaking indentation of code; really unimportant... file: 1a2e4fab92 check-in: [bb72806960] user: dkf branch: dkf-indent-tweak, size: 118373
2024-01-29
15:42
merge 8.7 file: be57c4388d check-in: [a4f2b18577] user: sebres branch: main, size: 118429
15:26
merge 8.6 file: 8b99e3baea check-in: [902ceac239] user: sebres branch: core-8-branch, size: 127661
13:55
closes [db4f2843cd]: fixes SF by BO in ReadChars (and Tcl_ReadChars with append) caused by wrong buffer enlarge if objPtr shimmering to unicode for whatever reason, since Tcl_AppendToObj prefers unicode to bytes, whereas TclAppendUtfToUtf always extend bytes (that handled by ReadChars) file: 8a25497839 check-in: [37e659d589] user: sebres branch: fix-db4f2843cd, size: 85549
2023-12-29
23:54
Fix [abd489a1c]: TclStringCmp() calls functions through pointer to incorrect type file: 607ac0b371 check-in: [c83fa73b65] user: jan.nijtmans branch: main, size: 117463
12:39
Merge 8.6 file: 8f972227cf check-in: [b307c14710] user: jan.nijtmans branch: core-8-branch, size: 126695
2023-11-16
19:26
Fix binary/format/string testcase failures on 32-bit platforms. Reported by Harald Oehlmann. file: 185dbaa916 check-in: [252948ef01] user: jan.nijtmans branch: main, size: 114576
2023-11-08
09:12
Tcl_GetByteArrayFromObj -> Tcl_GetBytesFromObj everywhere in core, since it has the possibility of better error-reporting. This fixes the -DTCL_NO_DEPRECATED build failure file: 314ee2bea8 check-in: [3d21abe846] user: jan.nijtmans branch: main, size: 114593
2023-10-19
18:48
Merge 8.7 file: e57ba3b19f check-in: [f67f60d202] user: jan.nijtmans branch: main, size: 114543
2023-10-17
06:02
Handle sentinels for any C++ compiler file: f34278e81f check-in: [6876d1f99a] user: jan.nijtmans branch: bug-26870862f0, size: 125846
2023-09-18
10:27
int -> Tcl_Size (where appropriate) file: 3157d533df check-in: [1e6ccfd68f] user: jan.nijtmans branch: core-8-branch, size: 125758
06:30
Backport [891a74b941]: format %#d not consistent with other radix prefixes or TIP 472 description file: 16c4379230 check-in: [4eec7c7f53] user: jan.nijtmans branch: core-8-branch, size: 125334
2023-09-16
00:44
Fix bug [891a74b941] - format %#d not consistent with other radix prefixes file: 1a1a13fcf4 check-in: [f46e5b193a] user: griffin branch: main, size: 114455
2023-09-12
10:11
Merge 8.7 file: edee81a180 check-in: [d24c3420fa] user: jan.nijtmans branch: main, size: 114364
07:45
TIP #665: Remove support for internal utf-16 for Tcl 8.7 (and 9.0) file: 9cdc9c9797 check-in: [f28f0f4b68] user: jan.nijtmans branch: core-8-branch, size: 125390
2023-09-11
14:43
TIP #666 implementation: Change ptrdiff_t → Tcl_Size in Tcl 8.7 (and 9.0) file: 36cfd03c21 check-in: [989de6a72a] user: jan.nijtmans branch: core-8-branch, size: 127813
2023-09-05
07:02
Merge 8.7 - Fix [b5ac3e3786] - Tcl_GetUniChar oob read file: e87ecd1a1c check-in: [06dbbb7dbc] user: apnadkarni branch: main, size: 116706
06:42
Merge 8.6 - Fix [b5ac3e3786] - Tcl_GetUniChar oob read file: a30479229c check-in: [fed73e58ba] user: apnadkarni branch: core-8-branch, size: 128458
05:48
Fix [b5ac3e3786] - Tcl_GetUniChar oob read file: b699d4f79b check-in: [fc13863a82] user: apnadkarni branch: bug-b5ac3e3786, size: 84588
2023-07-26
11:29
Rebase to 8.7 file: ad00461de7 check-in: [6ed8dddae4] user: jan.nijtmans branch: tip-666, size: 127736
2023-07-09
12:54
missed a few file: b558fd6c0d check-in: [6fb182d222] user: jan.nijtmans branch: tip-665, size: 125912
12:41
Rebase to 8.7 file: d0381d8886 check-in: [7bf8d24ff3] user: jan.nijtmans branch: tip-665, size: 125917
2023-07-06
16:13
off-by-one. Minor optimization file: 49839218e9 check-in: [627b07acdd] user: jan.nijtmans branch: bug-c5bcbf3494, size: 128381
15:07
Proposed fix for [c5bcbf3494]: Output of surrogates seems to repeat following character. Also use more ***_SURROGATE() macro's file: f2c2bc931d check-in: [ef717df5a5] user: jan.nijtmans branch: bug-c5bcbf3494, size: 128379
2023-06-26
07:24
Merge unchained branch [22400aa71b] and resolve conflicts. file: 6f36c109ee check-in: [961f58e148] user: pooryorick branch: pyk-objinterface, size: 113573
2023-06-18
21:30
Merge trunk-encoding-defaultstrict [c499122331]. file: e28766a1c6 check-in: [22400aa71b] user: pooryorick branch: unchained, size: 112697
2023-06-02
13:59
Merge 8.7 file: 2b5cd0eb3d check-in: [486d398306] user: jan.nijtmans branch: main, size: 116629
12:00
New (internal) macro TclAttemptInitStringRep() file: 0e11258ee0 check-in: [b0b7c9d7b6] user: jan.nijtmans branch: core-8-branch, size: 128060
2023-05-22
10:13
Merge 8.7 file: 3896ca1761 check-in: [f1dbd8559e] user: jan.nijtmans branch: main, size: 116538
2023-05-20
15:40
Minor refactor to combine alloc/realloc file: 9e9a5bd5ec check-in: [6f8be92c87] user: apnadkarni branch: bug-c9663296fd, size: 116540
14:10
Merge "unchained" branch [6b0efb4663] and resolve conflicts. file: ccc8dfcd99 check-in: [1b29063091] user: pooryorick branch: pyk-objinterface, size: 113613
2023-05-19
23:07
Merge trunk file: 909d809573 check-in: [ce1ff6df2b] user: apnadkarni branch: bug-c9663296fd, size: 116466
16:47
More refactoring into common code file: b8588b035e check-in: [617dcb269e] user: apnadkarni branch: bug-c9663296fd, size: 116458
12:08
Merge trunk [c405bdd1f0]. file: ffa19f3d3b check-in: [6b0efb4663] user: pooryorick branch: unchained, size: 112737
11:26
Merge "unchained" branch commit [05b72c0b3f] and resolve conflicts. file: e5d61fcf6d check-in: [2840dda8db] user: pooryorick branch: pyk-objinterface, size: 113534
2023-05-16
05:25
New function, TclDuplicatePureObj(), doesn't duplicate the string representation when duplicating an object, unless necessary. Remove TclListObjCopy() in favor of TclDuplicatePureObj(), allowing internal representation to change after the copy rather than before. file: ba95d20256 check-in: [40af0258ec] user: pooryorick branch: main, size: 116669
2023-05-11
21:47
Merge trunk [05eeae5d67] and resolve conflicts. file: 140b56d059 check-in: [ea8f3cd359] user: pooryorick branch: unchained, size: 112738
21:18
More tweaks, finetuning file: cd579ee3c4 check-in: [683f629ce8] user: jan.nijtmans branch: tip-668, size: 114756
16:35
TIP #668 implementation: Consolidate all Tcl_Attempt* functions. file: 3acb485af4 check-in: [fa605de79a] user: jan.nijtmans branch: tip-668, size: 114519
15:30
Restore warning-free compilation with C++ compiler file: f441f80c57 check-in: [9a4d14e5dc] user: jan.nijtmans branch: main, size: 116670
2023-05-10
15:37
Rebase to latest 8.7 file: 18c4cbb94e check-in: [11d97e377e] user: jan.nijtmans branch: tip-666, size: 127349
2023-05-05
12:36
Merge trunk file: fdfad1c157 check-in: [0579cbaaff] user: apnadkarni branch: bug-c9663296fd, size: 116829
2023-05-04
17:52
Refactor reallocation in preparation for experimentation with different growth factors file: b4b61f9580 check-in: [3f801dc599] user: apnadkarni branch: bug-c9663296fd, size: 116758
13:06
Merge 8.7 file: 3339981180 check-in: [b06ffa0e0e] user: jan.nijtmans branch: main, size: 116661
12:53
Fix [9c397da4a9]: AppendPrintfToObjVA(): support 64-bit pointers file: 460dfe751b check-in: [32db95fa6a] user: jan.nijtmans branch: core-8-branch, size: 127994
06:36
Rebase to latest 8.7 file: d3ac42b101 check-in: [1c4604133e] user: jan.nijtmans branch: tip-665, size: 125284
2023-05-03
16:26
remove "forceUniChar" from TclStringCat() since it isn't used anymore. file: 27513773de check-in: [05b72c0b3f] user: pooryorick branch: unchained, size: 112658
15:51
Backport "Comments only. Fix blatantly obsolete ones". And a few more improvements from the same files. file: b6856eb33c check-in: [797753b302] user: jan.nijtmans branch: core-8-branch, size: 127909
13:18
Fix bug-c9663296fd (in progress) file: 4e7d6d26e5 check-in: [1277a45c56] user: apnadkarni branch: bug-c9663296fd, size: 117236
11:31
Merge [842b3b3949]. file: 05b10a041e check-in: [c3278e757b] user: pooryorick branch: unchained, size: 112708
10:01
Comments only. Fix blatantly obsolete ones file: 07ba0a1800 check-in: [842b3b3949] user: apnadkarni branch: main, size: 116590
2023-05-02
19:58
Fix issue [b3628609ad73a105], by allowing TclStringCat to assume that each Tcl_Obj.bytes value is complete, i.e. concatenating such values does not change the interpretatin of any byte in any of the concatenated values. file: 44eb29881f check-in: [29108f928e] user: pooryorick branch: unchained, size: 112891
12:47
Fix issue [b3628609ad73a105], by allowing TclStringCat to assume that each Tcl_Obj.bytes value is complete, i.e. concatenating such values does not change the interpretatin of any byte in any of the concatenated values. file: e662c81f6c check-in: [2ddc0c3fa9] user: pooryorick branch: pyk-b3628609ad, size: 115834
2023-05-01
20:28
More progress file: 8478bf2bb2 check-in: [f3015fa249] user: jan.nijtmans branch: tip-665, size: 124795
19:42
Remove internal use of TCL_UTF_MAX=3 as much as possible, without compromizing existing TIP's file: 32cf114d51 check-in: [86503e53c7] user: jan.nijtmans branch: tip-665, size: 124868
2023-04-28
23:57
Remove all code related to TCL_NO_DEPRECATED, and some related to TCL_MAJOR_VERSION. file: 9c105f68a5 check-in: [a2e5794d46] user: pooryorick branch: unchained, size: 113632
19:19
Remove TclUtfToUCS4(), TclUniCharToUCS4(), and TclUCS4Prev(). file: cef86f47b7 check-in: [0d4245ab9f] user: pooryorick branch: unchained, size: 114462
17:34
Remove all code related to TCL_UTF_MAX=3. file: 896bcb492e check-in: [d0c75e3b88] user: pooryorick branch: unchained, size: 114458
06:43
Limit memset() to "TCL_UTF_MAX=3' builds. file: e72f178aed check-in: [c72b11eac7] user: pooryorick branch: main, size: 116772
2023-04-27
20:54
Add bytearray checking to TclCheckEmptyString(), and then use TclCheckEmptyString() in Tcl_AppendObjToObj and TclStringCat() to reduce string generation. file: c98efb3fb0 check-in: [90d2fcee22] user: pooryorick branch: main, size: 116745
20:42
Fix for [f5eadcbf9a6b1b4c], passing pointer to uninitialized memory leads Tcl_UniCharToUtf() to corrupt data. file: 66c0e06100 check-in: [480c856482] user: pooryorick branch: main, size: 116707
20:34
memset(0xff) instead of memset(0) to accomodate tests that fill buffer with 0xff. file: 8159bd4891 check-in: [1e52f2b6c3] user: pooryorick branch: bug-f5eadcbf9a6b1b4c, size: 116699
13:52
Simplify Tcl 9 compatibility macro's. No change in functionality. file: 49b753384c check-in: [c0aad60d0c] user: jan.nijtmans branch: core-8-branch, size: 127420
2023-04-26
19:29
Reduce number of needed type-casts. No change in functionality file: 2574de96db check-in: [c7e3f3a76e] user: jan.nijtmans branch: tip-660-continued, size: 116346
2023-04-25
20:34
Fix for issue [f5eadcbf9a], passing pointer to uninitialized memory leads Tcl_UniCharToUtf() to corrupt data. file: a5885afdfb check-in: [db9f715fd5] user: pooryorick branch: bug-f5eadcbf9a6b1b4c, size: 116696
2023-04-24
16:28
Fix [a814ee5bbd] - string compare/equal -length for long strings file: 81d5c740a8 check-in: [e831429a4d] user: apnadkarni branch: main, size: 116338
12:55
Fix [a550f9710b] (format bigdata) file: a3bcfef97c check-in: [0cb8f90d77] user: apnadkarni branch: main, size: 116345
2023-04-23
11:28
Add bytearray checking to TclCheckEmptyString(), and then use TclCheckEmptyString() in Tcl_AppendObjToObj and TclStringCat() to reduce string generation. jn: See discussion on mailing list "On the changing the sourcing of scripts to using strict profiles by default" for explanation why this commit is wrong, just as [e6fe76ae6b] and [4a7b807856] (which are similar commits, disguised as different ones). file: b67084936d check-in: [a61fef8429] user: pooryorick branch: pyk-whatever, size: 115919
2023-04-22
22:49
Make Tcl_AppendObjToObj avoid string generation in a couple more circumstances, and edit some documentation and comments. file: ed6dbcad6d check-in: [e6fe76ae6b] user: pooryorick branch: main, size: 115673
2023-04-21
22:10
Fix issue [b3628609ad73a105] by scrapping most of TclStringCat() in favor of Tcl_AppendObjToObj(). jn: See [https://github.com/tcltk/tcl/actions/runs/4740740589/jobs/8416919499] for one of the reasons for rejection. Also, I share Ashok's remark file: 10b9d071bb check-in: [b699959d62] user: pooryorick branch: pyk-b3628609ad, size: 106780
20:32
Make Tcl_AppendObjToObj more efficient and avoid unnecessarily generating a string representation when the object to append to is the empty string. file: cd982b313a check-in: [4a7b807856] user: pooryorick branch: main, size: 115499
20:18
Reduce diff between 8.7 and 9.0. Add some testcases file: 9938fe3f9a check-in: [2ee8fe15f5] user: jan.nijtmans branch: core-8-branch, size: 127412
2023-04-20
16:53
Merge 9.0 file: 856677c7b4 check-in: [aa3e7e529f] user: jan.nijtmans branch: tip-626, size: 115013
2023-04-19
13:21
Fix [3c04fcdd1a] - join truncates large lists file: d1cf7df40c check-in: [c4ebde4cb9] user: apnadkarni branch: main, size: 115881
2023-04-16
17:31
size_t -> ptrdiff_t to match Tcl 9 unsigned->signed change file: d31f30e632 check-in: [23c8313c59] user: apnadkarni branch: tip-660-tcl8, size: 126958
2023-04-14
15:01
Merge trunk file: 3939d1a58a check-in: [e36ab1e9ba] user: apnadkarni branch: tip-660, size: 115828
09:12
Merge 9.0 file: 3a01a2e790 check-in: [f041e13465] user: jan.nijtmans branch: tip-626, size: 115005
2023-04-13
13:13
Allow Tcl build without the Tcl 8 compat API. Derived from "disabletcl8api" branch (thanks, Rolf), but using the already existing -DTCL_NO_DEPRECATED (in Makefile) or CHECKS=nodep (makefile.vc) Since there are Github Action builds with -DTCL_NO_DEPRECATED/CHECKS=nodep, we cannot use the Tcl 8 compat API in the core code itself any more. file: 9e94e2ef09 check-in: [fc9c3d7c3e] user: jan.nijtmans branch: main, size: 115002
2023-04-12
20:39
Correct the documentation of Tcl_SetObjLength. file: 863e7affb2 check-in: [1209aeff8a] user: pooryorick branch: main, size: 114929
14:25
Correct spelling errors in comments and documentation, but also a non-comment corrections in history.tcl and tcltest.test. file: 8ece670a9f check-in: [d65da06a77] user: pooryorick branch: main, size: 115041
13:30
Correct spelling errors in comments and documentation, but also a non-comment corrections in history.tcl and tcltest.test. file: bca934f4b2 check-in: [aca8de0aeb] user: pooryorick branch: core-8-branch, size: 126956
09:35
Correct spelling errors in comments and documentation, but also non-comment corrections in history.tcl and tcltest.test. file: 759ab7928d check-in: [ee3df4e647] user: pooryorick branch: core-8-6-branch, size: 84375
2023-04-08
08:22
Merge 9.0 file: 51a9e5922f check-in: [33a8c620c8] user: apnadkarni branch: tip-660, size: 115934
2023-04-07
23:14
Editorial fix in Tcl_Panic() message. file: cd58c02cff check-in: [e825ea0680] user: pointsman branch: main, size: 115126
2023-04-06
09:52
Eliminate TCL_SIZE_CMP() for now, not a good idea for Tcl 9.0 file: a31c2c7807 check-in: [d00062f436] user: jan.nijtmans branch: optional-signed-size, size: 115188
2023-04-05
10:45
Export Tcl_GetSizeFromObj in stubs file: 56367e270c check-in: [de9fdf0738] user: apnadkarni branch: tip-660, size: 115933
2023-04-04
20:50
more progress file: a686af8f6e check-in: [4e36871191] user: jan.nijtmans branch: optional-signed-size, size: 115502
2023-04-02
21:49
Merge 9.0. Add some more utility macro's file: 026c5c32fe check-in: [4bedba476d] user: jan.nijtmans branch: optional-signed-size, size: 115287
2023-04-01
11:35
Fix gcc warnings from prior 9.0 merge file: 0492b4845d check-in: [c03ada3a6d] user: apnadkarni branch: tip-660, size: 115927
2023-03-31
21:02
Rebase to latest trunk. More progress file: a3e4960db5 check-in: [642a10ed40] user: jan.nijtmans branch: optional-signed-size, size: 115511
2023-03-30
22:24
Merge 9.0 file: 40f226c5ac check-in: [6396c6443a] user: jan.nijtmans branch: tip-626, size: 115128
22:22
Merge 8.7 file: 2e8fff29e7 check-in: [7c9d2dc7a3] user: jan.nijtmans branch: main, size: 115125
22:02
Merge 8.6 file: b468e1e69c check-in: [166e8656a7] user: jan.nijtmans branch: core-8-branch, size: 127029
18:01
TIP 660. No compiler warnings. Tests suite pass on Win and Ubuntu file: 9886d935e0 check-in: [eb81a25271] user: apnadkarni branch: tip-660, size: 115873
15:19
Fix [0cb3554903]: macOS 13 SDK deprecates sprintf(). But better not use it on other platforms either. file: abf691bf4a check-in: [ec56f33813] user: jan.nijtmans branch: bug-0cb3554903, size: 84403
2023-03-27
11:35
More (internal) usage of TclGetString() and TclGetStringFromObj() macro's file: 7be8dda435 check-in: [86bf13933a] user: jan.nijtmans branch: core-8-branch, size: 126971
2023-03-24
20:58
Merge 8.7 file: 2b97e96c7f check-in: [6301de2138] user: jan.nijtmans branch: main, size: 115067
20:47
Merge 8.6 file: 55e320637c check-in: [87cd711c2a] user: jan.nijtmans branch: core-8-branch, size: 126978
20:19
Fix [15e74a2fe6]: Fix various typos file: 70f9e38060 check-in: [c44138ed03] user: jan.nijtmans branch: core-8-6-branch, size: 84345
2023-03-22
19:40
Merge 9.0 file: e7108f2326 check-in: [f809c32f0e] user: jan.nijtmans branch: tip-626, size: 115065
12:02
Merge 8.7 file: 3292503650 check-in: [f8d60e395f] user: jan.nijtmans branch: main, size: 115062
2023-03-20
18:45
Candidate fix for [f3cb2a32d6] Add initialization to allocation of string rep buffer to resolve valgrind reports on use of uninitialized memory file: a80a91d6bf check-in: [24e82d736e] user: dgp branch: bug-f3cb2a32d6, size: 126973
2023-03-06
19:58
Proposed fix for [f3cb2a32d6]: uninitialized value in format-2.18 file: da7634cb72 check-in: [05e83f801a] user: jan.nijtmans branch: bug-f3cb2a32d6, size: 126905
2023-03-05
00:43
Merge 9.0 file: 60dd308900 check-in: [38f5d517dd] user: jan.nijtmans branch: tip-626, size: 115073
00:26
More -1 -> TCL_INDEX_NONE file: bbe34bdd00 check-in: [7a2fc29ce0] user: jan.nijtmans branch: main, size: 115070
2023-02-27
20:36
Experiment: Use -DTCL_SIGNED_SIZE to switch Tcl_Size from size_t to ptrdiff_t file: 00bb67c834 check-in: [3ea98e212f] user: jan.nijtmans branch: optional-signed-size, size: 115262
2023-02-15
08:10
Merge 9.0 file: a00ab10f32 check-in: [24d64bf0f1] user: jan.nijtmans branch: tip-626, size: 115037
2023-01-28
18:50
Fix "format %c 0x10000041", should give the same answer as in Tcl 8.6 (Handling of TCL_COMBINE flag should not be visible at script level) file: 58c6b59f1f check-in: [12c9df10a3] user: jan.nijtmans branch: main, size: 115034
2023-01-19
15:04
Merge 9.0 file: 033e10cf90 check-in: [c74698a3cd] user: jan.nijtmans branch: tip-626, size: 114971
2023-01-18
17:06
Merge 8.7 file: b0a099d18d check-in: [1ec1783f5d] user: jan.nijtmans branch: main, size: 114968
16:54
Merge 8.6 file: f8c44adb7b check-in: [6dac80a981] user: jan.nijtmans branch: core-8-branch, size: 126888
2022-11-24
20:31
Sync with trunk file: a162036d9e check-in: [866c464f9e] user: griffin branch: tip-636-tcl9-644, size: 114473
14:38
Merge 9.0 file: cd6d5d3e74 check-in: [334190e9b7] user: jan.nijtmans branch: tip-626, size: 114471
14:05
Use Tcl_GetByteArrayFromObj(... in stead of Tcl_GetBytesFromObj(NULL,.... Add some more error-checking for invalid byte-arrays file: 1d26d3062b check-in: [3e18a46195] user: jan.nijtmans branch: main, size: 114468
01:18
Support multiple indicies in abstract list lindex operation. Catch up with trunk. file: 0a1bf3a54e check-in: [cf418732cb] user: griffin branch: tip-636-tcl9-644, size: 114479
2022-11-19
16:29
Merge 9.0 file: e922b9026e check-in: [32aebe8054] user: jan.nijtmans branch: tip-626, size: 114477
2022-11-13
21:46
Merge 9.0 file: 7f11025dae check-in: [f4ff6ec315] user: jan.nijtmans branch: tip-626, size: 114457
06:23
Merge trunk file: d98f09cbc3 check-in: [eb20cd1d93] user: apnadkarni branch: tip-644, size: 114474
2022-11-11
21:51
Merge 8.7 file: 6edbf6eccb check-in: [4b1fe64736] user: jan.nijtmans branch: main, size: 114454
2022-11-09
16:29
Rebase to latest trunk file: 6fd319a6f8 check-in: [9c26ed6942] user: jan.nijtmans branch: tip-644-alt, size: 114462
13:45
Merge trunk. Also update Tcl_ObjType.version to match TIP 644 file: 356134f8c2 check-in: [67db36998a] user: apnadkarni branch: tip-644, size: 114475
2022-11-06
11:19
Rebase TIP #626 to latest 9.0. Change Tcl version number from 9.0 to 9.1a0 file: 68f78f7240 check-in: [efcf7c37fe] user: jan.nijtmans branch: tip-626, size: 114458
05:20
Sync with trunk file: 2189fc4ada check-in: [6a10d9194c] user: griffin branch: tip-636-tcl9-644, size: 114480
2022-11-04
22:47
Implement abstractlist with tip-644 file: 94876eb8b3 check-in: [3aa22fe8ab] user: griffin branch: tip-636-tcl9-644, size: 114462
2022-11-03
12:26
Bug [0f98bce669]. Fix limits for string replace. file: 7310689b8f check-in: [997d8c2052] user: apnadkarni branch: main, size: 114455
2022-11-02
22:33
TIP 636 for Tcl 9 file: 84217cdc89 check-in: [b78cb72678] user: griffin branch: tip-636-tcl9, size: 114437
16:28
Bug #0f98bce669 - string cat support for > 2**31 characters. Tests pending file: 41005dd890 check-in: [de686f44d7] user: apnadkarni branch: main, size: 114437
15:56
Bug #0f98bce669 - string repeat support for > 2**31 characters file: 95bc040ca2 check-in: [adec5fcc5c] user: apnadkarni branch: main, size: 114242
2022-11-01
08:26
Don't bother to provide a TCL_OBJTYPE_SIZE macro file: 4c3e3cac65 check-in: [04e8efd4ac] user: jan.nijtmans branch: tip-644-alt, size: 114002
2022-10-24
11:47
Another possible approach file: 5511dcaf86 check-in: [dc7f554cb0] user: jan.nijtmans branch: tip-644-alt, size: 114017
2022-10-11
15:07
TIP 644 - Make Tcl_ObjType extensible file: b15bf98be4 check-in: [6d1d103cf6] user: apnadkarni branch: tip-644, size: 114015
2022-09-26
15:06
Merge 9.0 file: fc9cefaf9e check-in: [e868215b25] user: jan.nijtmans branch: tip-626, size: 113998
2022-09-24
06:12
merge [trunk] file: 14d5fba29b check-in: [89288053a9] user: bch branch: bch_sign_and_width, size: 114110
2022-09-22
12:40
Merge 8.7 file: 53ad4b585e check-in: [55a6ac3c05] user: jan.nijtmans branch: main, size: 113995
12:32
Merge 8.6 file: 8e3e8e07cc check-in: [6320599e4f] user: jan.nijtmans branch: core-8-branch, size: 126430
2022-09-21
18:38
Update docs and comments to agree with TIP 623. file: 6f0462890e check-in: [87b0acccb6] user: dgp branch: core-8-6-branch, size: 84340
17:50
merge [trunk] file: 1eeaef5369 check-in: [ab16261020] user: bch branch: bch_sign_and_width, size: 113946
2022-07-14
10:53
Same bug-fix as [b79df322a9], but then for Tcl_AppendUnicodeToObj() file: 52f3624d36 check-in: [f3a9189fb4] user: jan.nijtmans branch: core-8-branch, size: 126278
2022-07-13
07:33
Fix build with -DTCL_NO_DEPRECATED file: 092baf8933 check-in: [9ec432e29c] user: jan.nijtmans branch: core-8-branch, size: 126273
2022-07-12
13:30
Fix TCL_UTF_MAX == 3 build file: 9cd69da856 check-in: [6c065977dc] user: jan.nijtmans branch: core-8-branch, size: 126195
12:31
Fix [b79df322a9]. Tcl_GetUnicode/Tcl_NewUnicodeObj crash. Add tests file: 0562545755 check-in: [f562dcb464] user: apnadkarni branch: core-8-branch, size: 126126
12:23
Fix [b79df322a9] follow-up: Tcl_NewUnicodeObj truncates strings file: 46a7b41dc4 check-in: [0e4cbe7bef] user: jan.nijtmans branch: bug-b79df322a9, size: 125979
2022-07-05
21:57
Merge 9.0 file: 79c154537d check-in: [83b4c4aca0] user: jan.nijtmans branch: tip-626, size: 113834
2022-07-04
11:21
TIP #619: New TCL_COMBINE flag for Tcl_UniCharToUtf() file: 6b3cbf329a check-in: [3bb6f6602c] user: jan.nijtmans branch: main, size: 113831
2022-06-30
11:31
Fix [b79df322a9]: Tcl_NewUnicodeObj truncates strings file: f830bdb9b8 check-in: [936c4f4b1c] user: jan.nijtmans branch: core-8-branch, size: 125905
2022-06-23
14:05
Merge 9.0 file: e10a1c9f66 check-in: [24a5f73f89] user: jan.nijtmans branch: tip-626, size: 114012
13:16
Merge 8.7. Update documentation file: d6fb0f4293 check-in: [91447bb515] user: jan.nijtmans branch: main, size: 114009
2022-06-14
14:22
Merge 8.6 file: c685b4feb4 check-in: [ea2c8b8ec1] user: jan.nijtmans branch: core-8-branch, size: 125880
2022-06-09
20:25
Merge 9.0 file: 1ad423c55b check-in: [631cce8656] user: jan.nijtmans branch: tip-619, size: 113807
2022-05-25
22:20
Many int-> size_t file: 56d303f352 check-in: [7062de3ba7] user: jan.nijtmans branch: tip-626, size: 113988
2022-05-19
15:05
Merge 9.0 file: 256ddd6402 check-in: [60d39427c4] user: jan.nijtmans branch: tip-619, size: 113795
15:04
Merge 9.0 file: 93b0420672 check-in: [27d6e8f628] user: jan.nijtmans branch: tip-616, size: 113985
11:00
Elaborate TIP #481 implementation: Make clear that Tcl_GetUnicodeFromObj and Tcl_GetStringFromObj panic if lengthPtr points to an int and length > INT_MAX. Also if sizeof(int) == sizeof(size_t), prefer the size_t variant of the functions file: ce1996a589 check-in: [19af4bcc3f] user: jan.nijtmans branch: main, size: 113973
2022-05-17
16:27
Merge 9.0 file: c5859b6772 check-in: [bc06da9fc7] user: jan.nijtmans branch: tip-619, size: 113631
13:27
Merge 9.0 file: c8d5ba88cd check-in: [e563372259] user: jan.nijtmans branch: tip-616, size: 113821
11:17
Merge 8.7 file: 7d5c4b204b check-in: [74c6a378ca] user: jan.nijtmans branch: main, size: 113809
09:32
Rename macro's TclListObjGetElements -> TclListObjGetElementsM and TclListObjLength -> TclListObjLengthM (prevent conflict with TIP #616) file: b083fa3798 check-in: [eaf93525a5] user: jan.nijtmans branch: core-8-branch, size: 125868
2022-05-16
07:20
Merge 9.0 file: 918937c41e check-in: [bb7df394c9] user: jan.nijtmans branch: tip-616, size: 113819
2022-05-15
23:06
merge [trunk] file: ba497f4669 check-in: [ef75766f09] user: bch branch: bch_sign_and_width, size: 113922
2022-05-01
22:41
merge [trunk] file: ec920789e7 check-in: [3b9626d07b] user: bch branch: bch_sign_and_width, size: 113919
2022-04-26
17:16
Merge 9.0 file: ed8eabb175 check-in: [729eb5af44] user: jan.nijtmans branch: tip-622, size: 113807
16:02
Merge 9.0 file: b25f6a865c check-in: [65fb279cf5] user: jan.nijtmans branch: tip-619, size: 113626
15:59
Merge 9.0 file: 4fadb6df0e check-in: [dda26bfcce] user: jan.nijtmans branch: tip-616, size: 113816
12:22
Tcl_GetIndexFromObjStruct -> Tcl_GetIndexFromObj. Don't use braces around (Tcl_GetBytesFromObj) file: fd3e59ae28 check-in: [b76b65a1af] user: jan.nijtmans branch: main, size: 113804
2022-04-20
20:24
merge [trunk] file: c2a0deee5e check-in: [3550542d19] user: bch branch: bch_sign_and_width, size: 113895
2022-04-14
12:05
Merge 8.7 file: d9b6f61a14 check-in: [f8cdc915ce] user: jan.nijtmans branch: full-utf-for-87, size: 125866
2022-04-08
09:37
Merge 9.0 file: 2c20dbb5ef check-in: [a1d061ebc8] user: jan.nijtmans branch: tip-619, size: 113602
09:13
Merge 8.6 file: c76a2cfac1 check-in: [c4999e5dce] user: jan.nijtmans branch: core-8-branch, size: 112921
09:10
Fix [05ff16e799]: signed integer overflow in ExtendStringRepWithUnicode() file: 66f304a482 check-in: [4958391d5a] user: jan.nijtmans branch: core-8-6-branch, size: 84188
2022-04-01
13:13
Merge 9.0 file: 3241c419cf check-in: [4edde5dc8a] user: jan.nijtmans branch: tip-616, size: 113792
13:12
Merge 9.0 file: 97db51bd97 check-in: [4ce1a22a7f] user: jan.nijtmans branch: tip-619, size: 113575
10:33
Merge 9.0 file: cf1061b785 check-in: [a46b82b5b8] user: jan.nijtmans branch: tip-622, size: 113783
10:29
Add UTF-16 versions of Tcl_GetCharLength/Tcl_GetRange/Tcl_GetUniChar to the stub table. Should have been part of TIP #542. Needed for Tk's "glyph_indexing_2" branch file: e984d71d28 check-in: [9e1c0d7636] user: jan.nijtmans branch: main, size: 113780
2022-03-31
09:44
Oops file: 409ef9e516 check-in: [79cf8dfd4b] user: jan.nijtmans branch: tip-619, size: 110467
07:08
Merge 9.0. Restore some testcases working correctly with TCL_UTF_MAX=3 file: 9dcdb768c4 check-in: [29baa0e4f8] user: jan.nijtmans branch: tip-619, size: 110467
2022-03-30
12:25
Merge 9.0 file: 80d008b823 check-in: [0c8bec9859] user: jan.nijtmans branch: tip-616, size: 110684
12:16
Merge 9.0 file: 89d66ca5f1 check-in: [b8cda9c82e] user: jan.nijtmans branch: tip-622, size: 113785
12:13
Fix limit-checking on first/last arguments for Tcl_GetRange(). Was not correctly forward-merged from core-8-branch (there it's correct) file: a09a446fd9 check-in: [876c0a74be] user: jan.nijtmans branch: main, size: 110672
11:56
Change UTF-16 version of Tcl_GetRange() not to use the tclStringObj type any more file: 315d7a5a91 check-in: [fb73b2740d] user: jan.nijtmans branch: full-utf-for-87, size: 125852
2022-03-29
22:17
Merge 9.0. Fix CONTINUATION macro, and testcases file: e3c1f92f4f check-in: [38c85a4afd] user: jan.nijtmans branch: tip-619, size: 110307
19:40
Add UTF-16 versions of Tcl_NumUtfChars/Tcl_UtfAtIndex to the stub table. Should have been part of TIP #542. Needed for Tk's "glyph_indexing_2" branch file: 0ac85477b3 check-in: [87bc45e9d1] user: jan.nijtmans branch: main, size: 110709
2022-03-25
08:20
Put back Tcl_AppendUnicodeToObj() file: f338679d5e check-in: [b0051f1af1] user: jan.nijtmans branch: tip-622, size: 113868
2022-03-24
23:29
bugfix: Handle NULL characters in Tcl_GetCharLength() file: 95ffc6afe1 check-in: [2dcfc940e5] user: jan.nijtmans branch: full-utf-for-87, size: 126321
22:55
Bugfix for TclGetCharLength(): Make sure objPtr->bytes is filled file: 35054c7850 check-in: [36e99f8654] user: jan.nijtmans branch: tip-622, size: 113863
14:28
Add UTF-16 versions of Tcl_GetRange/Tcl_GetUniChar file: 9920d0b7ad check-in: [019a79d8e8] user: jan.nijtmans branch: tip-622, size: 113839
13:58
Add TclGetUniChar() to the compatibility set file: fc6179f510 check-in: [e75009fecd] user: jan.nijtmans branch: full-utf-for-87, size: 126293
13:18
Fix internal usage of Tcl_GetRange/Tcl_UtfAtIndex file: 44ea91e59e check-in: [51e84a3825] user: jan.nijtmans branch: full-utf-for-87, size: 124869
12:43
Add TclGetRange() to the compatibility set file: d6a7a1b553 check-in: [004fcfa041] user: jan.nijtmans branch: full-utf-for-87, size: 124870
10:48
When compiled with TCL_NO_DEPRECATED, remove the UTF16 compatibility layer. So, we make sure that it is never used internally for the Core. This means that extensions using the compatibility layer won't work any more in this mode; extensions should be compiled using TCL_UTF_MAX=4 then they work again. file: 51fa843fb0 check-in: [a68880dccd] user: jan.nijtmans branch: full-utf-for-87, size: 123247
2022-03-23
16:33
Fix for UpdateStringOfUTF16String() file: fa76f218b2 check-in: [bdeaacdce5] user: jan.nijtmans branch: full-utf-for-87, size: 122920
16:19
Put back TclNumUtfChars() macro as TclNumUtfCharsM() file: 646e05106f check-in: [790f6f1d5a] user: jan.nijtmans branch: full-utf-for-87, size: 122920
13:31
Fix crash in (compabitility) "string" objType file: e016c41e85 check-in: [26ed86a3c8] user: jan.nijtmans branch: full-utf-for-87, size: 123003
2022-03-22
20:07
Merge 8.7 file: 8d0acac2b2 check-in: [40b724b4a8] user: jan.nijtmans branch: full-utf-for-87, size: 123042
17:06
Put back TclNumUtfChars (as TclNumUtfCharsM) macro for speedup file: 3ad00de888 check-in: [a52cd29e90] user: jan.nijtmans branch: tip-622, size: 111807
15:38
Feature-complete file: 5a95591120 check-in: [d2ae10faca] user: jan.nijtmans branch: full-utf-for-87, size: 123031
11:25
More progress file: f055edabd2 check-in: [8a7b81816e] user: jan.nijtmans branch: full-utf-for-87, size: 123023
08:16
Add UTF-16 versions of Tcl_UniCharLength/Tcl_NumUtfChars/Tcl_UtfAtIndex. Needed for Tk's glyph_indexing_2, and possibly other extensions sticking at TCL_UTF_MAX=3 file: c761b59e78 check-in: [d9384cad48] user: jan.nijtmans branch: tip-622, size: 111811
2022-03-16
22:21
Handle Tcl_GetCharLength file: 2113f65278 check-in: [2cce141084] user: jan.nijtmans branch: full-utf-for-87, size: 123137
14:55
Merge 8.7. First working version, feature complete file: 257cbe2905 check-in: [a9a14d5e6c] user: jan.nijtmans branch: full-utf-for-87, size: 121920
2022-03-15
13:59
Merge 9.0. Don't combine surrogates when appending UTF-32 strings file: 3c10aaa5b1 check-in: [80bff79ed3] user: jan.nijtmans branch: tip-619, size: 110404
2022-03-14
23:14
Some restructuring. Now compiles/runs fine with TCL_UTF_MAX=3 file: c70a7e9aac check-in: [7772cd8a61] user: jan.nijtmans branch: full-utf-for-87, size: 119090
16:06
More progress file: 510338c707 check-in: [48ab8b7472] user: jan.nijtmans branch: full-utf-for-87, size: 116662
2022-03-13
23:12
Merge 8.7. More progress file: 8f9386d16f check-in: [38d0c3aade] user: jan.nijtmans branch: full-utf-for-87, size: 116446
2022-03-12
23:21
Start defining "utf32string" type file: a98156ac97 check-in: [b46d5c684f] user: jan.nijtmans branch: full-utf-for-87, size: 114541
22:30
More progress file: dc8a5462fa check-in: [2e24803530] user: jan.nijtmans branch: full-utf-for-87, size: 112918
2022-03-11
22:43
2 more functions file: a1bf6095e2 check-in: [f3580d9f09] user: jan.nijtmans branch: full-utf-for-87, size: 112905
22:11
Handle TclUniCharNcmp() file: 102324ee2d check-in: [715b107f62] user: jan.nijtmans branch: full-utf-for-87, size: 112906
2022-03-08
22:26
initial work at using signed-storage for cases where values can actually be signed. file: b551aebda0 check-in: [5030ee02cf] user: bch branch: bch_sign_and_width, size: 110820
17:35
merge 8.7 Closing this branch. The work on branch full-utf-for-8.7 is more likely to reach the solution we seek. file: 803b87b1ba check-in: [46d18fc696] user: dgp branch: dgp-ucs4, size: 114539
17:12
Backport fix and test for typecasting bug in Tcl_GetUniChar(). file: 91480c72bd check-in: [e7356da76c] user: dgp branch: core-8-6-branch, size: 84174
09:59
Merge 9.0 file: cc8098a482 check-in: [a7ba5388fd] user: jan.nijtmans branch: tip-616, size: 110717
08:27
Merge 8.7 file: 26e7cd4027 check-in: [f1e19261f7] user: jan.nijtmans branch: main, size: 110705
08:23
This typecast is wrong (and was already wrong). Correct it, and add testcase to prove it file: 1d38fa1d17 check-in: [51b9da64b4] user: jan.nijtmans branch: core-8-branch, size: 112907
00:01
Merge 8.7 file: 09ffc73bc8 check-in: [3528d7188f] user: dgp branch: dgp-ucs4, size: 114529
2022-03-07
23:59
Starting in Tcl 8.7, Tcl_GetUniChar() returns int, not Tcl_UniChar (TIP 389). Make typecasts of returned values match the new signature. file: 9e0ff7049d check-in: [421d89a270] user: dgp branch: core-8-branch, size: 112897
23:52
Start sketch of offering UCS4 interfaces in Tcl 8.7. file: a8802e1309 check-in: [f71034e070] user: dgp branch: dgp-ucs4, size: 114536
2022-03-06
15:51
Merge 8.6 file: 5aeda28c82 check-in: [1a8ae15079] user: jan.nijtmans branch: core-8-branch, size: 112905
15:49
Fix [112e7aa36d]: signed integer overflow in Tcl_SetObjLength(), Tcl_AttemptSetObjLength() file: edba4bf04d check-in: [2699f682ae] user: jan.nijtmans branch: core-8-6-branch, size: 84170
2022-02-24
22:35
Merge 9.0 file: f003f03fba check-in: [bb8e96bb20] user: jan.nijtmans branch: tip-616, size: 110715
22:31
Merge 8.7 file: e6f4387ec2 check-in: [56e377a7ea] user: jan.nijtmans branch: main, size: 110703
22:20
3 more files with TCL_UTF_MAX checks file: b3d382f87a check-in: [70eb0efb69] user: jan.nijtmans branch: core-8-branch, size: 112845
2022-02-10
09:45
Merge 8.7 file: 825b6020ab check-in: [d7e83e77e8] user: jan.nijtmans branch: main, size: 110705
09:37
Merge 8.6 file: 00d43da985 check-in: [c03b7afd75] user: jan.nijtmans branch: core-8-branch, size: 112847
09:26
Use TclListObjLength/TclListObjGetElements in stead of Tcl_ListObjLength/Tcl_ListObjGetElements everywhere. This is slightly more efficient if the refered list already has the correct type file: 474c6cef25 check-in: [30cd3187fc] user: jan.nijtmans branch: core-8-6-branch, size: 84110
08:42
Same with TclListObjGetElements file: 91278732d7 check-in: [5f2ed67ee3] user: jan.nijtmans branch: tip-616, size: 110717
08:34
Tcl_ListObjLength -> TclListObjLength file: 5f5c6d7b57 check-in: [8186be0b8d] user: jan.nijtmans branch: tip-616, size: 110718
2022-01-29
00:16
merge [argx_rejig] file: b8acd9fad3 check-in: [f834558929] user: bch branch: mistake, size: 110741
2022-01-27
22:26
3 more API's file: 98df29f9af check-in: [7413e9f3e3] user: jan.nijtmans branch: tip-616, size: 110719
2022-01-26
08:37
More WIP file: eff9a71ad6 check-in: [3f003f3286] user: jan.nijtmans branch: tip-616, size: 110716
2022-01-24
11:53
Tcl Dicts > 2^31 elements too file: a1d240097b check-in: [6f6602a104] user: jan.nijtmans branch: tip-616, size: 110722
08:18
TIP #616: Tcl lists > 2^31 elements. WIP file: 1afa33cd14 check-in: [ff0a9cf127] user: jan.nijtmans branch: tip-616, size: 110707
2022-01-21
16:16
In case troubles are found in Tcl_GetRange(), this branch brings back Tcl_GetRange() to how it was in Tcl 8.6.10. file: e42b2b7e3d check-in: [5b0676e5ca] user: jan.nijtmans branch: bug-e9a2715d91, size: 83659
14:44
Undo part of [26539e78a7]. Although Tcl_GetRange() does it's own parameter check, it's caller doesn't have to do it any more. However, put back these check, better not depend on the improved behavior of Tcl_GetRange (yet). This gives the freedom to bring back Tcl_GetRange() to how it was in Tcl 8.6.10, if desired file: 508fb05671 check-in: [78bfdd485f] user: jan.nijtmans branch: core-8-6-branch, size: 84111
2022-01-18
16:14
Merge 8.7 file: 3da0abe505 check-in: [86dd2bcab2] user: jan.nijtmans branch: main, size: 110706
15:52
Merge 8.6 file: df440db3f3 check-in: [de79810eea] user: jan.nijtmans branch: core-8-branch, size: 112848
2022-01-17
17:26
Possible fix for [e9a2715d91]: Tcl 8.6.11: Incompatible Tcl_GetRange() file: a24f15040b check-in: [ed61de701e] user: jan.nijtmans branch: bug-e9a2715d91, size: 84101
17:10
Merge 8.7 file: a5e8507575 check-in: [e8e2a9f506] user: jan.nijtmans branch: main, size: 110636
17:02
Merge 8.6 file: 4b097c6b7d check-in: [ea38112364] user: jan.nijtmans branch: core-8-branch, size: 112742
16:44
Tcl_NewObj() -> TclNewObj() file: e4d8bf5130 check-in: [df30948549] user: jan.nijtmans branch: core-8-6-branch, size: 83995
13:37
Merge 8.7 file: a2e557a744 check-in: [fe9317ddb0] user: jan.nijtmans branch: main, size: 110567
11:21
Merge 8.6 file: c1e35fbae5 check-in: [636d27ef56] user: jan.nijtmans branch: core-8-branch, size: 112673
10:35
Follow-up to [767e070d35]: Tcl_GetRange and Tcl_GetUniChar do not validate index inputs. Now that Tcl_GetRange() checks its arguments, the callers of this function don't have to do that any more. This also shows a off-by-one error in the Tcl_GetRange() check file: 0d0b9e2adf check-in: [147f3b129a] user: jan.nijtmans branch: core-8-6-branch, size: 83926
2022-01-14
10:29
Merge 8.7. Fix (windows MSVC OPTS=symbols) build error file: c27d3af368 check-in: [a80b314df5] user: jan.nijtmans branch: main, size: 110636
10:10
Merge 8.6 file: c52b9ea977 check-in: [9b26217141] user: jan.nijtmans branch: core-8-branch, size: 112742
2022-01-13
12:22
Fix [816913a65e]: GrowStringBuffer(): signed integer overflow. And a few similar situations in other place file: bb8b832768 check-in: [a03e9793d4] user: jan.nijtmans branch: bug-816913a65e, size: 83995
2021-12-21
17:23
Merge 8.7 file: 73155d54c4 check-in: [a03edf1949] user: jan.nijtmans branch: strict-index-experiment, size: 112715
16:18
New macro TclNewIndexObj(). For Tcl 8.7 it's the same as TclNewIntObj(), but in Tcl 9.0 not any more. Merge 8.6 file: 49304971b1 check-in: [cc79d9889f] user: jan.nijtmans branch: core-8-branch, size: 112739
2021-12-16
21:26
Merge 8.6 file: a4977ae739 check-in: [96119ec205] user: jan.nijtmans branch: core-8-branch, size: 112735
21:25
Fix [d1434179b5]: avoid signed integer overflow in AppendUtfToUtfRep() file: 182856bbb1 check-in: [8340945434] user: jan.nijtmans branch: core-8-6-branch, size: 83992
2021-12-15
16:58
Addendum to [41b1406f51]: change '<=' in range-check to '<' file: 437785621e check-in: [8f432c79cf] user: jan.nijtmans branch: core-8-6-branch, size: 83974
2021-12-13
13:01
Merge 8.7 file: 36b3443d19 check-in: [431e660796] user: jan.nijtmans branch: main, size: 110633
12:59
Merge 8.6 file: 2aa4691522 check-in: [1d30b9892d] user: jan.nijtmans branch: core-8-branch, size: 112718
11:39
Fix [41b1406f51]: AppendUtfToUtfRep(): undefined behavior involving pointers file: 0d019c8da6 check-in: [3f70533e6d] user: jan.nijtmans branch: core-8-6-branch, size: 83975
2021-11-07
14:52
Dodge a few macro games. file: 226be3d4ab check-in: [0e4cc79075] user: dgp branch: dgp-properbytearray, size: 110612
2021-11-06
18:12
Eliminate more branch diffs. file: 732426b396 check-in: [7d93edb658] user: dgp branch: dgp-properbytearray, size: 110630
17:55
Eliminate more branch diffs with trunk that have no apparent connection to TIP 568. file: 31d4a1bafb check-in: [afbf82e475] user: dgp branch: dgp-properbytearray, size: 110624
2021-10-31
16:21
Merge 8.7 file: 77cb9e87b7 check-in: [e837834cb3] user: jan.nijtmans branch: strict-index-experiment, size: 112677
2021-10-26
08:54
Merge 9.0 file: 44dbd17726 check-in: [62c63b4818] user: jan.nijtmans branch: pyk-objinterface, size: 111594
2021-10-24
15:55
Fix memory errors in lsearch, add the first few string routines to Tcl_ObjType, modify StringIndexCmd to use to use the Tcl_ObjType interface. Valgrind reports no memory errors. file: 519fcd6092 check-in: [cb6b5b14dd] user: pooryorick branch: pyk-objinterface, size: 111524
2021-10-19
14:42
IntRep -> InternalRep. Internal changes only. file: eb55c02f0b check-in: [40343f5fb6] user: jan.nijtmans branch: core-8-6-branch, size: 83954
2021-10-18
15:02
Add the first few string functions to the Tcl_ObjType interface, move function declarations out of tclInt.h. file: 2fe6fb08c6 check-in: [09c4094c6e] user: pooryorick branch: pyk-objinterface, size: 110740
2021-10-08
12:36
Merge trunk file: 408db55140 check-in: [2b008d21a1] user: jan.nijtmans branch: dgp-properbytearray, size: 110603
08:40
Merge 8.7 file: 528a430ba7 check-in: [916029c89c] user: jan.nijtmans branch: main, size: 110607
2021-10-06
19:33
Change "IntRep" to "InternalRep", as discussed in the Tcl Core mailing list file: 3bd8568225 check-in: [0509fa5750] user: jan.nijtmans branch: internalrep, size: 112697
2021-08-23
10:01
Add FALLTHRU markers, to help GCC emit less false warnings file: 69e0e4a36b check-in: [85f10205a7] user: jan.nijtmans branch: core-8-5-branch, size: 80491
2021-04-23
19:26
merge trunk file: 18f61a431b check-in: [b86fc048cb] user: dgp branch: dgp-properbytearray, size: 110533
2021-04-21
06:54
Merge 8.7 file: 8bb6eebc8f check-in: [98f163f0e6] user: jan.nijtmans branch: main, size: 110537
06:21
Enhance TclStringCat(). In stead of forcing incoming obj's to Unicode representation, teach it how to handle single continuation bytes and surrogate-pairs. file: 58ca3fc05c check-in: [2ce693447e] user: jan.nijtmans branch: bug-7f1162a867, size: 113216
2021-04-20
13:45
Fixes for Valgrind issues similar to [ec06d0db3225afca]. file: d26bcbd96d check-in: [ec5b3d21f9] user: pooryorick branch: core-8-branch, size: 112627
11:15
Merge 8.7 file: 40004d7389 check-in: [96b6edd8ee] user: jan.nijtmans branch: main, size: 110434
10:29
Fix for issue [ec06d0db3225afca]. file: 3a362617c8 check-in: [c7100a073b] user: pooryorick branch: core-8-branch, size: 112524
2021-04-15
06:39
Merge 8.7 file: 3adf4631af check-in: [249f885bcc] user: jan.nijtmans branch: main, size: 110597
2021-04-14
19:15
Restore expectation for Tcl_AppendObjToObj() file: 2f32440d06 check-in: [ac4d764e38] user: jan.nijtmans branch: bug-7f1162a867, size: 112687
17:12
merge trunk file: 1c4adb8fe3 check-in: [cf68fd3906] user: dgp branch: dgp-properbytearray, size: 110397
08:35
Merge 8.7 file: 3de1b7c99c check-in: [aa97f285c7] user: jan.nijtmans branch: main, size: 110401
2021-04-13
11:51
Fix testcase utf-1.18 file: 2c98e34429 check-in: [81bc5145d7] user: jan.nijtmans branch: bug-7f1162a867, size: 112491
2021-04-12
09:30
Merge 8.7 file: 61bfcfe5ed check-in: [fd66e6e20e] user: jan.nijtmans branch: main, size: 110389
2021-04-09
13:01
Fix TclStringCat() functions. This makes allmost all testcases pass, one left to go: utf-1.18 file: 3d05d334f7 check-in: [a7df881994] user: jan.nijtmans branch: bug-7f1162a867, size: 112479
10:57
Rename macro to ISCONTINUATION() file: 627a7c8152 check-in: [184e71413b] user: jan.nijtmans branch: bug-7f1162a867, size: 111930
09:14
new macro ISCONTBYTEORLOWERSURROGATE() file: e9439c2edf check-in: [f67812666d] user: jan.nijtmans branch: bug-7f1162a867, size: 111984
07:33
Fix append-3.4, append-3.7 and utf-1.18 testcases file: 89213be625 check-in: [d98eed4419] user: jan.nijtmans branch: bug-7f1162a867, size: 111683
2021-03-15
14:01
merge trunk file: 630a85db33 check-in: [9949dc3d16] user: dgp branch: dgp-properbytearray, size: 109158
12:31
Merge 8.7 (this is the TIP #575 implementation for Tcl 9.0) file: bb49ce37b9 check-in: [3fed9809e1] user: jan.nijtmans branch: main, size: 109162
11:52
Implement TIP #575: Switchable Tcl_UtfCharComplete()/Tcl_UtfNext()/Tcl_UtfPrev() file: 662b722f1a check-in: [4abf5fb992] user: jan.nijtmans branch: core-8-branch, size: 111252
2021-03-11
14:43
merge trunk file: 53e3b00bb0 check-in: [1517cf05c6] user: dgp branch: dgp-properbytearray, size: 109155
2021-03-10
15:48
Merge 8.7 file: 4b3a2af8d9 check-in: [62a4501023] user: jan.nijtmans branch: main, size: 109159
15:47
Merge 8.6 file: 138f5e4749 check-in: [bcaebc9bb7] user: jan.nijtmans branch: core-8-branch, size: 111249
2021-02-16
16:31
merge trunk file: e61bddf6de check-in: [5ada5ae596] user: dgp branch: dgp-properbytearray, size: 109128
12:17
Merge 8.7 file: 8fd095f4a5 check-in: [6d6e1bc54f] user: jan.nijtmans branch: tip-575, size: 111225
12:14
Merge 8.7 file: e67f86cd34 check-in: [7dcf2aa4a8] user: jan.nijtmans branch: main, size: 109132
12:07
Fix bug in previous commit: Don't update stringPtr->numChars when doing a "string reverse", because TclUtfToUCS4() doesn't count surrogate pairs as 2 file: 500ae31569 check-in: [859adaff91] user: jan.nijtmans branch: core-8-6-branch, size: 83949
12:00
Merge 8.6 file: 25fb9a941e check-in: [80ca3616d8] user: jan.nijtmans branch: core-8-branch, size: 111222
11:11
Fix [22324bcbd]: string reverse is broken for Emoji. Thanks to Chrisian Werner for bug report and POC patch. file: 44c709d68a check-in: [6e5efe220f] user: jan.nijtmans branch: core-8-6-branch, size: 84026
2021-02-15
12:08
Merge 8.7 file: 16704e415d check-in: [6a6cafb81f] user: jan.nijtmans branch: tip-575, size: 110668
2021-01-21
14:05
Merge TIP 481 (resolve conflicts) file: 9c64d353f3 check-in: [61fcaefc06] user: jan.nijtmans branch: dgp-properbytearray, size: 108574
2021-01-11
10:03
Merge 8.7, resolve conflicts file: 7832b339b0 check-in: [015ff38790] user: jan.nijtmans branch: main, size: 108578
2020-12-13
16:59
Merge 8.7 file: 977c550262 check-in: [0631cdce81] user: jan.nijtmans branch: tip-575, size: 109935
2020-12-11
08:25
Merge 8.7 file: 5afa51a15e check-in: [504174b35e] user: jan.nijtmans branch: tip-481, size: 110665
2020-12-08
15:42
Merge 8.7 file: 3063df09d9 check-in: [71493b571b] user: jan.nijtmans branch: main, size: 107893
15:31
Add -finput-charset=UTF-8 and -fextended-identifiers to gcc (and clang). All C sources can now use UTF-8, as far as gcc/clang/msvc support it. Not used yet file: 64af5efde6 check-in: [4254aa305b] user: jan.nijtmans branch: core-8-branch, size: 109932
2020-11-26
03:26
use new TIP 494 64bit/#define in code comment to be consistent w/ code file: 9363563def check-in: [5dda536a26] user: bch branch: main, size: 107898
2020-11-25
09:52
Merge 8.7 file: 25c5578344 check-in: [5b4e732208] user: jan.nijtmans branch: tip-481, size: 110674
2020-10-14
06:08
Merge 8.7 file: 7d92401aa9 check-in: [a5f7cc9ba9] user: jan.nijtmans branch: tip-575, size: 109940
2020-10-13
15:54
Merge 8.7 file: d442f744b4 check-in: [b054ba1d5f] user: jan.nijtmans branch: trunk, size: 107886
15:45
Merge 8.6 file: 24aa9c0b44 check-in: [bfda87dfca] user: jan.nijtmans branch: core-8-branch, size: 109937
14:59
More usage of TclNewObj() in stead of Tcl_NewObj() and TclNewIntObj() in stead of Tcl_NewIntObj() file: 128437bfe2 check-in: [cfbd35f083] user: jan.nijtmans branch: core-8-6-branch, size: 83387
09:07
Merge 8.6 Eliminate some (correct but actually harmless) warnings only happening on win64 file: a59769f067 check-in: [f14b6f4907] user: jan.nijtmans branch: core-8-branch, size: 109933
2020-10-12
09:27
Merge 8.7 file: 0d6e5722d7 check-in: [ff7bcb2801] user: jan.nijtmans branch: strict-index-experiment, size: 109883
2020-09-28
10:49
Merge 8.7 file: 04156792f5 check-in: [07a4a82fd2] user: jan.nijtmans branch: trunk, size: 107882
10:39
Merge 8.6 file: 153564ef4a check-in: [ef2427283a] user: jan.nijtmans branch: core-8-branch, size: 109903
2020-09-18
09:43
Merge 8.7. Undo signature change for Tcl_GetIntForIndex file: b7c91db254 check-in: [6b2676abbb] user: jan.nijtmans branch: strict-index-experiment, size: 109832
08:33
New macro TclNewIndexObj() which does the same as TclNewWideIntObjFromSize() but optimized the same way as TclNewIntObj(). file: b872143a8f check-in: [d701aa51d5] user: jan.nijtmans branch: trunk, size: 107831
2020-09-17
14:12
Merge 8.7 file: 4c5911c975 check-in: [92d5c95fd8] user: jan.nijtmans branch: trunk, size: 107787
13:48
Eliminate many usages of Tcl_NewObj (-> TclNewObj) and Tcl_NewIntObj (-> TclNewIntObj or Tcl_NewWideIntObj) file: 81f831aa8c check-in: [ef22eb8ac3] user: jan.nijtmans branch: core-8-branch, size: 109852
2020-09-11
14:23
More usage for TclNewWideIntObjFromSize(), TCL_IO_FAILURE -> TCL_INDEX_NONE where appropriate file: 38cec81bfc check-in: [61832a1b89] user: jan.nijtmans branch: trunk, size: 107801
2020-08-11
06:08
Merge 8.6 file: 78dc34f5dd check-in: [bf77bc0365] user: jan.nijtmans branch: core-8-branch, size: 109866
2020-06-18
09:31
msgcat: Don't use "string first/last" file: 19fae1a231 check-in: [64f9fb3f9a] user: jan.nijtmans branch: strict-index-experiment, size: 110062
2020-06-04
15:15
Merge 8.7. Use more TCL_INDEX_NONE in documentation/headers/code. file: ab7cd1000c check-in: [baad702302] user: jan.nijtmans branch: trunk, size: 107899
2020-05-24
22:35
Merge jn-index-reform branch file: 509d4f6500 check-in: [2d1fc5b3d1] user: jan.nijtmans branch: strict-index-experiment, size: 110033
2020-05-04
12:31
New internal function TclGetUCS4() only available when TCL_UTF_MAX=4. This fixes all "knownBug" testcases related to tip389. file: 5db1cd6503 check-in: [41517f0841] user: jan.nijtmans branch: core-8-6-branch, size: 83383
2020-04-30
17:21
Work In Progress. Much trickiness about sorting out expectations. file: fff4642f7e check-in: [581d6b939a] user: dgp branch: bug-e617e8a71a, size: 111225
2020-04-24
10:49
Merge 8.7 file: 697b786ef4 check-in: [aa56ee88d9] user: jan.nijtmans branch: trunk, size: 107927
2020-04-18
13:53
Missing Tcl_UniChar initializations allow 4-byte Tcl_UtfToUniChar to act on uninitialized mem and get into big trouble. This bug fix is abandoned. A better solution was adopted instead. file: f04c3aff3a check-in: [517b1c87da] user: dgp branch: bug-c574e50a3b, size: 80291
2020-04-17
05:49
Merging forward the Utf changes. Needs some repair yet. file: efd25157c5 check-in: [36303870fc] user: dgp branch: dgp-fixme, size: 109875
2020-04-16
20:38
Merge 8.5. Failing tests for now. To be remedied shortly. file: 66712b6d5b check-in: [6596c4af31] user: dgp branch: core-8-6-branch, size: 81584
18:14
Create and use macro TclUtfPrev for Tcl_UtfPrev. file: e0252da4c9 check-in: [3ba6c74d19] user: dgp branch: core-8-5-branch, size: 80454
2020-04-14
14:30
Merge 8.7 file: 2ccf3ff80f check-in: [bd5cc21d39] user: jan.nijtmans branch: trunk, size: 107930
10:17
Merge 8.6 file: 34811a63f5 check-in: [250fd8a281] user: jan.nijtmans branch: core-8-branch, size: 109878
2020-04-13
21:36
Merge 8.5. Failing tests highlight ticket [1b1f5f0b53]. file: cf1bd8c9d1 check-in: [50b6d532c4] user: dgp branch: core-8-6-branch, size: 81587
2020-04-09
22:27
Bulletproof the calls to Tcl_UtfPrev in Tcl_AppendLimitedToObj. file: cf1b605e89 check-in: [05bb517053] user: dgp branch: core-8-5-branch, size: 80457
2020-03-31
14:19
Merge jn-index-reform file: 3a1d7bd9f3 check-in: [16f8ccae83] user: jan.nijtmans branch: strict-index-experiment, size: 109930
2020-03-30
12:04
Merge 8.7 file: 27b2ecb8c3 check-in: [beb27c9e8c] user: jan.nijtmans branch: trunk, size: 107831
11:37
Optimize TclStringFirst/TclStringLast: Let it return a Tcl_Obj * in stead of an int, so its callers don't need to do the conversion any more. file: d92b66f9eb check-in: [cb795a476e] user: jan.nijtmans branch: core-8-branch, size: 109772
2020-03-27
15:46
Since we allocate an extra byte (for terminating NUL), overflow protection has to keep the needed string length strictly less than INT_MAX. EDIT: Sorry, that was wrong, for a slightly tricky reason. The objPtr->length field is type int, so must be limited to INT_MAX. That's the limit to protect. The memory allocation routines accept (unsigned int) argument as the number of bytes to allocate, so they can accept a request for INT_MAX + 1. file: a4aea3fd96 check-in: [2eca3128d3] user: dgp branch: mistake, size: 81480
10:33
Fix [767e070d35]: Tcl_GetRange and Tcl_GetUniChar do not validate index inputs file: 41c76b3f25 check-in: [89f3dff179] user: jan.nijtmans branch: bug-767e070d35, size: 81481
2020-03-09
13:08
Merge 8.7 file: 6d01760a57 check-in: [8a76d170c1] user: jan.nijtmans branch: trunk, size: 107647
12:31
More TCL_UNUSED file: fea257a137 check-in: [bfd792d6c8] user: dgp branch: core-8-branch, size: 109496
2020-02-28
12:46
Merge 8.7 file: efb60ff41d check-in: [b7af922d61] user: jan.nijtmans branch: trunk, size: 107827
2020-02-13
22:06
Merge 8.7 file: f19fd89a63 check-in: [c59e305ca6] user: jan.nijtmans branch: cplusplus, size: 109676
2020-01-20
14:19
Merge 8.7 file: cb7e65f394 check-in: [3d7b2dce60] user: jan.nijtmans branch: trunk, size: 107732
2020-01-08
23:00
merge 8.7 file: ca12c512a5 check-in: [7c9f4a0cee] user: dgp branch: utf-max, size: 109581
13:19
Merge 8.7 file: 5eb31e6a80 check-in: [a8d369c3a1] user: jan.nijtmans branch: trunk, size: 107749
13:16
Merge 8.6 file: a88e96ab48 check-in: [544c17046b] user: jan.nijtmans branch: core-8-branch, size: 109591
2019-12-13
15:41
Merge 8.7 file: 91e8ff80c9 check-in: [24728eab4a] user: jan.nijtmans branch: utf-max, size: 109565
15:39
Merge 8.7 file: 5f739372dd check-in: [a4ec5ee9ad] user: jan.nijtmans branch: cplusplus, size: 109670
13:06
Merge 8.7 file: 1b070d630c check-in: [742a212258] user: jan.nijtmans branch: trunk, size: 107733
2019-12-08
16:33
Fix Valgrind problem reported as follow-up in [fc4393e9b0]. Since it happens only for TCL_UTF_MAX>3 it's not actully a 'bug' in 8.6, but it might be a corner-case not handled well in 8.7 file: 91c04f69e1 check-in: [62c2c904c3] user: jan.nijtmans branch: core-8-6-branch, size: 80648
2019-11-18
14:40
Some code cleanup. Build with zlib dll on Win32 when using makefile.vc (shared-build only) file: 2160a148d8 check-in: [d83d101308] user: jan.nijtmans branch: utf-max, size: 109562
2019-11-01
11:25
Re-base to core-8-branch file: d1373b2aad check-in: [0dd430544f] user: jan.nijtmans branch: digit-bit-60, size: 109575
2019-09-25
13:42
Merge 8.7 file: 8701a247ba check-in: [be233f3e67] user: jan.nijtmans branch: utf-max, size: 109572
2019-09-03
20:32
Mark more unused parameters file: a4a6b7500b check-in: [c07dbdd62a] user: jan.nijtmans branch: cplusplus, size: 109667
2019-08-29
13:28
Merge tip-548 file: b8703d6d47 check-in: [c933888049] user: jan.nijtmans branch: cplusplus, size: 109645
2019-08-28
11:45
Merge 8.7 file: 1c046c9717 check-in: [590a4ca494] user: jan.nijtmans branch: trunk, size: 107730
11:15
Merge 8.6 file: 5f01ade415 check-in: [8f92213e5f] user: jan.nijtmans branch: core-8-branch, size: 109572
09:59
Add /* FALLTHRU */ markers in various places (silencing possible GCC warnings). Eliminate some more "register" keywords. Eliminate (or silence) some unused function parameters. file: 452823711e check-in: [7c9c59b504] user: jan.nijtmans branch: core-8-6-branch, size: 80658
2019-08-13
21:00
Eliminate dependency in test-suite on Unicode functions. Merge tip-548. Fix build with -DTCL_NO_DEPRECATED file: 4ff5aa2278 check-in: [67ec088a1c] user: jan.nijtmans branch: utf-max, size: 109535
2019-08-12
20:38
Merge branch tip-548. No longer define addtional stub-entries for functions that will be removed (because of deprecation) anyway file: 7e3440aa03 check-in: [50d822dbab] user: jan.nijtmans branch: utf-max, size: 109516
2019-08-02
12:15
Merge 8.7. Continue implementation for win32 file: ec03e35c50 check-in: [ff6fa30271] user: jan.nijtmans branch: cplusplus, size: 109608
2019-08-01
11:55
Merge tip-548 file: 13c1283ed4 check-in: [8819e7a6a3] user: jan.nijtmans branch: utf-max, size: 109539
2019-07-24
08:29
Merge 8.7 file: fbdc45fa22 check-in: [613d2ea48f] user: jan.nijtmans branch: trunk, size: 107693
2019-07-23
06:47
Eliminate the use of C++ keywords as variable names. Nothing more than rename the variables in something else. file: d56bee14fc check-in: [6c003af490] user: jan.nijtmans branch: core-8-branch, size: 109535
2019-07-10
05:51
Merge 8.7, and continue implementation. Almost done file: d47618dfdc check-in: [237cdadf3f] user: jan.nijtmans branch: cplusplus, size: 109606
2019-05-31
12:50
TIP 537 implementation: Enable 64-bit indexes in regexp matching file: d0a7f7b7a2 check-in: [6e8aae14c1] user: jan.nijtmans branch: trunk, size: 107629
2019-05-29
23:08
Merge 8.5 file: 1f0e32043b check-in: [a5dc393eae] user: jan.nijtmans branch: core-8-6-branch, size: 80621
22:48
Update some libtommath functions to the latest trunk versions. Small step forward in the upgrade to (upcoming) libtommath 1.2. Advantage: simplify Tcl code accessing those functions. file: 11c697ef16 check-in: [5bc72628bd] user: jan.nijtmans branch: core-8-5-branch, size: 80324
2019-05-24
20:10
end-of-line spacing file: ccb338e464 check-in: [b770ca8973] user: jan.nijtmans branch: core-8-6-branch, size: 80633
2019-05-23
18:44
More bits and pieces of logging code file: a85c569839 check-in: [b52c723e54] user: dkf branch: tip-390, size: 109621
2019-05-22
21:50
More simplifications, taking deprecations into account file: 0df47e5ee6 check-in: [b95de9a625] user: jan.nijtmans branch: utf-max, size: 109475
07:32
More WIP: eliminate all usage of (platform-specific) Tcl_WinTCharToUtf()/Tcl_WinUtfToTChar() to its proposed portable replacements: Tcl_Utf16ToUtfDString()/Tcl_UtfToUtf16DString() This allows for Tcl_WinTCharToUtf()/Tcl_WinUtfToTChar() to be declared deprecated. file: 211be787b1 check-in: [a33e22b6ba] user: jan.nijtmans branch: utf-max, size: 109471
2019-05-17
14:22
Merge 8.7 file: 8346ccf7c4 check-in: [592c6ff5b4] user: jan.nijtmans branch: utf-max, size: 109500
2019-05-14
19:28
Merge 8.7 file: 2312316e33 check-in: [26ddaf45e0] user: jan.nijtmans branch: trunk, size: 107635
19:26
Merge 8.6 file: f31e84b20c check-in: [2c56cc8106] user: jan.nijtmans branch: core-8-branch, size: 109471
19:13
Merge 8.5 file: 756d73b413 check-in: [3f4bd3bf4e] user: jan.nijtmans branch: core-8-6-branch, size: 80637
18:42
DIGIT_BIT -> MP_DIGIT_BIT, since DIGIT_BIT is deprecated in future libtommath versions. So, better stop using it at all. Also add some other defines/typdefs for future libtommath compatibility. file: e157e79561 check-in: [464bb2de83] user: jan.nijtmans branch: core-8-5-branch, size: 80336
2019-05-10
07:50
Merge trunk file: 048affed9a check-in: [f0009090a2] user: jan.nijtmans branch: regexp-api-64bit, size: 107614
07:46
merge 8.7 file: 00f515f82a check-in: [f3302db091] user: jan.nijtmans branch: utf-max, size: 109485
2019-04-19
00:38
merge 8.7 file: d35dfbf035 check-in: [ddaa30125b] user: dkf branch: trunk, size: 107620
2019-04-09
19:21
Merge 8.7. Complete implementation for MSVC and for UNIX. file: 3a8b6b893b check-in: [b392834e2c] user: jan.nijtmans branch: digit-bit-60, size: 109433
2019-04-08
14:02
typo fix file: 2b8fe4e5bf check-in: [d3a48e8450] user: dgp branch: dgp-string-insert, size: 109456
13:54
extend comment file: 7694281cf8 check-in: [55e4917f08] user: dgp branch: dgp-string-insert, size: 109454
2019-03-31
22:03
Enhance documentations. Move TCL_INDEX_NONE from tclInt.h to tcl.h, since it's too useful. file: ada8838c42 check-in: [b1a506218e] user: jan.nijtmans branch: regexp-api-64bit, size: 107588
2019-03-18
22:17
Merge 8.7 file: 74f357d033 check-in: [b9ad5fe740] user: jan.nijtmans branch: trunk, size: 107594
22:14
enlarge a few small buffers, which could overflow using Unicode characters > /UFFFF. Eliminate some end-of-line spacing file: 293ba9c693 check-in: [41c373ad8f] user: jan.nijtmans branch: core-8-branch, size: 109430
2019-03-17
22:01
More WIP. Seems to be *almost* working. file: e5cefd0895 check-in: [ab13cbd74c] user: jan.nijtmans branch: utf-max, size: 109459
2019-03-16
21:10
Merge 8.7 Move up some stub entries related to Tcl_UniChar Use TCL_UTF_MAX=4 for full Unicode in stead of TCL_UTF_MAX=6 (TCL_UTF_MAX: 3 is default) file: 6a7bcbe651 check-in: [81502a66ed] user: jan.nijtmans branch: utf-max, size: 109457
2019-03-12
20:39
Even better support for -DTCL_UTF_MAX=6. Ongoing improvements (TIP being planned) file: cb4ac928a3 check-in: [fdcb2a7323] user: jan.nijtmans branch: utf-max, size: 109467
2019-03-11
20:56
Merge 8.7 file: 9a2c584339 check-in: [13fd8a4647] user: jan.nijtmans branch: trunk, size: 107604
20:25
Fix [590e687905]: utf-1.11 test-case fails file: 7ff771ac42 check-in: [07c460f447] user: jan.nijtmans branch: core-8-branch, size: 109440
2019-03-08
23:54
Merge trunk. Further WIP for TIP #497, far from finished .... file: 2a74bd6c11 check-in: [9fcbdde251] user: jan.nijtmans branch: tip-497, size: 106676
22:51
Merge 8.7 file: 4106daac08 check-in: [fe02c8898e] user: jan.nijtmans branch: trunk, size: 107589
2019-03-02
16:04
Backport [bd94500678e837d7] from 8.7, preventing endless loops in UTF-8 conversions when handling surrogates. Only effective when compiling with -DTCL_UTF_MAX=4|6 (default: 3). Meant for benefit of Androwish. file: 6699048f14 check-in: [9e1984c250] user: jan.nijtmans branch: core-8-6-branch, size: 80622
2019-03-01
21:59
Merge 8.7 file: 073c0fcf1f check-in: [3e48d44568] user: jan.nijtmans branch: trunk, size: 107529
21:05
More use of TclHasIntRep() macro. Add vfs build director to fossil ignore-glob file: 2da93da41a check-in: [6df74d3d53] user: jan.nijtmans branch: core-8-branch, size: 109425
2019-02-27
21:58
Merge 8.7 file: e8f02c5ddb check-in: [727e74f081] user: jan.nijtmans branch: trunk, size: 107509
21:29
Fix [bd94500678e837d7]: SEGFAULT by conversion of unicode (out of BMP) to byte-array file: 3750ef3fb4 check-in: [efe8f3e6b0] user: jan.nijtmans branch: core-8-branch, size: 109405
2019-02-26
19:37
More use of (efficient) TclHasIntRep() macro. Also eliminate many (size_t) and (unsigned) type-casts, which don't make sense any more. file: 21bcf8a7f1 check-in: [2c7db3fa01] user: jan.nijtmans branch: mistake, size: 109376
2019-02-19
20:17
Merge 8.7 file: 9c9c94de64 check-in: [2b82daafb8] user: jan.nijtmans branch: trunk, size: 107474
20:16
Merge 8.6 file: f4dbc052ce check-in: [1b17625b60] user: jan.nijtmans branch: core-8-branch, size: 109394
20:12
Fix some comments: "upper" -> "high" (when talking about surrogates) file: b48c1ddbe2 check-in: [1d9b7f26b0] user: jan.nijtmans branch: core-8-6-branch, size: 80593
19:38
Minor optimizations file: 9a85b8fcc2 check-in: [0e2621fc4b] user: jan.nijtmans branch: bug-bd94500678, size: 109423
2019-02-05
21:35
More size_t-related consolidations. Now regexp can handle strings >2GB and more. Remove many type-casts which are not necessary any more. file: 4d98d5258c check-in: [4b4fe25e7d] user: jan.nijtmans branch: trunk, size: 107462
2019-02-04
22:45
Merge trunk file: 8881d78796 check-in: [a6db8815ce] user: jan.nijtmans branch: tip-502-for-9, size: 107475
2019-02-01
20:36
Another (big) round of int -> size_t enhancements. So Tcl can handle string >2GiB in more places. file: 97e786f319 check-in: [8534448b44] user: jan.nijtmans branch: trunk, size: 107971
2019-01-24
21:07
Merge trunk file: 28f9e33dec check-in: [28d2c77936] user: jan.nijtmans branch: tip-502-for-9, size: 107967
20:10
Another round of int -> size_t modifications, so strings > 2Gb are handled correctly on 64-bit platforms. file: 221f9d3d19 check-in: [0c0ff65606] user: jan.nijtmans branch: trunk, size: 107954
2019-01-20
01:36
Merge trunk. All callers of TclIndexDecode and related functions now adapted for enhanced index range. file: bb710e8ff3 check-in: [87b7cb4d1c] user: jan.nijtmans branch: tip-502-for-9, size: 107955
2018-12-26
15:04
Many internal int -> size_t increases, so string lengths > 2Gb can be handled correctly in many more places. file: 179f898259 check-in: [2549977bc4] user: jan.nijtmans branch: trunk, size: 107942
2018-12-13
21:01
Merge 8.7, and make all test-cases pass. file: c95781ac93 check-in: [6415cac417] user: jan.nijtmans branch: trunk, size: 107866
20:01
Fix 2 TIP #502 corner-cases. Those corner-cases where (probably) always wrong on 32-bit systems, but now we have a TIP describing how it's expected to behave! Thanks to Emiliano for noticing and reporting it. Added 6 test-cases for completeness, 2 of them failed before this fix. Also optimize TclStringLast() a bit, implementing the pre-condition tests as in TclStringFirst(). file: 60f83484b4 check-in: [f2b18389ce] user: jan.nijtmans branch: core-8-branch, size: 109395
2018-12-12
20:14
Merge 8.7 file: 6f2a724cec check-in: [4c2ed52f8f] user: jan.nijtmans branch: trunk, size: 107334
19:38
If compiled with -DTCL_NO_DEPRECATED, remove Tcl_NewIntObj/Tcl_NewLongObj/Tcl_DbNewLongObj from stub table, as they will be gone in 9.0 (converted to a macro) Use Tcl_WideInt's directly in more places, diminishing the possibility of inadvent overflow. file: 0bece9cda8 check-in: [72e64ef096] user: jan.nijtmans branch: core-8-branch, size: 108975
2018-11-19
14:14
Repair a few typos file: f344289853 check-in: [5615a6c6ac] user: dgp branch: jn-use-macros, size: 107324
2018-11-18
10:29
Now that we have TCL_AUTO_LENGTH/TCL_IO_FAILURE macro's, use them to make code and documentation more readable. Shifted to feature branch as a temporary measure since it doesn't build. file: 67866514de check-in: [d828309515] user: jan.nijtmans branch: jn-use-macros, size: 107326
2018-11-16
20:44
merge 8.7 file: 04bf5a1358 check-in: [d167840eb0] user: dgp branch: trunk, size: 107192
20:37
merge 8.6 file: df3e4e43fb check-in: [d00889251a] user: dgp branch: core-8-branch, size: 108971
2018-11-06
12:59
merge core-8-branch file: 6617967c12 check-in: [445db2cb18] user: dkf branch: mistake, size: 107171
2018-10-18
15:31
merge 8.7 file: 40409af68a check-in: [000ee6e038] user: dgp branch: tip-445, size: 108950
2018-10-11
18:54
Merge 8.7 file: f20666f398 check-in: [37418eb6d5] user: jan.nijtmans branch: tip-481, size: 109694
2018-10-08
22:22
Re-base to 8.7 file: 4d25480c49 check-in: [e007a2ab3c] user: jan.nijtmans branch: tip-481, size: 109590
2018-09-13
20:52
merge trunk file: dc4e403ad8 check-in: [8e81b9d9b8] user: jan.nijtmans branch: memory-API, size: 107182
20:52
merge 8.7 file: 43a9dec279 check-in: [0caf13a0cf] user: jan.nijtmans branch: trunk, size: 107393
20:33
Eliminate the use of macro's like LLONG_MAX|MIN, since they assume that Tcl_WideInt equals "long long". Also eliminate uses of Tcl_WideAsLong() and friends, as - often - simple type cases make things more clear. file: 7ab0ea12a1 check-in: [f89b8af179] user: jan.nijtmans branch: core-8-branch, size: 108961
2018-09-05
14:54
Merge trunk. Also rename TCL_NO_LENGTH -> TCL_AUTO_LENGTH file: 8b3c0ea730 check-in: [6488c06992] user: jan.nijtmans branch: memory-API, size: 107191
2018-09-04
14:37
Merge 8.7 file: 9d7c7cf60b check-in: [cbb275cb09] user: jan.nijtmans branch: trunk, size: 107402
14:37
Fix [540bed4bde]: binary format can result in "integer value too large to represent". Implemented a new utility function TclGetWideBitsFromObj(), which handles the overflowing of integers using bignums. This function can be used in a _LOT_ of other places, preventing code duplication. Done that as well. Those changes have no effect on other commands, only two new "binary format" test-cases for this specific situation: binary-44.5 and binary-44.6 file: 7c9ee1e7b1 check-in: [c531497fcb] user: jan.nijtmans branch: core-8-branch, size: 108970
2018-09-01
22:01
Change ckalloc and friends to Tcl_Alloc and friends. Add two defines, TCL_IO_FAILURE and TCL_NO_LENGTH (experimental, still open to be renamed following discussion) file: 2f8d1883de check-in: [f13660b5a5] user: jan.nijtmans branch: memory-API, size: 107793
2018-08-30
21:28
Merge 8.7, and improve TIP implementation (using utility function in more places) file: 44c93aff0d check-in: [47b67cd37d] user: jan.nijtmans branch: tip-514, size: 108970
2018-08-19
09:33
Re-base branch "all-wideint" to core-8-branch. Still WIP file: 8538e18011 check-in: [4932848e36] user: jan.nijtmans branch: tip-514, size: 108394
09:13
Still WIP. All test-cases pass now in 32-bit file: f4e0f52cd6 check-in: [a655e95f95] user: jan.nijtmans branch: all-wideint, size: 109023
2018-08-14
07:27
Merge 8.7. Also provide a new function for handling ByteArrays file: 78d0f41993 check-in: [2e99b95206] user: jan.nijtmans branch: tip-481, size: 110201
2018-08-02
23:08
Merge 8.7 file: 52cf30541a check-in: [0c87f5e4b5] user: jan.nijtmans branch: trunk, size: 108004
22:37
Purge end-of-line spacing file: 1198989c8c check-in: [0ce23bd179] user: jan.nijtmans branch: core-8-branch, size: 109572
2018-07-30
19:00
merge trunk file: dda010ecc2 check-in: [6e3719d0e0] user: jan.nijtmans branch: memory-API, size: 107777
2018-07-26
19:10
merge 8.7 file: 96698c5c48 check-in: [48caefe5a1] user: sebres branch: trunk, size: 108011
18:58
merge 8.6: bug [d051b77fc1] fixed file: 13414d77c8 check-in: [4e57a1242b] user: sebres branch: core-8-branch, size: 109579
18:56
amend after merge: 8.6th provide additionally an error-code (so missing `errCode = "OVERFLOW"`) file: 951453d5ae check-in: [64c3676a57] user: sebres branch: core-8-6-branch, size: 80594
18:51
merge 8.5 - bug [d051b77fc1] fixed file: e09f8da9cc check-in: [de522f0a45] user: sebres branch: core-8-6-branch, size: 80570
16:14
[ba921a8d98] Make sure [string cat] includes all data from all bytearrays. file: 79f47698aa check-in: [9819e2fe99] user: dgp branch: core-8-branch, size: 109491
15:57
closes [d051b77fc18d7340]: fixed segfault by integer overflow (if width by format like "%4000000000g" overflows to negative values by scan of length) file: d5fd925496 check-in: [16846911c7] user: sebres branch: core-8-5-branch, size: 80321
2018-07-22
20:44
Fix for [ba921a8d98e02a96] - concatenating binary array with empty string yields the empty string. file: 9c2311113a check-in: [f274e1f1ba] user: pooryorick branch: core-8-branch, size: 109023
2018-07-04
21:11
merge trunk file: 7c6c381215 check-in: [05cecae336] user: jan.nijtmans branch: memory-API, size: 107275
20:56
Merge 8.7 file: ef14b8d97d check-in: [4d8ee0f939] user: jan.nijtmans branch: trunk, size: 107502
20:20
Make Tcl_GetUnicode() a macro. Mark many other stub-entries which are no longer are in use (because they were converted to macros) as deprecated, since they will be removed in Tcl 9.0 file: 46dd0a615a check-in: [b2835364c2] user: jan.nijtmans branch: core-8-branch, size: 109070
2018-07-03
19:24
More size_t API changes (*.decls files are complete now) file: daa9b7f21a check-in: [c49c6efd43] user: jan.nijtmans branch: memory-API, size: 108002
2018-07-02
19:39
Use size_t in more API's, e.g. *RegExp* types file: 8433ca6acf check-in: [a494b98da4] user: jan.nijtmans branch: memory-API, size: 107965
2018-07-01
10:31
New macro TclGetByteArrayFromObj() which can handle size_t file: c24b376dff check-in: [c62e09171f] user: jan.nijtmans branch: memory-API, size: 107935
09:11
New macro TclGetUnicodeFromObj() which can handle size_t file: 11e32de1b2 check-in: [426d67c6bb] user: jan.nijtmans branch: memory-API, size: 108261
06:21
Starting to update all callers of TclGetStringFromObj() to use size_t variables file: dfa2e61eb0 check-in: [97c2217f81] user: jan.nijtmans branch: memory-API, size: 108061
2018-06-29
20:28
Another round of size_t'isms, this time also for Tcl_DString file: 76ba2e1e68 check-in: [70159a633b] user: jan.nijtmans branch: memory-API, size: 108049
2018-06-28
21:42
More API changes using size_t. Internal changes not complete yet (WIP) file: 546522c34e check-in: [1bfecd9172] user: jan.nijtmans branch: memory-API, size: 107998
20:30
More using TCL_Z_MODIFIER where possible file: 38c04b1365 check-in: [3cdf0d20c9] user: jan.nijtmans branch: memory-API, size: 107995
2018-06-27
19:09
merge trunk file: 11fff13278 check-in: [2cc2d71f0a] user: jan.nijtmans branch: memory-API, size: 108024
2018-06-24
20:27
Merge 8.7 file: 884d00077a check-in: [1c88810e71] user: jan.nijtmans branch: trunk, size: 108229
2018-06-18
15:59
Merge 8.6. And add more documentation and test-cases regarding the behavior of Tcl_UniCharToUtf() file: 8ed065ea88 check-in: [3cb0cedeb6] user: jan.nijtmans branch: core-8-branch, size: 108991
15:54
Fix [53cad613d8]: TIP 389 implementation makes Tk tests font-4.12 and font-4.15 fail. One more situation in which high surrogate causes problem file: a881d2cd7b check-in: [c45de6cdb4] user: jan.nijtmans branch: core-8-6-branch, size: 80506
2018-06-16
12:32
Change signature of Tcl_GetRange() to use size_t. Merge trunk. file: f785e906e1 check-in: [8e3bd50a3b] user: jan.nijtmans branch: memory-API, size: 108065
2018-06-08
12:50
resolves some warnings by compiling with new gcc-versions (>= 7.x): - '*' in boolean context, suggest '&&' instead [-Wint-in-bool-context] - passing argument 1 of 'Tcl_CreateExitHandler' from incompatible pointer type [-Wincompatible-pointer-types] file: ba3226dc2a check-in: [9ea4420be8] user: sebres branch: core-8-5-branch, size: 80257
2018-05-27
12:49
Merge 8.7. Modify various other functions to use size_t in stead of int arguments file: 9efc2a405c check-in: [6d05288cf7] user: jan.nijtmans branch: memory-API, size: 107892
2018-05-25
06:55
merge trunk file: 95f21d9ee3 check-in: [e9340634d6] user: jan.nijtmans branch: memory-API, size: 107920
2018-05-24
12:46
merge 8.7 file: 52d060459a check-in: [620705ca16] user: dgp branch: tip-445, size: 108863
2018-05-23
20:09
merge trunk file: ef7082d76f check-in: [1a6fcb9bdc] user: jan.nijtmans branch: memory-API, size: 107885
19:41
merge trunk file: 928c7a3232 check-in: [c78f328143] user: jan.nijtmans branch: novem, size: 108419
2018-05-13
13:55
merge 8.7 file: 15e78ad983 check-in: [aba84558d8] user: jan.nijtmans branch: trunk, size: 108112
07:17
General code style cleanup. file: 493f1fec6f check-in: [ea1fc89541] user: dkf branch: core-8-branch, size: 108874
2018-05-11
11:26
merge 8.7 file: 6bdce712ba check-in: [5dd49e9ab7] user: dgp branch: tip-445, size: 108744
2018-05-08
15:22
merge 8.7 file: 0a449d8cf9 check-in: [966bdc055f] user: dgp branch: trunk, size: 107993
15:00
merge 8.6 file: f05f05c4e0 check-in: [714db5afb8] user: dgp branch: core-8-branch, size: 108755
2018-05-07
14:33
merge core-8-6-branch file: 5a811b0b84 check-in: [cb43f6d65a] user: pooryorick branch: core-8-branch, size: 108627
2018-05-05
16:38
Avoid generating string representation when comparing the empty string. file: c2a0df6df8 check-in: [14d9d1de63] user: pooryorick branch: pyk-emptystring-core-8-6, size: 80362
11:39
merge trunk file: 7a1a877a62 check-in: [609ff1ffd8] user: pooryorick branch: pyk-emptystring, size: 102973
2018-04-25
13:02
merge 8.7 file: 8f55cafd87 check-in: [c16d974b49] user: dgp branch: tip-445, size: 102834
2018-04-20
10:18
merge 8.7 file: 3ae16cbf1b check-in: [149309017e] user: jan.nijtmans branch: trunk, size: 102083
10:16
TIP #389 implementation. file: 38c4b46476 check-in: [e109760b1c] user: jan.nijtmans branch: core-8-branch, size: 102845
2018-04-15
22:01
Merge trunk file: 527c32e8d3 check-in: [ee95a2c1be] user: jan.nijtmans branch: memory-API, size: 100748
2018-04-11
16:17
merge 8.7 file: 4149f96408 check-in: [fdf9328219] user: dgp branch: tip-389, size: 102855
2018-04-06
19:14
Merge 8.7. Update two macros to TIP 445. file: a4a23150bd check-in: [671aed379d] user: dgp branch: tip-445, size: 101725
2018-04-05
17:59
merge trunk file: e88ac09b25 check-in: [e45bb42625] user: dgp branch: novem, size: 101281
17:59
merge 8.7 file: 762ef51f42 check-in: [8c34e3aa19] user: dgp branch: trunk, size: 100974
17:22
Plug memleak in [format] applied to bignums. file: 9b146d72d7 check-in: [225c752bdc] user: dgp branch: core-8-branch, size: 101736
15:38
merge trunk file: f288a64474 check-in: [df11ae7d89] user: dgp branch: novem, size: 101262
15:38
merge 8.7 file: 2e4af53e80 check-in: [68c23a4642] user: dgp branch: trunk, size: 100955
15:37
[string cat] was failing to NUL terminate string reps. Stopped "string" values triggering false valgrind alarms when tests make use of [tcl::unsupported::representation]. file: 1f688db11b check-in: [6360678926] user: dgp branch: core-8-branch, size: 101717
2018-03-30
21:10
merge 8.7 file: 4f2bc2fbdf check-in: [2430760def] user: dgp branch: tip-389, size: 102795
19:37
merge 8.7 file: 9e114826ec check-in: [c8f51180e2] user: dgp branch: tip-445, size: 101665
2018-03-24
10:22
Update TZ info to tzdata2018d. file: cedc6e9f1c check-in: [c0a51531fd] user: jima branch: novem, size: 101221
2018-03-20
19:58
merge 8.7 file: e16741d88c check-in: [1f55c24720] user: dgp branch: trunk, size: 100914
16:10
Test and fix for botch in binary string replace. file: f2d496f401 check-in: [a0dec2ad25] user: dgp branch: core-8-branch, size: 101676
2018-03-15
14:55
merge trunk file: 1f47aa9d18 check-in: [4a5c8f2780] user: dgp branch: novem, size: 101181
14:37
merge 8.7 file: 07e93f6a2d check-in: [d1e80d709a] user: dgp branch: tip-389, size: 102755
14:23
merge 8.7 file: 39272f5367 check-in: [4f13fe6bce] user: dgp branch: tip-445, size: 101625
2018-03-14
16:17
merge 8.7 file: 7b2d54eca1 check-in: [961ccb69d2] user: dgp branch: trunk, size: 100874
15:17
New routine TclStringReplace() serves as a common implementation for both compiled and direct eval paths of [string replace]. One routine to debug, optimize, convert to new data structures, etc. This routine will also make a good core engine for [string insert]. With this refactoring done, the value of the INST_STR_REPLACE instruction is no longer clear. Until now, the value of compiling to it was that it routed you through the "better" of the two implementations. An instruction that does nothing different from what invocation to the direct eval fallback would do does not have obvious value. file: d06f65aea0 check-in: [190272213a] user: dgp branch: core-8-branch, size: 101636
2018-02-27
21:55
Merge trunk file: b990c81bfe check-in: [bbb2d60708] user: jan.nijtmans branch: memory-API, size: 96163
2018-02-23
18:20
merge trunk file: 5ad97902f0 check-in: [e719d71c96] user: dgp branch: novem, size: 96696
18:10
merge 8.7 file: a025d2edff check-in: [8b6f45e051] user: dgp branch: trunk, size: 96389
18:08
merge 8.7 file: 9f74e5d30b check-in: [8d012d639c] user: dgp branch: amg-string-insert, size: 107662
18:01
merge 8.7 file: 5eabaf0a34 check-in: [9d0eb0566c] user: dgp branch: tip-445, size: 97140
17:49
Don't let presence of a string rep prevent optimizations on "pure" bytearrays. file: ceb3105bce check-in: [7f4d49a687] user: dgp branch: core-8-branch, size: 97151
2018-02-22
21:17
merge trunk file: f3aae0abc7 check-in: [709a045dbb] user: jan.nijtmans branch: memory-API, size: 96267
2018-02-15
18:27
merge 8.7 file: 8230929c8d check-in: [ced3f8220a] user: dgp branch: amg-string-insert, size: 107766
18:24
merge 8.7 file: 4b10eca601 check-in: [fb5189741a] user: dgp branch: tip-445, size: 97244
2018-02-14
21:02
merge trunk file: 625881368f check-in: [399a998d7a] user: jan.nijtmans branch: novem, size: 96800
20:59
fix test-cases, account for differences between Tcl 8.7 and 9.0 file: 4d02686b12 check-in: [8668416b0a] user: jan.nijtmans branch: trunk, size: 96493
20:43
merge core-8-branch file: ea7cc76352 check-in: [5cfe15b5d6] user: jan.nijtmans branch: trunk, size: 96640
15:33
merge 8.7 file: 875c361645 check-in: [1a4479ca01] user: dgp branch: z_modifier, size: 97255
2018-02-09
20:57
merge 8.7 file: b04351d2a2 check-in: [d200f0036e] user: dgp branch: amg-string-insert, size: 107328
2018-02-06
21:11
merge 8.7 file: 771a221a06 check-in: [f7dba39527] user: dgp branch: tip-445, size: 96806
21:08
merge trunk file: 8cce0fc7b4 check-in: [a233811733] user: jan.nijtmans branch: memory-API, size: 95989
21:01
merge trunk file: 19160116f3 check-in: [0774eefae7] user: jan.nijtmans branch: novem, size: 96418
20:54
merge core-8-branch file: d0a45288cf check-in: [30f95df8b0] user: jan.nijtmans branch: trunk, size: 96202
19:10
Rework TclStringReverse to consistent standard form. file: 555ac2f1dd check-in: [40a7339d29] user: dgp branch: dgp-string-tidy, size: 96817
18:33
TclStringLast fixed. file: c4a36775f7 check-in: [514c7bb735] user: dgp branch: dgp-string-tidy, size: 96711
17:26
Rename TclStringFind to TclStringFirst. Repair its operations on bytearrays. Stop trying to operate on utf-8 until we nail that down better. file: bd7a2c8685 check-in: [d37a7eed5d] user: dgp branch: dgp-string-tidy, size: 97350
2018-02-05
16:34
Revise the TclStringCat() interface to follow a common pattern. file: 65ceff8c0f check-in: [77b878eb09] user: dgp branch: dgp-string-tidy, size: 96995
16:10
Revise TclStringRepeat() interface so that in place operations are done only by caller request. Establish a re-usable pattern. file: a6d60a00de check-in: [87c1b5cb88] user: dgp branch: dgp-string-tidy, size: 97047
13:41
Improved overflow prevention. file: dbf8ae4d93 check-in: [45d6ea17ab] user: dgp branch: dgp-string-tidy, size: 97016
13:33
Improved overflow prevention. file: f16028f371 check-in: [37bc8a96c8] user: dgp branch: dgp-string-tidy, size: 97025
2018-01-29
11:36
merge trunk file: 9c955d5add check-in: [3faa71ab4f] user: jan.nijtmans branch: memory-API, size: 96206
2018-01-26
16:20
merge core-8-branch. Also add range checks to Tcl_GetUniChar() and Tcl_Range(), as suggested by Don Porter. file: 0f07448430 check-in: [c33b158bd6] user: jan.nijtmans branch: tip-389, size: 98131
2018-01-25
19:36
merge 8.7 file: 0b7ce1bc7f check-in: [aedd087091] user: dgp branch: amg-string-insert, size: 107548
2018-01-18
13:32
merge 8.7 file: fafa7f3276 check-in: [bac2c99230] user: dgp branch: tip-445, size: 97001
2018-01-17
13:16
merge trunk (most of the API removals already were on "novem") file: edc884a987 check-in: [36a7ab983d] user: jan.nijtmans branch: novem, size: 96603
2018-01-15
11:41
merge core-8-branch file: 4a209a206b check-in: [962da37427] user: jan.nijtmans branch: z_modifier, size: 97450
2018-01-12
11:18
merge core-8-branch file: 8e2e5cd74c check-in: [3451858e13] user: jan.nijtmans branch: trunk, size: 96397
2018-01-11
15:59
merge core-8-branch. Remove left-over debugging code. Test-case string-5.21 still fails. file: d5957d9d33 check-in: [ad24e66451] user: jan.nijtmans branch: tip-389, size: 97607
15:45
merge core-8-6-branch file: ae8ea18980 check-in: [a0d51b9a0e] user: jan.nijtmans branch: core-8-branch, size: 97012
15:44
Fix behavior of Tcl_GetRange() and "string range" regarding surrogates, when Tcl is compiled with -DTCL_UTF_MAX=4. Partial fix for bug [11ae2be95dac9417]. Also, fix typo. file: 7c9a7ab3c8 check-in: [27a52735df] user: jan.nijtmans branch: core-8-6-branch, size: 79472
14:11
Add test-cases for bug [11ae2be95dac9417], and make a start fixing it. Almost works. file: 11e3ac6576 check-in: [6758341b2f] user: jan.nijtmans branch: tip-389, size: 97606
2017-12-23
20:18
merge core-8-branch file: a0e8103418 check-in: [4cc6fab374] user: jan.nijtmans branch: tip-389, size: 96644
2017-12-19
15:46
merge core-8-branch file: bc8363c7d0 check-in: [6cdd6bd319] user: jan.nijtmans branch: z_modifier, size: 97092
2017-12-15
19:55
merge trunk file: 749d4e7189 check-in: [878d1b77fd] user: jan.nijtmans branch: memory-API, size: 95848
2017-12-06
21:01
merge trunk file: a265441fc1 check-in: [46c4fb0467] user: dgp branch: novem, size: 96245
13:29
merge 8.7 file: 546a9e4e8b check-in: [95532b94be] user: dgp branch: tip-445, size: 96643
13:28
Adapt the bytearray accommodation of Tcl_CharLength() for 8.7+. file: 140d2a3eba check-in: [240811f822] user: dgp branch: trunk, size: 96039
13:28
Adapt the bytearray accommodation of Tcl_CharLength() for 8.7+. file: 13fcd91ae3 check-in: [12edbbe920] user: dgp branch: core-8-branch, size: 96654
12:17
Don't do same test twice file: 69a822b650 check-in: [e0f3431c35] user: jan.nijtmans branch: z_modifier, size: 97031
12:10
merge 8.7 file: 31d2d59961 check-in: [48920a9cbe] user: jan.nijtmans branch: z_modifier, size: 97078
2017-12-01
15:03
merge trunk file: 15bc050250 check-in: [e008d0adce] user: jan.nijtmans branch: memory-API, size: 95787
11:33
merge core-8-branch file: 3ad44667ae check-in: [dabd924a87] user: jan.nijtmans branch: tip-389, size: 96583
2017-11-30
17:59
merge trunk file: 8c0ce28818 check-in: [859b772cb4] user: dgp branch: novem, size: 96184
17:52
merge 8.7 file: 5c5b0f1355 check-in: [1e5dc1b17c] user: dgp branch: tip-445, size: 96582
17:29
merge 8.7 file: fb965884b3 check-in: [f625f52639] user: dgp branch: trunk, size: 95978
17:21
[5808081213] Permit all bytearrays (including impure ones) to report length without shimmering file: 6d960ff781 check-in: [2fc5bec969] user: dgp branch: core-8-branch, size: 96593
17:10
[5808081213] Permit all bytearrays (including impure ones) to report length without shimmering file: d43998962e check-in: [2381208744] user: dgp branch: core-8-6-branch, size: 79114
15:03
merge trunk file: 8012bbcd3f check-in: [6554f79bed] user: jan.nijtmans branch: novem, size: 95905
13:23
merge core-8-branch file: 44cb7bb539 check-in: [12e64c66a1] user: jan.nijtmans branch: trunk, size: 95699
13:14
Fix [8e1e31eac0fd6b6c4452bc108a98ab08c6b64588|8e1e31eac0]: lsort treats NUL chars strangely. Also fix various initializations, which only make a difference when TCL_UTF_MAX == 4. Add new test-cases which demonstrate the fix. For TCL_UTF_MAX == 4, surrogates will now be handled as expected as well when sorting. file: 381d2dd217 check-in: [b6438b69ad] user: jan.nijtmans branch: core-8-branch, size: 96314
2017-11-21
10:16
merge trunk file: 2ba171df08 check-in: [971efdefda] user: jan.nijtmans branch: memory-API, size: 95513
2017-11-17
16:08
merge core-8-branch. Fix some Tcl_UniChar initialization, in case TCL_UTF_MAX == 4 file: 4d92a16872 check-in: [37b4aab687] user: jan.nijtmans branch: tip-389, size: 96304
11:12
merge trunk file: c1e849ae80 check-in: [1f9599f5f7] user: jan.nijtmans branch: novem, size: 95910
10:50
TIP #422, Tcl 9.0 part: Don't Use stdarg.h/va_list in Public API file: 7df8bc2554 check-in: [717b28b47a] user: jan.nijtmans branch: trunk, size: 95704
2017-11-16
11:17
re-base "novem-more-memory-API" to trunk. TIP not submitted yet, but upcoming. file: 7b23464df5 check-in: [3cb46ea71b] user: jan.nijtmans branch: memory-API, size: 96128
2017-11-13
11:47
merge novem file: 22e8847f30 check-in: [b066227b02] user: jan.nijtmans branch: novem-more-memory-API, size: 96048
2017-11-09
13:36
merge 8.7 file: 8e35ee4389 check-in: [cbada9ca30] user: dgp branch: tip-445, size: 96308
12:52
merge trunk file: 1011282a24 check-in: [54f289e311] user: jan.nijtmans branch: novem, size: 96525
12:50
merge core-8-6-branch file: 41acf5c9e5 check-in: [ef4cc04bc1] user: jan.nijtmans branch: core-8-branch, size: 96319
12:48
Make "scan %c" and the internal function ExtendUnicodeRepWithString() work as expected for TCL_UTF_MAX == 4 when handling characters > U+ffff. No effect when TCL_UTF_MAX == 3 or TCL_UTF_MAX == 6 file: 509df6abdf check-in: [baceb17559] user: jan.nijtmans branch: core-8-6-branch, size: 78835
2017-11-07
16:31
merge 8.7 file: cb2c6dac34 check-in: [82237d44ae] user: jan.nijtmans branch: z_modifier, size: 96781
12:15
Somewhat simplified implementation of TIP #389, in which the "string length" if characters > U+FFFF is considered to be 2, not 1. file: 94c0554108 check-in: [d224d38a6d] user: jan.nijtmans branch: tip-389, size: 96309
09:33
Re-base TIP #422 implementation to trunk. Remove Tcl_VarEvalVA() as well. TIP #422 is adapted accordingly. file: bb246b5ae5 check-in: [24db7a9013] user: jan.nijtmans branch: tip-422, size: 95682
2017-11-06
00:17
merge 8.7 file: 85d5779e4f check-in: [b7ea80156a] user: dgp branch: tip-445, size: 96286
2017-11-05
14:24
merge trunk file: 8874bd7fe3 check-in: [9a1ca33625] user: jan.nijtmans branch: novem, size: 96503
2017-11-04
00:34
Fix for the weird [string first] behaviour. file: 210cfafb04 check-in: [7af9c67f01] user: dkf branch: string-first-unicode-bug, size: 96297
2017-11-01
14:46
TIP 422 implementation (rebase of branch novem-remove-va to trunk). file: 481c9e1f28 check-in: [e090a04f00] user: dgp branch: tip-422, size: 95456
2017-10-27
08:45
First implementation of [http://core.tcl.tk/tips/doc/trunk/tip/481.md|TIP #481]: Extend size range of various Tcl_Get*() functions file: f3862c08dc check-in: [3d8b34236d] user: jan.nijtmans branch: tip-481, size: 96700
2017-10-16
12:05
merge trunk file: aa6a4e6acb check-in: [81c802c91a] user: jan.nijtmans branch: z_modifier, size: 96555
11:55
Add support for 'L' length modifier (either long double or mp_int) and 'a'/'A' modifiers (floating point in hex notation) file: 77ab02e880 check-in: [3d16d7c07b] user: jan.nijtmans branch: z_modifier, size: 96487
2017-10-13
16:39
merge trunk file: aeaea5408b check-in: [a49c3597fe] user: dgp branch: novem, size: 96277
16:38
merge trunk file: fe05bcaccf check-in: [73893dacd8] user: dgp branch: tip-445, size: 96060
16:15
Plug some memleaks. file: 29ba094dd1 check-in: [5fdcbcbaeb] user: dgp branch: trunk, size: 96071
14:46
Fix missing line (after manual merge-conflict). Fix compiler warning on linux64. file: a9c5966bd4 check-in: [d97fba48fc] user: jan.nijtmans branch: z_modifier, size: 96205
14:07
Merge trunk. And merge jn-0d-radix-prefix branch in too (too small to be considered separately) file: 7a732abd3f check-in: [0c4174b197] user: jan.nijtmans branch: z_modifier, size: 96164
2017-09-18
01:38
Rename Tcl_StringReplace() to Tcl_ReplaceObj() for consistency with other public string object functions, most notably Tcl_ConcatObj() file: 6934c9ea66 check-in: [e5bf34271e] user: andy branch: amg-string-insert, size: 106539
01:29
Improve comments file: 2f15086516 check-in: [659068fa85] user: andy branch: amg-string-insert, size: 106537
2017-09-17
21:09
Improve comment to describe return value file: bf1b089871 check-in: [6d502aa4ca] user: andy branch: amg-string-insert, size: 106401
2017-09-16
19:50
Merge trunk file: f7df2ff627 check-in: [601141ff84] user: andy branch: amg-string-insert, size: 106162
2017-09-11
13:21
merge novem file: 5baaded06c check-in: [a0bd6b43c0] user: jan.nijtmans branch: novem-more-memory-API, size: 95732
2017-09-10
13:35
merge novem file: 3e33014a88 check-in: [4fa9cc2903] user: jan.nijtmans branch: novem-more-memory-API, size: 95702
2017-09-08
12:48
Rebase to trunk file: c155e8a892 check-in: [5e999389ca] user: jan.nijtmans branch: z_modifier, size: 96004
2017-09-05
12:41
merge trunk file: b1ecd0412b check-in: [37388a0d90] user: dgp branch: tip-445, size: 95992
2017-09-04
14:03
merge trunk file: 8ef17ad1f9 check-in: [55e5374f6b] user: jan.nijtmans branch: novem, size: 96209
2017-09-01
13:49
Merge core-8-6-branch file: 502a378781 check-in: [314f32710e] user: jan.nijtmans branch: trunk, size: 96003
13:48
Handle Unicode surrogates correctly in Tcl_AppendFormatToObj() and BuildCharSet(). Only makes a difference for TCL_UTF_MAX=4, when surrogates are used in the format string ... highly unlikely corner-case. file: 9e16eded34 check-in: [9d12b1026e] user: jan.nijtmans branch: core-8-6-branch, size: 78813
00:52
merge trunk file: 946cfdc1a4 check-in: [c3fbabfb73] user: dgp branch: tip-445, size: 95989
2017-08-30
15:22
Merge trunk file: cf06cd2994 check-in: [0def7d0317] user: andy branch: amg-string-insert, size: 106159
15:20
Rename TclStringReplace() to Tcl_StringReplace() and add to the stubs table. Documentation not yet started. file: bd37662072 check-in: [678e846973] user: andy branch: amg-string-insert, size: 106151
2017-08-29
09:19
Merge trunk file: d674f98232 check-in: [f2f6504adb] user: jan.nijtmans branch: novem, size: 96206
2017-08-25
13:46
Merge trunk file: 92fd238889 check-in: [c841475a89] user: jan.nijtmans branch: tip-389-impl, size: 96797
2017-08-20
19:55
Tweak string index boundary conditionals for tiny performance improvement and to make existing tests cover more code paths file: c36443cf98 check-in: [025ea6e5be] user: andy branch: amg-string-insert, size: 106149
03:20
Correct NULL dereference, and optimize short-circuit logical operation file: 52df78a1df check-in: [fa3278ec35] user: andy branch: amg-string-insert, size: 106145
02:44
Work toward dgp's suggestion that the underlying engine handle both [string insert] and [string replace]. Ref: [https://sourceforge.net/p/tcl/mailman/message/36002472/] file: 9de8a5e34f check-in: [0cfeecb740] user: andy branch: amg-string-insert, size: 106113
2017-08-18
22:06
merge core-8-6-branch file: 690a519b50 check-in: [75da8b29f8] user: jan.nijtmans branch: trunk, size: 96000
2017-08-17
18:32
Correct bug in getting second Unicode character sequence file: 138ad54a5d check-in: [87dadea232] user: andy branch: amg-string-insert, size: 101545
18:15
Clip (don't reject) out-of-bounds indexes, per sebres's suggestion and to match [linsert] file: 71956eb91e check-in: [581e438bb7] user: andy branch: amg-string-insert, size: 101545
2017-08-15
08:23
Correct bug in shared pure byte array case file: 4ae1ac9cfc check-in: [597e9993b3] user: andy branch: amg-string-insert, size: 101949
07:50
Begin implementation of [string insert] file: b8f90722d7 check-in: [cbfded0f59] user: andy branch: amg-string-insert, size: 101943
2017-07-03
12:32
merge core-8-6-branch file: b8e38b5d6b check-in: [4467b7768e] user: jan.nijtmans branch: rfe-6c0d7aec67, size: 78810
2017-06-29
13:18
merge trunk file: b8f3c9ad30 check-in: [65f7b12c0e] user: jan.nijtmans branch: jn-0d-radix-prefix, size: 96334
11:29
merge trunk file: c712f448e2 check-in: [e6b9d7a231] user: dgp branch: tip-445, size: 95981
2017-06-28
13:45
merge trunk file: 66756acf4a check-in: [6921b83aca] user: jan.nijtmans branch: novem, size: 96198
13:44
merge core-8-6-branch file: 23657e1079 check-in: [474ea18601] user: jan.nijtmans branch: trunk, size: 95992
13:32
Eliminate use of (expensive) Tcl_UtfToUpper() from "format": Just generate the expected uppercase characters right away from the start. No change in functionality, just code optimization. file: f04956de4b check-in: [bb9d202e4c] user: jan.nijtmans branch: core-8-6-branch, size: 78802
11:02
Implement %a and %A for floating point numbers file: 1071c11e5c check-in: [35812670ab] user: jan.nijtmans branch: jn-0d-radix-prefix, size: 96474
2017-06-27
12:00
Merge trunk. Don't use expensive ToUpper() for hex 0X???? formatting, just generate uppercase directly. file: c4ceeb5c70 check-in: [2004acdea6] user: jan.nijtmans branch: jn-0d-radix-prefix, size: 96420
10:13
Implement "format %o" as prefixing with "0o" in stead of "0" (Kevin Kenny's suggestion). Seems ready to be TIPed (just some more testing) file: 54d70ffa6a check-in: [3b3992d33d] user: jan.nijtmans branch: jn-0d-radix-prefix, size: 96308
2017-06-26
20:14
merge trunk file: 8506455b32 check-in: [b9b632a2ca] user: dgp branch: tip-445, size: 95939
10:20
Rebase branch "jn-0d-radix-prefix" back to trunk. No new changes file: f36a74b868 check-in: [e2b749751c] user: jan.nijtmans branch: jn-0d-radix-prefix, size: 96006
2017-06-23
08:11
TIP #472 implementation: Add Support for 0d Radix Prefix to Integer Literals file: 92a93fe778 check-in: [4f68bf6677] user: jan.nijtmans branch: trunk, size: 95950
2017-06-16
20:35
merge trunk file: f8ac745ee0 check-in: [f7688ef8a2] user: dgp branch: novem, size: 96156
20:28
merge trunk file: 1f0fa6d079 check-in: [2b4060cef5] user: dgp branch: tip-445, size: 95848
19:54
Another reworking, now with comments. file: 606e64962b check-in: [e9f3293d67] user: dgp branch: trunk, size: 95859
16:23
Simplify the final loop when we know we're generating strings for all. file: 3c8756493f check-in: [20cca1d020] user: dgp branch: trunk, size: 95527
16:07
Split loop into two cases for further simplification. file: 01ac978396 check-in: [afd6a2812b] user: dgp branch: trunk, size: 96045
15:51
Factor out and simplify loop scanning leading known empty values. file: a57ed9b254 check-in: [1e6a22b0fc] user: dgp branch: trunk, size: 95188
14:46
Use local variables. file: 809b569478 check-in: [af5aec752d] user: dgp branch: trunk, size: 94712
14:43
Rework the logic. Equivalent function. file: 069b22723d check-in: [aa9699939f] user: dgp branch: trunk, size: 94685
12:56
Extend cases where string rep generation can be prevented. file: 41cf40e8fc check-in: [3f07499767] user: dgp branch: trunk, size: 94890
11:47
Better define the meaning of "first" and "last". file: 7e2881a451 check-in: [a1eb17546f] user: dgp branch: trunk, size: 94546
2017-06-14
10:04
Little variation on Brian's proposal: Only prefix decimal number with '0d' when that's necessary for correct interpretation of the number when parsed back again. file: a0babf9db8 check-in: [20eeb7733d] user: jan.nijtmans branch: jn-0d-radix-prefix, size: 78907
07:54
Rebase to core-8-6-branch (who told that fossil doesn't know how to rebase ....) file: ce447bbf69 check-in: [ae4471b37c] user: jan.nijtmans branch: bsg-0d-radix-prefix, size: 78851
2017-06-12
14:04
Add support of 0d in the format %# conversion flag. Add tests for same. file: 572a8980de check-in: [b8074009fb] user: griffin branch: bsg-0d-radix-prefix, size: 93630
13:29
merge trunk file: 85420d7230 check-in: [ef7adbfe4b] user: jan.nijtmans branch: z_modifier, size: 94432
2017-06-09
12:20
merge trunk file: 0d3c5250a4 check-in: [ee2c5cf945] user: jan.nijtmans branch: tip-389-impl, size: 95236
11:48
merge novem file: 785b7d4d00 check-in: [f687ce6a36] user: jan.nijtmans branch: novem-more-memory-API, size: 94221
11:17
merge trunk file: bb9451b762 check-in: [f0e33a9d48] user: jan.nijtmans branch: novem, size: 94728
2017-06-08
21:10
Don't test the impossible. file: bb0ad94631 check-in: [db46268589] user: dgp branch: dgp-stringcat-delaystringrep, size: 94431
21:05
Modernize overflow checks. file: 17030bf874 check-in: [f4c7382b8a] user: dgp branch: dgp-stringcat-delaystringrep, size: 94461
20:57
More streamlining file: 6712322a3a check-in: [8d50922091] user: dgp branch: dgp-stringcat-delaystringrep, size: 94377
20:40
More streamlining. file: 7c869a81bb check-in: [04d8b74d04] user: dgp branch: dgp-stringcat-delaystringrep, size: 94378
20:31
pendingPtr == NULL implies (last == first) implies early out file: 3b67bd7866 check-in: [5ed6f019fa] user: dgp branch: dgp-stringcat-delaystringrep, size: 94541
16:44
When possible delay string rep generation until necessary. file: d7c495f68b check-in: [38795b0541] user: dgp branch: dgp-stringcat-delaystringrep, size: 94819
08:26
Better UTF-8 surrogate handling, only functional when TCL_UTF_MAX>3 file: 90b176d807 check-in: [5ae46a0093] user: jan.nijtmans branch: rfe-6c0d7aec67, size: 78768
2017-06-07
10:02
Stop trimming on first non empty-string. file: f72ef1be02 check-in: [ec3978c023] user: avl branch: mistake, size: 94631
09:24
bug-716b427f76 branch continued. file: f5a457d834 check-in: [dd3cb3bb2e] user: avl branch: mistake, size: 94619
2017-06-06
15:51
merge trunk file: f5c13d7ef1 check-in: [1ce52fbf89] user: dgp branch: novem, size: 94272
14:46
Merge trunk file: d5f5ff845a check-in: [b03462a529] user: jan.nijtmans branch: tip-389-impl, size: 94780
13:48
merge trunk file: 401270c943 check-in: [2b3de0b7fe] user: dgp branch: tip-445, size: 93964
12:56
A few more tweaks to streamline and clarify. file: e07c83dc69 check-in: [d253aace3f] user: dgp branch: bug-716b427f76, size: 93975
09:25
makes TclStringCatObjv safe accepting objc = 0 (or 1), then fast exits with new object / first; check-cycles rewritten to be still more faster. file: 4002a459f3 check-in: [c30066298d] user: sebres branch: bug-716b427f76, size: 93891
09:01
amend to [eac4656f1e8cf793] (moved to scope where numChars != 0 in Unicode case) file: a976070b52 check-in: [0a267ebdd3] user: sebres branch: bug-716b427f76, size: 93775
08:34
small code review: don't need to check length if unchanged + the same case if 0 length file: 1fa38362c7 check-in: [eac4656f1e] user: sebres branch: bug-716b427f76, size: 93770
2017-06-05
20:03
Optimize TclStringCatObjv() for case when only one argument is non-empty. file: 86f66a1375 check-in: [4225e01eb6] user: dgp branch: bug-716b427f76, size: 93784
2017-05-31
12:51
merge trunk file: 72dfeac981 check-in: [f07a85fee0] user: jan.nijtmans branch: tip-389-impl, size: 94331
2017-05-29
15:38
merge trunk file: 3649307253 check-in: [6d946ddf77] user: jan.nijtmans branch: tip-389-impl, size: 94318
13:16
merge trunk file: 4886d4ddc5 check-in: [5985b3e0a0] user: jan.nijtmans branch: novem, size: 93823
13:14
merge core-8-6-branch file: 6d9334d07e check-in: [a9965b7335] user: jan.nijtmans branch: trunk, size: 93526
13:10
Tcl_UtfToUniChar() -> TclUtfToUniChar() in various places: No change in functionality, just faster if ASCII only strings are involved. file: 02ac17551b check-in: [7351fc0c9c] user: jan.nijtmans branch: core-8-6-branch, size: 78760
2017-05-23
14:57
merge trunk file: 2b6495f543 check-in: [9430d4c198] user: jan.nijtmans branch: tip-389-impl, size: 94331
2017-05-04
11:35
merge novem file: 1aa3035baa check-in: [70b0b53b8a] user: jan.nijtmans branch: novem-more-memory-API, size: 93329
2017-04-17
12:42
merge trunk file: b0da68e927 check-in: [f60edffb5b] user: dgp branch: tip-445, size: 93528
2017-04-12
14:33
merge trunk file: 61c5722110 check-in: [50c38d55a8] user: jan.nijtmans branch: novem, size: 93836
13:43
If %llu is considered invalid, it means that "%" TCL_LL_MODIFIER "u" cannot be used Tcl_ObjPrintf(), but only in sprintf(). That's unfortunate, clearly an oversight in TIP #237. Conclusion: new TIP must be written to correct this. I'll read a TIP and see what case you have, but TCL_LL_MODIFIER was never meant to play any role in [format] or in Tcl_ObjPrintf(). TCL_LL_MODIFIER exists to help deal with platform differences in sprintf() calls. Tcl_ObjPrintf() in contrast ought to be consistent in its behavior across platforms and should not need such things. If that's false, then fixes to Tcl_ObjPrintf() are in order. file: 91940e59e9 check-in: [7f1a6f68a7] user: jan.nijtmans branch: trunk, size: 93539
13:36
merge trunk file: 94406552a7 check-in: [36507326e3] user: dgp branch: tip-445, size: 93528
13:28
merge trunk file: c82c723c8f check-in: [21af18f4ec] user: dgp branch: novem, size: 93836
2017-04-07
14:48
Use "0o" in stead of "0" as octal prefix in more places. file: 92cdfcc736 check-in: [c48c3ddc4b] user: jan.nijtmans branch: z_modifier, size: 93540
13:46
Merge trunk. Only use hash prefix (0x, 0b, 0 ) if value is not 0, except for %p. file: 8e07703241 check-in: [9997117f12] user: jan.nijtmans branch: z_modifier, size: 93785
2017-04-06
11:53
merge trunk file: e8499dd653 check-in: [6c868716b3] user: dgp branch: tip-445, size: 93588
07:45
merge trunk file: 415e56f758 check-in: [516e61341c] user: jan.nijtmans branch: novem, size: 93896
2017-04-05
09:09
Fix [4b12ccb3363e81b132e8dbe12aeec596102be1a8|4b12ccb336]: format/scan %llu doesn't work. Also added new test-cases showing the expected behavior. file: d52bdc2c54 check-in: [be99031456] user: jan.nijtmans branch: trunk, size: 93599
08:41
Fix [4b12ccb3363e81b132e8dbe12aeec596102be1a8|4b12ccb336]: format/scan %llu doesn't work. Also added new test-cases showing the expected behavior. file: 7260ede851 check-in: [80252e0aed] user: jan.nijtmans branch: core-8-6-branch, size: 78833
2017-04-03
12:54
Merge core-8-6-branch. Add test-cases showing that the (undocumented) %p format (and also %zd/%td) are harmless, since they are equivalent to other already existing formats. file: 1146985adf check-in: [c3e6a981f3] user: jan.nijtmans branch: trunk, size: 93539
11:53
Code optimization/reduction: If TCL_WIDE_INT_IS_LONG is defined, the variable useWide is always 0, so related code can be eliminated without loss of functionality. file: d92292f595 check-in: [231e5d408e] user: jan.nijtmans branch: core-8-6-branch, size: 78773
2017-03-29
14:35
merge trunk file: 65aa274c0f check-in: [5154e628d8] user: dgp branch: tip-445, size: 93184
2017-03-28
07:14
(experimental) new internal macro TCL_Z_MODIFIER, just like TCL_LL_MODIFIER but then for size_t. file: 6fa23dff19 check-in: [9dd6c3c9da] user: jan.nijtmans branch: z_modifier, size: 93150
2017-03-27
13:04
merge trunk file: 475e8ae64e check-in: [443feb509f] user: jan.nijtmans branch: novem, size: 93492
2017-03-24
15:52
Supply more C99-compatible (and MSVC) format options: '%p' for pointers, 'z'/'j'/'I' for size_t/intptr_diff, 'j'/'q' for long long. Also add "I32" froom MSVC. Remove TCL_LL_MODIFIER specified as "L" for Borland: This must be wrong as "L" is meant for long double. Just assume that later Borland compilers are MSVC-compatible. file: be9f944510 check-in: [316d711dac] user: jan.nijtmans branch: trunk, size: 93195
2017-02-03
18:49
merge trunk file: 829d9830d5 check-in: [3f498cec91] user: dgp branch: tip-445, size: 92542
14:03
merge trunk file: dfc0eea99e check-in: [052d6fe213] user: jan.nijtmans branch: novem, size: 92850
11:47
In TclGetNumberFromObj() macro (tclExecute.c): Don't fill in type if TCL_ERROR is returned: The caller doesn't do anything with this. Don't access (non-const) variable tclEmptyStringRep any more, use its value (&tclEmptyString) directly. Only keep it in tclPkg.c, for error checking. file: a4d1c3f920 check-in: [54e59981c7] user: jan.nijtmans branch: trunk, size: 92553
2017-02-02
15:50
In stead of testing for tclEmptyStringRep, in many situations it is better to check whether the string ends with '\0'. file: 1b8a250575 check-in: [a829bb8887] user: jan.nijtmans branch: jn-emptystring, size: 92573
2017-02-01
15:03
merge trunk file: dbd0b60778 check-in: [15a654c3c0] user: jan.nijtmans branch: pyk-emptystring, size: 93455
2016-12-23
09:32
merge novem file: e4aeb031ac check-in: [9d557545fc] user: jan.nijtmans branch: novem-more-memory-API, size: 92355
2016-12-19
18:43
merge trunk file: 6017708e87 check-in: [2dbe7ac399] user: dgp branch: tip-445, size: 92552
10:42
merge novem file: a60caa55a7 check-in: [10c36e48f6] user: jan.nijtmans branch: novem-more-memory-API, size: 92305
09:14
merge trunk file: af139bd7e0 check-in: [d9627dd7b6] user: jan.nijtmans branch: novem, size: 92862
2016-12-14
15:03
Implement all possible TCL_LL_MODIFIER formats in Tcl_ObjPrintf(), can be "ll", "I64" and "L", whatever the platform defines for long long integer. With test-cases. file: b4f07ec16f check-in: [79a28ae5ea] user: jan.nijtmans branch: trunk, size: 92565
14:14
Implement all possible TCL_LL_MODIFIER formats in Tcl_ObjPrintf(), can be "ll", "I64" and "L", whatever the platform defines for long long integer. With test-cases. file: baf1cab923 check-in: [907c39d91a] user: jan.nijtmans branch: jn-wide-printf, size: 92556
2016-12-06
12:46
merge trunk file: 8f26e40bc1 check-in: [54d0f67188] user: dgp branch: novem, size: 92458
2016-12-02
21:08
Avoid "warning: format '%llu' expects argument of type 'long long unsigned int', but argument 2 has type 'long unsigned int'" on platforms where TCL_WIDE_INT_IS_LONG. Warning introduced by check-in [e3ba334a42] which was merged to trunk by [eac13870dc]. This fix also was made by [418b169207] which has not yet been merged to trunk. file: 2104ddda5e check-in: [871fcf85c4] user: andy branch: trunk, size: 92161
19:01
merge trunk file: 8aa32eec65 check-in: [33041ae916] user: dgp branch: tip-445, size: 92088
15:52
implement "I64" format in Tcl_ObjPrintf as well. Still to be tested. file: 6ac52a931c check-in: [418b169207] user: jan.nijtmans branch: jn-wide-printf, size: 92353
14:46
merge trunk file: 9c709f51c4 check-in: [e4c06b61d2] user: jan.nijtmans branch: novem, size: 92398
13:50
Implement %ll (WideInt) handling for Tcl_ObjPrintf(). Use it in some places. Moved to feature branch temporarily. Breaks build. file: b429274168 check-in: [e3ba334a42] user: jan.nijtmans branch: jn-wide-printf, size: 92101
2016-12-01
11:46
merge trunk file: 94e7c35058 check-in: [391ec4f295] user: jan.nijtmans branch: novem, size: 92526
11:44
compatability -> compatibility file: 2fe45d57e7 check-in: [f94307dc05] user: jan.nijtmans branch: trunk, size: 91946
11:20
More internal use of size_t. Eliminate unused "isBin" argument from TclpSysAlloc() file: ecf658a824 check-in: [9d4cd6b1aa] user: jan.nijtmans branch: novem, size: 92527
2016-11-30
14:27
Merge trunk file: f4d6556db9 check-in: [39918e8e32] user: jan.nijtmans branch: novem, size: 92244
03:16
merge trunk file: 3b8fb310b3 check-in: [c2b9c28871] user: dgp branch: tip-445, size: 91934
03:08
Route all [string repeat] operations through a common implementation. Code that to preserve bytearrays, eliminate unnecessary string rep generation, increase efficiency, and encapsulate access to internal rep details. file: 5168c1dc94 check-in: [e6e6fee0e1] user: dgp branch: trunk, size: 91947
2016-11-29
18:46
Where feasible, convert concatenation panics into errors. file: ad237a3d1f check-in: [3e5cafe2a5] user: dgp branch: trunk, size: 88100
2016-11-24
20:31
merge trunk file: 355b6b5020 check-in: [4115262f80] user: jan.nijtmans branch: novem, size: 87209
2016-11-18
12:10
merge novem file: 8ff17f665b check-in: [21f9030029] user: jan.nijtmans branch: novem-more-memory-API, size: 87246
2016-11-16
11:17
merge trunk file: 84d81846b0 check-in: [31a3f9bee0] user: jan.nijtmans branch: novem, size: 87222
2016-11-14
12:16
merge trunk file: f274f1a5e1 check-in: [56c05639b5] user: dgp branch: tip-445, size: 86899
2016-11-10
15:13
merge trunk file: 13fd649295 check-in: [8d4c5a08c5] user: jan.nijtmans branch: novem, size: 87267
2016-11-08
02:56
Route all [string last] operations through a common implementation. file: 106566e51c check-in: [6622b74446] user: dgp branch: trunk, size: 86912
2016-11-07
20:04
Optimize case of all single-byte chars. file: 6eee3c9c83 check-in: [e35f61d57e] user: dgp branch: dgp-string-find, size: 84596
19:41
Consolidate the "find empty string" cases. file: 9ce4310638 check-in: [9bc07dee24] user: dgp branch: dgp-string-find, size: 84123
2016-11-04
21:29
First draft refactoring the [string first] functionality. file: 9d2e073c18 check-in: [5073110f26] user: dgp branch: dgp-string-find, size: 84174
15:52
merge trunk file: 3657601f53 check-in: [16c449a79f] user: dgp branch: tip-445, size: 82381
11:41
merge trunk file: dec8ce322d check-in: [70a2852312] user: jan.nijtmans branch: novem, size: 82749
11:38
Make packages msgcat and tcltest work unmodified in "novem". Make more test-cases work unmodified in "novem". file: 65c9c9d944 check-in: [9abb38ee0b] user: jan.nijtmans branch: trunk, size: 82394
2016-11-01
16:29
merge trunk file: ea7de9ebce check-in: [2d438eeb1d] user: dgp branch: novem, size: 82751
16:18
merge trunk file: c250537b5a check-in: [ed328bc1b1] user: dgp branch: tip-445, size: 82383
15:42
Replace indexing with pointer increments. file: 6e41119c58 check-in: [78ef6f929b] user: dgp branch: dgp-string-cat, size: 82396
15:07
Expand all the cases of the [string cat] engine. file: bbfbcae8a6 check-in: [9bfada5e22] user: dgp branch: dgp-string-cat, size: 82356
2016-10-31
18:10
Reduce copies in the pure binary implementation of [string cat]. file: d608ff01e6 check-in: [210148adc5] user: dgp branch: dgp-string-cat, size: 79423
16:15
Complete the "pure binary" implementation of the [string cat] engine. file: ba7a1a5ec1 check-in: [6108355177] user: dgp branch: dgp-string-cat, size: 79202
2016-10-28
20:33
WIP file: 9436fd70d0 check-in: [8f63620a09] user: dgp branch: dgp-string-cat, size: 78829
14:28
merge trunk file: a1f0c078b5 check-in: [8fe04e59f6] user: dgp branch: dgp-string-cat, size: 77651
14:27
Add warning commentary making important assumptions explicit. file: 1826f7ee33 check-in: [329ff4fad8] user: dgp branch: trunk, size: 76824
14:26
Add warning commentary making important assumptions explicit. file: 2bc8eed7a9 check-in: [f4bf80dafb] user: dgp branch: core-8-6-branch, size: 78683
14:23
Add warning commentary making important assumptions explicit. file: 43901957be check-in: [27b3f0c88b] user: dgp branch: core-8-5-branch, size: 80252
14:06
merge trunk file: 7e047e4474 check-in: [f9b8e6269b] user: dgp branch: dgp-string-cat, size: 77547
14:06
Add obvious optimization to Tcl_GetCharLength(). file: 1288aa07d0 check-in: [a3157e22e5] user: dgp branch: trunk, size: 76720
2016-10-27
19:39
Start bringing all `string cat` operations into one place so it can be coded correctly one time instead of badly multiple times. file: d114c592cc check-in: [30418debb6] user: dgp branch: dgp-string-cat, size: 77350
2016-10-13
17:04
merge trunk file: 5114c9c136 check-in: [071bc9cadb] user: dgp branch: tip-445, size: 76510
17:03
merge trunk file: 8e259d6349 check-in: [237090c178] user: dgp branch: novem, size: 76878
16:56
Merge INST_STR_REPLACE fixes and improvements. file: 5aa2a20417 check-in: [85150d4e86] user: dgp branch: trunk, size: 76523
16:43
Stop invading the String internals to work around a bug. Fix it instead. file: 5c3c32bfd6 check-in: [f32a003e9a] user: dgp branch: core-8-6-branch, size: 78579
2016-08-30
13:57
merge trunk file: ce48d4d081 check-in: [2a530e021b] user: jan.nijtmans branch: tip-389-impl, size: 76974
2016-08-22
07:58
Fix improper use of TclCheckEmptySTring. file: 8fdcdb72e6 check-in: [0461352597] user: pooryorick branch: pyk-emptystring, size: 77072
2016-07-28
21:49
merge pyk-listdictstringrep file: afc8ad1be0 check-in: [3351777fb6] user: pooryorick branch: pyk-trunk, size: 78141
2016-07-26
18:36
Converting to stringType no longer loses the existing internal representation of a value. file: 705edb7064 check-in: [acf65fb1a4] user: pooryorick branch: pyk-listdictstringrep, size: 77255
2016-07-11
09:16
Remove unnecessary macro. Use an enum for result values. file: fcd3d48058 check-in: [79794b22be] user: pooryorick branch: pyk-emptystring, size: 77068
08:09
Change TclIsEmpty to TclCheckEmptyString. Check length instead of first char of bytes. file: f318cb8d3b check-in: [6898c26016] user: pooryorick branch: pyk-emptystring, size: 77107
2016-07-10
23:07
Avoid generating string representation for comparisons against empty string. file: 7041e5f004 check-in: [f9acd4e294] user: pooryorick branch: pyk-emptystring, size: 77046
2016-07-09
17:21
merge trunk file: dc06fe54be check-in: [c991627aa9] user: dgp branch: tip-445, size: 76169
2016-07-08
10:34
merge trunk file: 9ec66405fc check-in: [706fbc1eb0] user: jan.nijtmans branch: novem, size: 76537
10:28
Micro-optimization: Use TclGetStringFromObj in stead of Tcl_GetStringFromObj in many places where possible. file: 1752858349 check-in: [48cb8436f1] user: jan.nijtmans branch: trunk, size: 76182
2016-07-06
09:23
merge novem file: 536fa25289 check-in: [2612497ee5] user: jan.nijtmans branch: novem-more-memory-API, size: 76476
2016-07-05
09:56
Merge trunk. Some more internal use of size_t in stead of int. file: 04ed6a811c check-in: [8144cc0c67] user: jan.nijtmans branch: novem, size: 76538
2016-07-01
08:33
Merge trunk file: 2e8a5a8085 check-in: [9b227b619e] user: jan.nijtmans branch: novem-more-memory-API, size: 76315
2016-06-30
12:18
Make test-cases pass again file: 354fb72cf5 check-in: [c9b1ad1564] user: jan.nijtmans branch: novem-more-memory-API, size: 76318
2016-06-28
15:22
Unicode rep en Tcl_Obj length: int -> size_t file: 4bf0bb89d1 check-in: [1d1a6cacc4] user: jan.nijtmans branch: novem-more-memory-API, size: 78413
13:44
Merge trunk file: 32cce611b3 check-in: [ab33fe9082] user: jan.nijtmans branch: novem-more-memory-API, size: 78332
2016-04-08
14:25
Merge trunk. Add new bitflags to tclStringRep.h (not used yet) file: b92fbaa8ae check-in: [2d87e13575] user: jan.nijtmans branch: tip-389-impl, size: 76975
2016-04-05
12:13
merge trunk file: 93000ed350 check-in: [4ab24ffcab] user: dgp branch: tip-445-fork, size: 76170
12:07
merge trunk file: 6b49f62463 check-in: [9edc83a71a] user: dgp branch: novem, size: 78207
08:18
merge trunk file: 5627a642a7 check-in: [d3236cc090] user: jan.nijtmans branch: drh-micro-optimization, size: 76183
2016-03-24
21:22
merge trunk file: 76f3a21fd5 check-in: [0d1a9d63ef] user: dgp branch: tip-445, size: 76204
21:21
No longer a need to keep around 'revert to 8.5' code. file: 8c04569a47 check-in: [3d7353cc89] user: dgp branch: trunk, size: 76217
13:50
TclInitStringRep() already knows about tclEmptyStringRep. file: 52173de900 check-in: [1fb418efea] user: dgp branch: tip-445, size: 78225
2016-03-23
12:51
merge trunk file: 5f0677cce0 check-in: [08904e4bc9] user: dgp branch: novem, size: 78241
2016-03-22
20:30
Factor out string internal rep definition so fix for [1af8de570511] is less awful. file: 12d57096ae check-in: [b3f2749a5c] user: dkf branch: core-8-6-branch, size: 78238
2015-10-24
02:37
merge changes from pspjuth that optimize conversion from unichar to utf and add optimized versions for reading a word from byte codes. file: 88fada38d0 check-in: [e99a79a326] user: kbk branch: drh-micro-optimization, size: 80690
2015-10-07
09:00
merge trunk file: b233b809fc check-in: [c1a52531aa] user: jan.nijtmans branch: tip-389-impl, size: 81268
2015-10-04
10:27
merge trunk file: 4c72b144ba check-in: [e58f76013c] user: jan.nijtmans branch: novem, size: 80720
10:20
Eliminate unnessessary end-of-line spacing. No functional change. file: 24d3618256 check-in: [7caaf52e89] user: jan.nijtmans branch: trunk, size: 80724
10:10
Eliminate unnessessary end-of-line spacing. No functional change. file: ae4e2bce2f check-in: [c8dd06d2fa] user: jan.nijtmans branch: core-8-5-branch, size: 80148
2015-06-18
19:58
merge novem file: bcadcbc22f check-in: [8d9650ab81] user: jan.nijtmans branch: novem-more-memory-API, size: 80845
2015-01-17
18:40
apply contributed patch which fixes a segfault file: 94dc783890 check-in: [fa50ea7b17] user: jan.nijtmans branch: tip-389-impl, size: 81278
2014-07-10
14:23
merge trunk file: 232bd6bf98 check-in: [dc24111d06] user: jan.nijtmans branch: tip-389-impl, size: 80723
2014-05-09
13:50
merge trunk file: 48deeac674 check-in: [239fb8a769] user: jan.nijtmans branch: novem, size: 80731
2014-05-02
07:15
merge novem file: 22db293947 check-in: [08a7e90291] user: jan.nijtmans branch: novem-more-memory-API, size: 79936
2014-05-01
09:40
Merge trunk. Update Unicode tables to Unicode 7.0 beta. file: d6f7c473e9 check-in: [13a1d81916] user: jan.nijtmans branch: tip-389-impl, size: 79814
2014-03-23
20:59
Merge the checkins of the dgp-read-bytes branch onto the trunk, up to and including checkin a1e82fb63e . Do not merge checkin bae1c688f2 which starts to take the dgp-read-bytes branch into directions apparently unfriendly to stacked channels, which tests for [chan push] on the trunk help us to detect. file: a09be076e0 check-in: [c4c1cd81e4] user: dgp branch: dgp-trunk-read, size: 80735
2014-02-06
19:04
Revised ReadChars to restore an attempt to make sure we do not short read because of a false notion of limited storage space. The test suite does not appear to demonstrate any case where this matters. Could be an incomplete test suite, or an example of pointless code. file: a91bcd6ae1 check-in: [8a185f4fe9] user: dgp branch: dgp-may-be-pointless, size: 80150
2014-01-27
17:35
Revise the Tcl_Append* machinery to tolerate NULL bytes to append. Then have ReadChars() use that machinery to resize buffer receiving input, rather than invent its own version. Simplify ReadChars() callers. file: 76c9527f45 check-in: [dcc87ec669] user: dgp branch: dgp-read-bytes, size: 79382
2014-01-23
23:12
merge trunk file: 144358ddad check-in: [ddec41f466] user: jan.nijtmans branch: novem, size: 79822
2014-01-21
17:25
[2992970] Restore safety of Tcl_AppendObjToObj(x, x) for bytearrays. file: 55f7059c46 check-in: [704897a19b] user: dgp branch: trunk, size: 79826
2014-01-15
19:04
[2992970] Restore the safety of Tcl_AppendObjToObj(x, x) for bytearrays. Also moves overflow checking to TclAppendBytesToByteArray() and adds the ability to call TABTBA() with bytes==NULL, for appending unspecified bytes. That is, the string grows, but the new bytes are of undetermined value. Like Tcl_NewByteArrayObj(NULL, length) this option is useful for manipulating buffers. The TABTBA growth algorithm is also enhanced a bit, copying over a fuller implementation from GrowStringBuffer() in tclStringObj.c file: afb330ee7c check-in: [e5267e9dcd] user: dgp branch: bug-2992970, size: 79825
2013-09-26
13:13
merge novem WARNING: No checks of build-ability done yet. file: 355a402de6 check-in: [2688d65077] user: dkf branch: novem-64bit-sizes, size: 80120
2013-05-06
07:35
merge trunk file: 9dc7dcf5ca check-in: [19ff9b95e1] user: jan.nijtmans branch: novem, size: 79190
2013-03-06
13:41
merge novem file: b3086362a4 check-in: [71ed38908b] user: jan.nijtmans branch: novem-remove-va, size: 78611
2013-02-25
13:38
Merge trunk. Upgrade all tables to Unicode 6.3 (not released yet) file: a33bac8eee check-in: [adf88dd045] user: jan.nijtmans branch: tip-389-impl, size: 79218
2013-02-11
15:53
Still to be TIP'ed. In this branch objTypes are not registered to Tcl any more, and still can do everything. It proves that Tcl_ConvertToType and the toAnyProc in thc Tcl_ObjType struct can be safely removed. Conversion to any specific type must be done by the "Tcl_GetXXXFromObj" type functions. One objType which didn't have such a function yet: "end-offset". This branch replaces this type by an "index" objType with its own Tcl_GetIntForIndex function (which functions the same as the currently private TclGetIntForIndex, only faster...). In addition, it affects Tcl_GetBoolean, which now follows the same same parsing rules as Tcl_GetBooleanFromObj. file: 3fbd33c954 check-in: [271dbffaf7] user: jan.nijtmans branch: no-register-objtypes, size: 79214
09:38
Merge trunk. Various Tcl_NewIntObj/Tcl_NewBooleanObj -> Tcl_NewLongObj modifications file: f468eb2eb7 check-in: [1b58c7107b] user: jan.nijtmans branch: novem, size: 79226
2013-02-07
13:53
Tcl_InvalidateStringRep -> TclInvalidateStringRep file: 038c55d656 check-in: [c7fb5aa3b9] user: jan.nijtmans branch: core-8-5-branch, size: 79256
2013-02-05
13:26
fix broken lset tests, now all test-cases pass! file: ba16dba86c check-in: [fd6c05968f] user: jan.nijtmans branch: no-shimmer-string-length, size: 80604
12:37
Enable "list" optimize, fix cmdIL-1.29 test case file: abcd40d03b check-in: [31e1aab3cd] user: jan.nijtmans branch: no-shimmer-string-length, size: 80605
2013-02-04
15:49
merge novem. Some more API changes int -> size_t file: c1ecbf5f2d check-in: [abeb8eae61] user: jan.nijtmans branch: novem-more-memory-API, size: 79337
2013-02-03
16:05
merge trunk file: f611e88bcf check-in: [127b30eda5] user: jan.nijtmans branch: novem, size: 79223
2013-01-31
11:41
Merge core-8-5-branch. Optimize tclCmdNameType the same way. file: cd5cc771ac check-in: [b4cdb58176] user: jan.nijtmans branch: no-shimmer-string-length, size: 80615
10:31
merge core-8-5-branch file: 1a76d8cd09 check-in: [f9be79d941] user: jan.nijtmans branch: trunk, size: 79230
09:42
Use twoPtrValue.ptr1 in stead of otherValuePtr everywhere. This is exactly the same field, but it allows twoPtrValue.ptr2 to be used for other purposes. file: f01c391520 check-in: [17354de1e8] user: jan.nijtmans branch: core-8-5-branch, size: 79262
07:56
Merge trunk Handle caching of string intRep in more internal objTypes file: a635186e2f check-in: [c5f0ac6cc3] user: jan.nijtmans branch: no-shimmer-string-length, size: 80570
2013-01-29
11:53
Prevent shimmering of "byte length" for ByteArray, Dict and List objs, by keeping the string internal representation in twoValuePtr.prt2 file: 3267366779 check-in: [621e03a369] user: jan.nijtmans branch: no-shimmer-string-length, size: 80168
10:46
Change core to use repr->twoPtrValue.ptr1 in stead of repr->otherValuePtr (which is exactly the same), but also set repr->twoPtrValue.ptr2 to NULL explicitly. This allows repr->twoPtrValue.ptr2 to be used for another purpose (experimental): Store the StringObj internal representation there when available. file: 8d694dbde7 check-in: [4918a10d3d] user: jan.nijtmans branch: no-shimmer-string-length, size: 79333
2013-01-27
23:38
New experiment (ended), regarding non-shimmering "string length" file: 7d54208c49 check-in: [9b7ff4b901] user: jan.nijtmans branch: novem-no-shimmer-string-length, size: 79553
2013-01-23
11:12
(Experiment) [string length] which does not shimmer any more. file: b242bacb5d check-in: [44514b9586] user: jan.nijtmans branch: no-shimmer-string-length, size: 79420
2012-12-22
19:48
merge novem remove version number from reg.dll and dde.dll file: 03b1df625c check-in: [b9fd2ceaf2] user: jan.nijtmans branch: novem-unversioned-stub, size: 79544
2012-12-18
13:47
Remove all VA functions Tcl_AppendResultVA, Tcl_AppendStringsToObjVA, Tcl_SetErrorCodeVA, Tcl_PanicVA, and dependancy of tcl.h on <stdarg.h>. TIP required. file: a6827a859d check-in: [38e0d974dc] user: jan.nijtmans branch: novem-remove-va, size: 78609
2012-12-12
11:17
merge novem change length and refCount field of Tcl_Obj to size_t change numBytes parameters of Tcl_NewStringObj and Tcl_EvalEx to size_t (those are the most dangerous - but necessary - changes of dkf's 64-bit-sizes work) Since this branch can only be merged to "novem" after dkf's changes, it is meant to be a superset of it, we can already start testing. file: aa7c4fc947 check-in: [adc78601ea] user: jan.nijtmans branch: novem-unversioned-stub, size: 79551
2012-11-21
10:18
more conversion of code, still not running test suite at all file: 40bcd3cb03 check-in: [e648a1571f] user: dkf branch: novem-64bit-sizes, size: 80118
2012-11-20
22:02
some more fixes file: e02c074f4b check-in: [be28a68ad4] user: dkf branch: novem-64bit-sizes, size: 80107
2012-11-19
07:14
getting closer to being able to run the test suite... file: eb20409bf1 check-in: [71eeff3601] user: dkf branch: novem-64bit-sizes, size: 80097
2012-11-18
13:59
... and another tranche file: 2528b7ff67 check-in: [c4a1bbbad2] user: dkf branch: novem-64bit-sizes, size: 79630
07:39
Better programming practice, no literal '-1' in source code. Might even be useful for 64bit-sizes branch <p>add TCL_NOSIZE as internal defined for -1, and use it in a lot of places Ass this function argument should be size_t, not ssize_t (still to be TIPped), something like this will be needed anyway. file: 46ca062b62 check-in: [11a1d1e174] user: jan.nijtmans branch: tcl_nosize, size: 79111
2012-11-16
14:15
More work done. Still I am finding places where int should be size_t and reverse. file: 29f9271085 check-in: [d348e679f7] user: jan.nijtmans branch: novem-64bit-sizes, size: 79430
2012-08-20
06:49
remove unnecessary struct names, which only pollute the "struct" namespace for te compiler. file: 5a3bed39e6 check-in: [db442914c7] user: jan.nijtmans branch: jn-no-struct-names, size: 79217
2012-04-22
20:51
merge trunk file: ad65af8c0a check-in: [0d20ee5cfe] user: jan.nijtmans branch: tip-389-impl, size: 79212
2012-04-18
21:38
make some more internal tables CONST fix compilation with -DNO_CONST file: 85c0f86cc7 check-in: [8e001f8402] user: jan.nijtmans branch: core-8-4-branch, size: 57309
2012-02-09
15:23
Converted the memcpy() calls in append operations to memmove() calls. This adds safety in the case of overlapping copies, and improves performance on some benchmarks. file: 859826d267 check-in: [3bb4751c4e] user: dgp branch: trunk, size: 79224
15:00
3484402 Correct Off-By-One error appending unicode. Thanks to Poor Yorick. Also corrected test for when growth is needed. file: 8096c174c5 check-in: [f43b43900f] user: dgp branch: core-8-5-branch, size: 79256
14:57
3484402 Correct Off-By-One error appending unicode. Thanks to Poor Yorick. Also corrected test for when growth is needed. file: 44ddef1965 check-in: [f57b5ba48d] user: dgp branch: core-8-4-branch, size: 57309
2012-02-07
20:28
3484402 Correct Off-By-One error appending unicode. Thanks to Poor Yorick. Also converted some memcpy() to memmove() to reliably handle overlapping copies, and corrected test for when growth is needed. file: 9fcaaecb2c check-in: [ba9a1d9ddb] user: dgp branch: bug-3484402, size: 57311
2011-10-07
11:58
Fix gcc warnings (discovered with latest mingw, based on gcc 4.6.1) file: 3af489fb2e check-in: [72e8ccc7aa] user: jan.nijtmans branch: core-8-4-branch, size: 57314
2011-08-29
07:44
Merge to feature branch file: b48e0a634f check-in: [6652b24f63] user: jan.nijtmans branch: tip-389-impl, size: 79210
07:25
[3396731] inline string reverse: minor further improvements file: 1fe60bc774 check-in: [69c582084d] user: jan.nijtmans branch: trunk, size: 79222
2011-08-27
02:28
Repaired the lost performance in the copy loop hotspots. Now meets or beats the former trunk (and current trunk by magnitudes) in tclbench. file: 43f41b7bb5 check-in: [34daf5b5b3] user: dgp branch: revert-3396731, size: 79508
2011-08-25
16:26
3396731 Another rewrite of TclStringObjReverse() to make it adopt the nijtmans approach for reversing the objPtr->bytes rep without losing performance. file: 667ba8aa47 check-in: [61d345ff2f] user: dgp branch: revert-3396731, size: 79484
12:11
Merge to feature branch file: f91f585533 check-in: [4ddaab72c4] user: jan.nijtmans branch: tip-389-impl, size: 78635
12:00
[Enh 3396731] Follow-up: special case for Pure-unicode representation file: ef00dc2c67 check-in: [f9ddcf91ba] user: jan.nijtmans branch: trunk, size: 78638
2011-08-24
07:50
Upcoming TIP implementation: Full support for Unicode 6.0 file: 7b89af223a check-in: [5721cf9ae6] user: jan.nijtmans branch: tip-389-impl, size: 77842
2011-08-23
07:08
[FRQ 3396731] inline string reverse file: 2ccc4ebe0a check-in: [8ebe975003] user: jan.nijtmans branch: trunk, size: 77845
2011-05-12
15:00
Set the defaults of all growth algorithm parameters based on one master value. file: b049ca847c check-in: [e0b726da8e] user: dgp branch: bug-3293874, size: 78374
2011-04-28
13:45
Improved reaction to out of memory. file: 6403f9be95 check-in: [4363a1c212] user: dgp branch: trunk, size: 78378
2011-04-27
18:49
TclFreeIntRep() cleanup. file: e5fea575ce check-in: [53b79ea68a] user: dgp branch: mistake, size: 78145
18:23
Backport fix for [Bug 2857044]. file: 0f8f6b2c6d check-in: [1855377cde] user: dgp branch: core-8-5-branch, size: 79261
2011-04-12
20:04
Repair corruption in [string reverse] when string rep invalidation failed to also reset the bytes allocated for string rep to zero [Bug 3285472]. file: 330cb9fbe6 check-in: [4ab8a5f225] user: dgp branch: core-8-5-branch, size: 79233
2011-04-04
13:55
More generation of error codes ([format], [after], [trace], RE optimizer). file: f33a31a5fb check-in: [7100664240] user: dkf branch: trunk, size: 78173
2011-03-26
11:53
Reduce the number of casts used to manage Tcl_Obj internal representations. file: 758e31abe4 check-in: [b2381061a7] user: dkf branch: trunk, size: 77494
2011-03-12
15:06
Adjust ckalloc/ckfree macros to greatly reduce number of explicit casts in rest of Tcl source code. No ABI change. API change *should* be harmless. file: f6c7209938 check-in: [5574bdd262] user: dkf branch: trunk, size: 77506
2011-03-10
09:31
MINOR: Formatting fixes, mainly to comments, so code better fits the style in the Engineering Manual. file: bea92996b7 check-in: [5cb634a1c1] user: dkf branch: trunk, size: 77584
2011-03-02
20:27
Now that we're no longer using SCM based on RCS, the RCS Keyword lines cause more harm than good. Purged them (except in zlib files). file: 18391db29c check-in: [c64f310d38] user: dgp branch: trunk, size: 77322
16:06
Now that we're no longer using SCM based on RCS, the RCS Keyword lines cause more harm than good. Purged them. file: 4ef82f7ecc check-in: [79367df0f0] user: dgp branch: core-8-5-branch, size: 79206
2011-03-01
18:04
Typo in last commit broke tclStringObj.c build. Fixed. file: 3f60cf68a4 check-in: [8223b1672d] user: dgp branch: core-8-4-branch, size: 57310
15:38
Now that we're no longer using SCM based on RCS, the RCS Keyword lines cause more harm than good. Purged them. file: f4056989ef check-in: [90b4acd7bd] user: dgp branch: core-8-4-branch, size: 57306
2010-12-14
16:31
small updates. file: 167876621b check-in: [04411163ee] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 77395
2010-12-08
12:07
Code cleanup. Most warnings are now gone. file: 24576d9d70 check-in: [90d463b3e7] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 77394
2010-12-07
16:01
@1629 (excluding 1577 (INSTR_STR_EQ/NE/CMP merge skipped for today)). I also skipped DKF's math instruction refactoring work. Doing them are essentially backports of complex changes, do this when I am fresh tomorrow. file: 700f8fbca8 check-in: [ecb2476c6c] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 78046
10:15
@1451 file: 4b78f86c1c check-in: [1ea47b059c] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 77767
2010-12-06
14:52
@1400, undo of 177 (TclpThreadGetStacksize). file: e050c6004f check-in: [861c844a13] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 77815
13:20
@1330 + jump interp, indexobj file: 492c11f698 check-in: [c08c831172] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 77795
12:33
@1300 file: 207e3746ed check-in: [3f09e6a910] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 77787
2010-12-02
13:17
@1200 file: b29421621a check-in: [772aad65cb] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 77790
2010-11-29
14:36
@701b file: e0fca65367 check-in: [4b239bf4cd] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 77632
13:51
@670 file: 2fb0a778c0 check-in: [2435a4366f] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 78451
2010-11-23
15:23
Next @611, and jumping tclGetDate.yyacc grammar. file: 3229c2a67a check-in: [b277d95385] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 74892
11:38
Next @500. file: ea1b3a4902 check-in: [5365d7ae02] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 74449
2010-11-22
16:07
Next @380. OO Stacktraces broken. file: 7b2c655684 check-in: [1713113dd4] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 74295
2010-10-20
11:26
merge file: a08d79cb0f check-in: [7f3f6b63d6] user: dgp branch: dgp-refactor, size: 77399
01:50
merge file: 50938f5dd6 check-in: [6c4e1f869f] user: kennykb branch: dogeen-assembler-branch, size: 77403
2010-10-19
22:50
* generic/tclZlib.c (Tcl_ZlibStreamGet): [Bug 3081008]: Ensure that when a bytearray gets its internals entangled with zlib for more than a passing moment, that bytearray will never be shimmered away. This increases the amount of copying but is simple to get right, which is a reasonable trade-off. * generic/tclStringObj.c (Tcl_AppendObjToObj): Added some special cases so that most of the time when you build up a bytearray by appending, it actually ends up being a bytearray rather than shimmering back and forth to string. * tests/http11.test (check_crc): Use a simpler way to express the functionality of this procedure. file: 9c7b77feeb check-in: [885ee93472] user: dkf branch: trunk, size: 77395
2010-06-07
17:36
rebranch from HEAD file: 4dd9bfbcee check-in: [f3af08f468] user: rmax branch: rmax-ipv6-branch, size: 77121
2010-05-03
16:30
merge file: 4845e002be check-in: [fe433b0919] user: dgp branch: dgp-refactor, size: 77120
2010-04-30
20:52
* generic/tclBinary.c (TclAppendBytesToByteArray): Add comments * generic/tclInt.h (TclAppendBytesToByteArray): placing overflow protection responsibility on caller. Convert "len" argument to signed int which any value already vetted for overflow issues will fit into. * generic/tclStringObj.c: Update caller; standardize panic msg. * generic/tclBinary.c (UpdateStringOfByteArray): Add panic when the generated string representation would grow beyond Tcl's size limits. [Bug 2994924] file: b507914443 check-in: [32f022466a] user: dgp branch: trunk, size: 77116
2010-04-29
23:32
merge file: c964532866 check-in: [93ad5b0c95] user: dgp branch: dgp-refactor, size: 77119
15:08
* generic/tclBinary.c (TclAppendBytesToByteArray): [Bug 2992970]: Make * generic/tclStringObj.c (Tcl_AppendObjToObj): an append of a byte array to another into an efficent operation. The problem was the (lack of) a proper growth management strategy for the byte array. file: f60c1df296 check-in: [45422b0ec4] user: dkf branch: trunk, size: 77115
2010-04-02
14:36
* generic/tclStringObj.c: (SetStringFromAny): avoid trampling over the tclEmptyStringRep->bytes as it is thread-shared (thx to Gustaf Neumann for the (hard) work of locating this one). file: 329cf72942 check-in: [8ccd1a96da] user: vasiljevic branch: core-8-4-branch, size: 57394
14:30
* generic/tclStringObj.c: (SetStringFromAny): avoid trampling over the tclEmptyStringRep->bytes as it is thread-shared (thx to Gustaf Neumann for the (hard) work of locating this one). file: 7a12f72b6b check-in: [59bf516261] user: vasiljevic branch: core-8-5-branch, size: 79290
2010-03-30
08:45
Merge from HEAD to rmax-ipv6-branch file: 1e0fecc9fd check-in: [54b695423d] user: rmax branch: rmax-ipv6-branch, size: 77169
02:29
merge file: d9664d5642 check-in: [c3f2341ff0] user: dgp branch: dgp-refactor, size: 77168
2010-03-29
21:58
* generic/tclStringObj.c: Fix array overrun in test format-1.12 caught by valgrind testing. file: 43d47bf931 check-in: [091499cda4] user: dgp branch: trunk, size: 77164
21:57
* generic/tclStringObj.c: Fix array overrun in test format-1.12 caught by valgrind testing. file: b01bdef033 check-in: [8775fff1dc] user: dgp branch: core-8-5-branch, size: 79211
2010-03-06
03:40
merge updates file: 46d9eec824 check-in: [f1f1ac161b] user: dgp branch: dgp-refactor, size: 77148
2010-03-05
14:34
Code Audit results: * use do { ... } while (0) in macros * avoid shadowing one local variable with another * use clearer 'foo.bar++;' instead of '++foo.bar;' where result not required (i.e., semantically equivalent) * follow Engineering Manual rules on spacing and declarations file: 6079b26814 check-in: [4d8a4f639d] user: dkf branch: trunk, size: 77144
2010-02-25
21:53
merge updates from HEAD file: 2608e6dad6 check-in: [1b11388844] user: dgp branch: dgp-refactor, size: 77140
2010-02-24
10:32
Pure whitespace changes, changing to follow Engineering Manual style. file: 9e93311f8c check-in: [c81eddebbb] user: dkf branch: trunk, size: 77136
2010-01-18
14:58
merge updates from HEAD file: b471762862 check-in: [aa64c80d13] user: dgp branch: dgp-refactor, size: 77143
09:50
[Bug 2932421]: Make [format] less likely to smash intreps. file: fc47e9d6f9 check-in: [0cdd44b844] user: dkf branch: core-8-5-branch, size: 79191
09:49
Ensure that objects are released in all cases (hard to test this particular one without a very large system, but the leak path existed) file: 33fda179ed check-in: [f225aaa526] user: dkf branch: trunk, size: 77139
09:31
[Bug 2932421]: Make [format] less likely to smash intreps. file: 56e36c05d2 check-in: [d9c0ca8b37] user: dkf branch: trunk, size: 77078
2009-09-30
06:07
merge updates from HEAD file: 93097c4e14 check-in: [3b4e6b13b9] user: dgp branch: dgp-refactor, size: 76985
03:11
* generic/tclDictObj.c: Updated freeIntRepProc routines so * generic/tclExecute.c: that they set the typePtr field to * generic/tclIO.c: NULL so that the Tcl_Obj is not left * generic/tclIndexObj.c: in an inconsistent state. * generic/tclInt.h: [Bug 2857044] * generic/tclListObj.c: * generic/tclNamesp.c: * generic/tclOOCall.c: * generic/tclObj.c: * generic/tclPathObj.c: * generic/tclProc.c: * generic/tclRegexp.c: * generic/tclStringObj.c: file: 3ac3b6fa85 check-in: [c712d7d7bb] user: dgp branch: trunk, size: 76981
2009-08-27
21:23
merge updates from HEAD file: 4ba3e5bde7 check-in: [0ff663548f] user: dgp branch: dgp-refactor, size: 76957
19:34
* generic/tclStringObj.c: A few more string overflow cases in [format]. [Bug 2845535] file: afd51de767 check-in: [5fbae24aa1] user: dgp branch: trunk, size: 76953
19:33
* generic/tclStringObj.c: A few more string overflow cases in [format]. [Bug 2845535] file: 5c38fe362f check-in: [7a7b843587] user: dgp branch: core-8-5-branch, size: 78984
2009-08-03
14:14
merge updates from HEAD file: 3ea0bbaf5b check-in: [69dee2802f] user: dgp branch: dgp-refactor, size: 76762
2009-07-31
16:56
* generic/tclStringObj.c: Corrected failure to grow buffer * tests/format.test: when format spec request large width floating point values. Thanks to Clemens Misch. [Bug 2830354] file: 8f948fe497 check-in: [462283219e] user: dgp branch: core-8-5-branch, size: 78789
16:55
* generic/tclStringObj.c: Corrected failure to grow buffer * tests/format.test: when format spec request large width floating point values. Thanks to Clemens Misch. [Bug 2830354] file: 2e302cc704 check-in: [a3c590a7b5] user: dgp branch: trunk, size: 76758
2009-07-15
22:27
fix 64bit int <-> ptr cast warnings file: adcae251a8 check-in: [e30aeb4cb6] user: das branch: core-8-5-branch, size: 78739
2009-07-13
13:08
merge updates from HEAD file: 2e046abbfb check-in: [c3eade8112] user: dgp branch: dgp-refactor, size: 76711
2009-07-12
18:04
Fix [Bug 2637173] by consolidating bytearray purity check. file: 7c2f85c666 check-in: [f796a220ae] user: dkf branch: trunk, size: 76707
2009-07-01
15:29
Cast wide integer to int conversion and some signed/unsigned conversions. (silence msvc6 warnings) file: 4b9da3482d check-in: [a36d676c25] user: patthoyts branch: core-8-5-branch, size: 78748
15:12
merge updates from HEAD file: 62d66362e9 check-in: [82a7e96ce9] user: dgp branch: dgp-refactor, size: 77363
15:06
Cast wide integer to int conversion (silence msvc6 warning) file: 29579b47cd check-in: [c5133b9b13] user: patthoyts branch: trunk, size: 77365
2009-06-24
12:47
merge updates from HEAD file: 9a5590ffa2 check-in: [818def88d3] user: dgp branch: dgp-refactor, size: 77353
2009-06-15
18:52
* generic/tclStringObj.c: sprintf() -> Tcl_ObjPrintf() conversion. file: b0bc1f7a69 check-in: [76ca69989e] user: dgp branch: core-8-5-branch, size: 78732
18:51
* generic/tclStringObj.c: sprintf() -> Tcl_ObjPrintf() conversion. file: c4215d01bc check-in: [e3a58fe6f2] user: dgp branch: trunk, size: 77349
2009-06-10
22:10
merge updates from HEAD file: b12222875c check-in: [5c093837f5] user: dgp branch: dgp-refactor, size: 77395
21:39
* generic/tclStringObj.c: Revised [format] to not overflow the integer calculations computing the length of the %ll formats of really big integers. Also added protections so that [format]s that would produce results overflowing the maximum string length of Tcl values throw a normal Tcl error instead of a panic. [Bug 2801413] file: 7a82df6383 check-in: [603364c9eb] user: dgp branch: trunk, size: 77391
21:38
* generic/tclStringObj.c: Revised [format] to not overflow the integer calculations computing the length of the %ll formats of really big integers. Also added protections so that [format]s that would produce results overflowing the maximum string length of Tcl values throw a normal Tcl error instead of a panic. [Bug 2801413] file: ca69e4128f check-in: [7bd82b7393] user: dgp branch: core-8-5-branch, size: 78774
14:44
* generic/tclStringObj.c: Corrected failures to deal with the "pure unicode" representation of an empty string. Thanks to Julian Noble for reporting the problem. [Bug 2803109] file: 7ba90e077d check-in: [dfc23bce03] user: dgp branch: trunk, size: 75945
2009-04-22
17:21
* generic/tclStringObj.c (UpdateStringOfString): Added cast to fix signed/unsigned mismatch breaking win32 symbol/debug build. file: 17ef710173 check-in: [425b383f6f] user: andreas_kupries branch: core-8-4-branch, size: 57349
2009-04-15
19:22
UpdateStringOfString: matchup with core-8-5-branch changes file: d8b9a72b8a check-in: [23808a5bdf] user: das branch: core-8-4-branch, size: 57326
19:11
* generic/tclStringObj.c: AppendUnicodeToUnicodeRep failed to set stringPtr->allocated to 0, leading to crashes. file: 9011491877 check-in: [9fe72d4216] user: dgp branch: core-8-4-branch, size: 57317
19:07
* generic/tclStringObj.c: AppendUnicodeToUnicodeRep failed to set stringPtr->allocated to 0, leading to crashes. file: 0f68295855 check-in: [48925f56c8] user: dgp branch: core-8-5-branch, size: 77353
2009-04-10
22:14
silence warning preventing symbols build with msvc6 (signed/unsigned comparison) file: e2a78a02cf check-in: [3352598241] user: patthoyts branch: core-8-5-branch, size: 77329
21:27
* generic/tclStringObj.c (UpdateStringOfString): Fix bug detected by compiler warning about undefined "dst". file: 187a67a21d check-in: [3ed35b9bbb] user: dgp branch: core-8-5-branch, size: 77312
2009-04-07
18:46
merge updates from HEAD file: 56529fcd5d check-in: [8cc32f55f3] user: dgp branch: dgp-refactor, size: 76328
18:45
* generic/tclStringObj.c: Correction so that value of TCL_GROWTH_MIN_ALLOC is everywhere expressed in bytes as comment claims. file: d305cddcfc check-in: [24eea28193] user: dgp branch: trunk, size: 76324
18:37
* generic/tclStringObj.c: Completed backports of fixes for [Bug 2494093] and [Bug 2553906]. file: 034507c8f3 check-in: [25da06730d] user: dgp branch: core-8-4-branch, size: 57286
18:37
* generic/tclStringObj.c: Completed backports of fixes for [Bug 2494093] and [Bug 2553906]. file: 4472856d26 check-in: [b72d2c661c] user: dgp branch: core-8-5-branch, size: 77301
2009-03-30
17:47
* generic/tclStringObj.c: Added protections from invalid memory * generic/tclTestObj.c: accesses when we append (some part of) * tests/stringObj.test: a Tcl_Obj to itself. Added the appendself and appendself2 subcommands to the [teststringobj] testing command and added tests to the test suite. [Bug 2603158] file: c19d58ac5a check-in: [f0785bb73d] user: dgp branch: core-8-5-branch, size: 76088
17:47
* generic/tclStringObj.c: Added protections from invalid memory * generic/tclTestObj.c: accesses when we append (some part of) * tests/stringObj.test: a Tcl_Obj to itself. Added the appendself and appendself2 subcommands to the [teststringobj] testing command and added tests to the test suite. [Bug 2603158] file: 8963a377f1 check-in: [e85458edfc] user: dgp branch: core-8-4-branch, size: 56057
2009-03-21
02:54
* generic/tclStringObj.c: Test stringObj-6.9 checks that * tests/stringObj.test: Tcl_AppendStringsToObj() no longer crashes when operating on a pure unicode value. [Bug 2597185] file: d3bd48c913 check-in: [2ad13d8bb6] user: dgp branch: core-8-5-branch, size: 75204
02:53
* generic/tclStringObj.c: Test stringObj-6.9 checks that * tests/stringObj.test: Tcl_AppendStringsToObj() no longer crashes when operating on a pure unicode value. [Bug 2597185] file: fed42eaf34 check-in: [6c175deb9d] user: dgp branch: core-8-4-branch, size: 55169
2009-02-23
17:20
merge updates from HEAD file: 87009be659 check-in: [453286efe3] user: dgp branch: dgp-refactor, size: 76308
2009-02-22
04:38
* generic/tclStringObj.c: Several revisions to the shimmering patterns between Unicode and UTF string reps. Most notably the call: objPtr = Tcl_NewUnicodeObj(...,0); followed by a loop of calls: Tcl_AppendUnicodeToObj(objPtr, u, n); will now grow and append to the Unicode representation. Before this commit, the sequence would convert each append to UTF and perform the append to the UTF rep. This is puzzling and likely a bug. The performance of [string map] is significantly improved by this change (according to the MAP collection of benchmarks in tclbench). Just in case there was some wisdom in the old ways that I missed, I left in the ability to restore the old patterns with a #define COMPAT 1 at the top of the file. file: 228cbb8276 check-in: [76f96f2a4c] user: dgp branch: trunk, size: 76304
2009-02-19
15:13
merge updates from HEAD file: 4bd66ec712 check-in: [7ee406757c] user: dgp branch: dgp-refactor, size: 75208
14:55
alternative solution to the signed/unsigned warnings file: 2d618dbed9 check-in: [a6265b9b52] user: dgp branch: trunk, size: 75204
06:35
fix signed/unsigned comparison warnings file: 9e4a50409b check-in: [a5b3726442] user: das branch: trunk, size: 75223
02:47
merge updates from HEAD file: b5d191f06e check-in: [6f1abd1b1b] user: dgp branch: dgp-refactor, size: 75203
2009-02-18
20:10
* generic/tclStringObj.c: Simplify the logic of the Tcl_*SetObjLength() routines. file: 5ef5931469 check-in: [b2511db171] user: dgp branch: trunk, size: 75199
19:47
another TODO file: a56212fd4c check-in: [e8f8bf65a5] user: dgp branch: trunk, size: 75895
18:43
merge updates from HEAD file: 57093e65af check-in: [1466ff4bd2] user: dgp branch: dgp-refactor, size: 75858
18:31
* generic/tclStringObj.c: Rewrite GrowStringBuffer() so that it has parallel structure with GrowUnicodeBuffer(). The revision permits allocation attempts to continue all the way up to failure, with no gap. It also directly manipulates the String and Tcl_Obj internals instead of inefficiently operating via Tcl_*SetObjLength() with all of its extra protections and underdocumented special cases. file: badd0dd575 check-in: [3f462e6880] user: dgp branch: trunk, size: 75854
17:45
* generic/tclStringObj.c: Another round of simplification on the allocation macros. file: 441a466a8d check-in: [e352a00e67] user: dgp branch: trunk, size: 75721
06:26
* generic/tclStringObj.c: Another round of simplification on the allocation macros. file: f4c475f4fb check-in: [61fb6cf251] user: dgp branch: trunk, size: 75832
2009-02-17
21:40
* generic/tclStringObj.c: Pare back the length of the unicode array in a non-extended String struct to one Tcl_UniChar, meant to hold the terminating NUL character. Non-empty unicode strings are then stored by extending the String struct by stringPtr->maxChars additional slots in that array with sizeof(Tcl_UniChar) bytes per slot. This revision makes the allocation macros much simpler. file: 93284a937e check-in: [8754f4357d] user: dgp branch: trunk, size: 76021
21:05
* generic/tclStringObj.c: Factor out common GrowUnicodeBuffer() and solve overflow and growth algorithm fallbacks in it. file: a6ae2afc1a check-in: [cfe9911057] user: dgp branch: trunk, size: 76165
17:17
* generic/tclStringObj.c: Factor out common GrowStringBuffer(). * generic/tclStringObj.c: Convert Tcl_AppendStringsToObj into * tests/stringObj.test: a radically simpler implementation where we just loop over calls to Tcl_AppendToObj. This fixes [Bug 2597185]. It also creates a *** POTENTIAL INCOMPATIBILITY *** in that T_ASTO can now allocate more space than is strictly required, like all the other Tcl_Append* routines. The incompatibility was detected by test stringObj-6.5, which I've updated to reflect the new behavior. file: 372ce26665 check-in: [820ba0e29a] user: dgp branch: trunk, size: 76037
14:28
merge updates from HEAD file: 30d75702a8 check-in: [8b78d4ea6c] user: dgp branch: dgp-refactor, size: 79109
06:52
* generic/tclStringObj.c: Revise buffer growth implementation in ExtendStringRepWithUnicode. Use cheap checks to determine that no reallocation is necessary without cost of computing the precise number of bytes needed. Also make use of the string growth algortihm in the case of repeated appends. file: 173300a505 check-in: [e188de7032] user: dgp branch: trunk, size: 79105
2009-02-16
04:06
* generic/tclStringObj.c: Added protections from invalid memory * generic/tclTestObj.c: accesses when we append (some part of) * tests/stringObj.test: a Tcl_Obj to itself. Added the appendself and appendself2 subcommands to the [teststringobj] testing command and added tests to the test suite. [Bug 2603158] file: aa9919f6bb check-in: [1c3c3be74a] user: dgp branch: trunk, size: 78498
2009-02-15
23:13
* generic/tclStringObj.c: Factor out duplicate code from Tcl_AppendObjToObj. file: d9590a8ee2 check-in: [dac012d276] user: dgp branch: trunk, size: 77741
22:32
* generic/tclStringObj.c: Replace the 'size_t uallocated' field of the String struct, storing the number of bytes allocated to store the Tcl_UniChar array, with an 'int maxChars' field, storing the number of Tcl_UniChars that may be stored in the allocated space. This reduces memory requirement a small bit, and makes some range checks simpler to code. file: 92b676a3ad check-in: [14abdb946c] user: dgp branch: trunk, size: 77955
16:49
* generic/tclStringObj.c: Removed limitation in Tcl_AppendObjToObj where the char length of the result was only computed if the appended string was all single byte characters. This limitation was in place to dodge a bug in Tcl_GetUniChar. With that bug gone, we can take advantage of always recording the length of append results when we know it. file: 0927da8ed8 check-in: [24a9c9e7b5] user: dgp branch: trunk, size: 78134
2009-02-14
23:07
* generic/tclStringObj.c: Revisions so that we avoid creating the strange representation of an empty string with objPtr->bytes == NULL and stringPtr->hasUnicode == 0. Instead in the situations where that was being created, create a traditional two-legged stork representation (objPtr->bytes = tclEmptyStringRep and stringPtr->hasUnicode = 1). In the situations where the strange rep was treated differently, continue to do so by testing stringPtr->numChars == 0 to detect it. These changes make the code more conventional so easier for new maintainers to pick up. Also sets up further simplifications. file: 370f521fd2 check-in: [59f23bd2a8] user: dgp branch: trunk, size: 78231
2009-02-13
14:45
Remove all "register" keywords. file: 6ede3307d4 check-in: [8676898b20] user: dgp branch: trunk, size: 77079
04:01
New utility routine UnicodeLength(), to compute the length of unicode buffer arguments when no length is passed in, with built-in overflow protection included. Update three callers to use it. file: 2b0db259cd check-in: [42a8e6fdf2] user: dgp branch: trunk, size: 77228
03:22
* generic/tclStringObj.c: Rewrites of the routines Tcl_GetCharLength, Tcl_GetUniChar, Tcl_GetUnicodeFromObj, Tcl_GetRange, and TclStringObjReverse to use the new macro, and to more simply and clearly split the cases depending on whether a valid unicode rep is present or needs to be created. * generic/tclInt.h: New macro TclNumUtfChars meant to be a faster replacement for a full Tcl_NumUtfChars() call when the string has all single-byte characters. file: e4a00cbd48 check-in: [d2191985b4] user: dgp branch: trunk, size: 77231
2009-02-12
17:08
* generic/tclStringObj.c: Simplified Tcl_GetCharLength by * generic/tclTestObj.c: removing code that did nothing. Added early returns from Tcl_*SetObjLength when the desired length is already present; adapted test command to the change. file: 7097b33680 check-in: [215d13fc4c] user: dgp branch: trunk, size: 78355
14:45
* generic/tclStringObj.c: Re-implemented AppendUtfToUnicodeRep so that we no longer pass through Tcl_DStrings which have their own sets of problems when lengths overflow the int range. Now AUTUR and FillUnicodeRep share a common core routine. file: d668e76dbc check-in: [7d98b7fffc] user: dgp branch: trunk, size: 78452
04:35
Revise latest commit to better maintain stringPtr->numChars. file: 3dca8b672c check-in: [f9db57a39e] user: dgp branch: trunk, size: 77965
03:46
* generic/tclStringObj.c: Re-implemented AppendUnicodeToUtfRep so that we no longer pass through Tcl_DStrings which have their own sets of problems when lengths overflow the int range. Now AUTUR and UpdateStringOfString share a common core routine. file: 4dd73ed86b check-in: [ed8007db13] user: dgp branch: trunk, size: 77885
2009-02-11
19:33
Removed casts now unnecessary after type of stringPtr->allocated changed. file: c29ab3705b check-in: [0bc9529c8f] user: dgp branch: trunk, size: 77041
17:27
merge updates from HEAD file: fefef8b935 check-in: [f07460d448] user: dgp branch: dgp-refactor, size: 77072
15:28
* generic/tclStringObj.c: Changed type of the 'allocated' field of the String struct from size_t to int since only int values are ever stored in it. file: ad751bbacd check-in: [93efedde3f] user: dgp branch: trunk, size: 77067
2009-02-10
23:08
- eliminate some unnessary type casts - some internal const decorations - spacing file: 78e85bf0d5 check-in: [a45c7b126b] user: nijtmans branch: trunk, size: 77075
21:04
Removed handling of (objPtr->bytes != NULL) from UpdateStringOfString, which is only called when objPtr->bytes is NULL. file: 6fd5b8f4cf check-in: [1f05ccc310] user: dgp branch: trunk, size: 77058
17:37
Simplify Tcl_SetObjLength by removing unreachable code. file: 847bc06d05 check-in: [927c8dae6c] user: dgp branch: trunk, size: 77130
17:28
Simplify SetStringFromAny() by removing unreachable and duplicate code. file: 38ac27ab6e check-in: [f811987143] user: dgp branch: trunk, size: 77342
17:09
* generic/tclObj.c (Tcl_GetString): Added comments and validity checks following the call to an UpdateStringProc. Simplify Tcl_AttemptSetObjLength by removing unreachable code. file: 115fa2d54f check-in: [78d89e677c] user: dgp branch: trunk, size: 77666
15:37
Convert all Tcl_InvalidateStringRep() calls into macros. file: e470239dc0 check-in: [e1cda5d2cf] user: dgp branch: trunk, size: 77877
14:59
* generic/tclStringObj.c: Reduce code duplication in Tcl_GetUnicode*. Restrict AppendUtfToUtfRep to non-negative length appends. file: 32dda965cb check-in: [84a1bb328a] user: dgp branch: trunk, size: 77883
14:38
* generic/tclStringObj.c (Tcl_GetUnicode*): Reduce code duplication. file: 603c9f1820 check-in: [0fb18eb9e7] user: dgp branch: trunk, size: 77906
2009-02-05
23:12
merge updates from HEAD file: cd1a8e9d2d check-in: [3ec9a51e62] user: dgp branch: dgp-refactor, size: 78562
21:27
Add missing cast file: 8b3a4317b5 check-in: [9cef9aac53] user: dkf branch: trunk, size: 78557
14:10
* generic/tclStringObj.c: Added overflow protections to the AppendUtfToUtfRep routine to either avoid invalid arguments and crashes, or to replace them with controlled panics. [Bug 2561794] file: a51fb53a30 check-in: [1287624315] user: dgp branch: core-8-4-branch, size: 55010
13:59
* generic/tclStringObj.c: Added overflow protections to the AppendUtfToUtfRep routine to either avoid invalid arguments and crashes, or to replace them with controlled panics. [Bug 2561794] file: c048b8d243 check-in: [9d19b12984] user: dgp branch: core-8-5-branch, size: 75045
13:26
merge updates from HEAD file: b6007ae83d check-in: [409e734ff2] user: dgp branch: dgp-refactor, size: 78548
11:57
More/better/cleaner handling of the bytearray special casing for string ops. file: c223d3e84b check-in: [174db4e4cd] user: dkf branch: trunk, size: 78543
01:21
Improve efficiency of Tcl_AppendObjToObj's bytearray handling. file: 8efb2cfe8f check-in: [94be40db3a] user: dkf branch: trunk, size: 76562
2009-02-04
22:48
merge updates from HEAD file: ed366ded8b check-in: [fdf6271dcc] user: dgp branch: dgp-refactor, size: 75514
22:39
* generic/tclStringObj.c (SetUnicodeObj): Corrected failure of Tcl_SetUnicodeObj() to panic on a shared object. [Bug 2561488]. Also factored out common code to reduce duplication. file: f1cbca8bec check-in: [3b1d7afdbe] user: dgp branch: core-8-4-branch, size: 54185
21:45
comment typo file: 9ad2093b1d check-in: [0a9d076582] user: dgp branch: trunk, size: 75509
21:43
comment typo file: 5e365f1397 check-in: [f22e328814] user: dgp branch: core-8-5-branch, size: 74219
20:21
* generic/tclStringObj.c (SetUnicodeObj): Corrected failure of Tcl_SetUnicodeObj() to panic on a shared object. [Bug 2561488]. Also factored out common code to reduce duplication. file: 9f1fc4b4be check-in: [d7975f5bcd] user: dgp branch: core-8-5-branch, size: 74218
19:59
* generic/tclStringObj.c: Added overflow protections to the AppendUtfToUtfRep routine to either avoid invalid arguments and crashes, or to replace them with controlled panics. [Bug 2561794] file: ced07cb24c check-in: [50800297d9] user: dgp branch: trunk, size: 75508
14:16
merge updates from HEAD file: ff09d1ffe4 check-in: [255c748a68] user: dgp branch: dgp-refactor, size: 75109
2009-02-03
18:10
* generic/tclStringObj.c (SetUnicodeObj): Corrected failure of Tcl_SetUnicodeObj() to panic on a shared object. [Bug 2561488]. Also factored out common code to reduce duplication. file: 74828e798d check-in: [b0fc858575] user: dgp branch: trunk, size: 75104
2009-02-02
14:24
merge updates from HEAD file: 09428c3e72 check-in: [3b662c41d0] user: dgp branch: dgp-refactor, size: 75332
05:54
* generic/tclStringObj.c (STRING_NOMEM): Add missing cast of NULL to (char *) that upsets some compilers. [Bug 2494093]. file: 48d7940868 check-in: [75bf4b19b7] user: dgp branch: trunk, size: 75327
05:47
* generic/tclStringObj.c (Tcl_(Attempt)SetObjLength): Added protections against callers asking for negative lengths. It is likely when this happens that an integer overflow is to blame. [Bug 2553906]. file: f40eec6d6e check-in: [2a6367e1b9] user: dgp branch: trunk, size: 75314
2009-01-22
17:13
merge updates from HEAD file: c3963a4c18 check-in: [eab5383f18] user: dgp branch: dgp-refactor, size: 74896
2009-01-21
21:29
* generic/tclStringObj.c: New fix for [Bug 2494093] replaces the flawed attempt committed 2009-01-09. file: ef429d445d check-in: [17135c11fc] user: dgp branch: trunk, size: 74891
2009-01-09
15:35
merge updates from HEAD file: 1ef5348433 check-in: [470607e0b5] user: dgp branch: dgp-refactor, size: 74614
15:34
* generic/tclStringObj.c (STRING_SIZE): Corrected failure to limit memory allocation requests to the sizes that can be supported by Tcl's memory allocation routines. [Bug 2494093]. file: 44f3bc105b check-in: [3b1f4e78cd] user: dgp branch: trunk, size: 74609
15:15
* generic/tclStringObj.c (STRING_SIZE): Corrected failure to limit memory allocation requests to the sizes that can be supported by Tcl's memory allocation routines. [Bug 2494093]. file: 317958cb8b check-in: [ec34b68502] user: dgp branch: core-8-4-branch, size: 54426
15:12
* generic/tclStringObj.c (STRING_SIZE): Corrected failure to limit memory allocation requests to the sizes that can be supported by Tcl's memory allocation routines. [Bug 2494093]. file: d57b3ca60f check-in: [5d56bba354] user: dgp branch: core-8-5-branch, size: 74461
2009-01-08
18:00
merge updates from HEAD file: 12c45f8797 check-in: [0b4ea10c4a] user: dgp branch: dgp-refactor, size: 74455
17:58
* generic/tclStringObj.c (STRING_UALLOC): Added missing parens required to get correct results out of things like STRING_UALLOC(num + append). [Bug 2494093]. file: fd8afb23a0 check-in: [2663be2b32] user: dgp branch: trunk, size: 74450
17:57
* generic/tclStringObj.c (STRING_UALLOC): Added missing parens required to get correct results out of things like STRING_UALLOC(num + append). [Bug 2494093]. file: 841dd62403 check-in: [de416fc6a1] user: dgp branch: core-8-4-branch, size: 54267
17:55
* generic/tclStringObj.c (STRING_UALLOC): Added missing parens required to get correct results out of things like STRING_UALLOC(num + append). [Bug 2494093]. file: a26c8fad63 check-in: [026b245cf3] user: dgp branch: core-8-5-branch, size: 74302
2008-12-17
23:25
merge updates from HEAD file: b396cc14e1 check-in: [206cad281d] user: dgp branch: dgp-refactor, size: 74453
16:47
move variable "length" inside if() don't use ckfree((void *)...) but ckfree((char *)...) file: 76e0b28e59 check-in: [0a08bcb02d] user: nijtmans branch: trunk, size: 74453
2008-12-12
02:41
merge updates from HEAD file: 1fd6e34598 check-in: [ffe56e444b] user: dgp branch: dgp-refactor, size: 74453
2008-12-10
18:21
TIP #343 IMPLEMENTATION - A Binary Specifier for [format/scan] file: 2bcb96fe9b check-in: [197d47d29d] user: ferrieux branch: trunk, size: 74453
2008-11-10
02:18
merge updates from HEAD file: 8ef41b5d68 check-in: [4a9c1325dc] user: dgp branch: dgp-refactor, size: 74299
2008-10-26
18:34
Style improvements - invoking callbacks without visual junk. file: 8d9836a330 check-in: [a1a8afc25d] user: dkf branch: trunk, size: 74294
2008-10-17
20:52
merge updates from HEAD file: a9416e46e2 check-in: [d93600ad8e] user: dgp branch: dgp-refactor, size: 74313
2008-10-16
22:34
Add "const" to many internal const tables. No functional or API change. file: 351c782e4e check-in: [f03d2e2d83] user: nijtmans branch: trunk, size: 74313
2008-10-15
06:17
Add "const" to many internal const tables, so those will be put by the C-compiler in the TEXT segment in stead of the DATA segment. This makes those table sharable in shared libraries. file: 9301220daa check-in: [8fcbc25d98] user: nijtmans branch: trunk, size: 74307
2008-06-25
15:56
merge updates from 8.5 branch file: 0387376b5d check-in: [affd52009d] user: dgp branch: core-stabilizer-branch, size: 74300
2008-04-08
13:18
merge updates from HEAD file: 1e087f692a check-in: [e6bf431352] user: dgp branch: dgp-refactor, size: 74301
2008-04-07
16:06
* generic/tclStringObj.c (Tcl_AppendFormatToObj): Fix [format {% d}] so that it behaves the same way as in 8.4 and as C's printf(). * tests/format.test: Add a test for '% d' and '%+d'. file: b05e8962d4 check-in: [ba04dc8f19] user: dgp branch: core-8-5-branch, size: 74300
15:23
* generic/tclStringObj.c (Tcl_AppendFormatToObj): Fix [format {% d}] so that it behaves the same way as in 8.4 and as C's printf(). * tests/format.test: Add a test for '% d' and '%+d'. file: 8e2134d9b3 check-in: [0b371e1c32] user: rmax branch: trunk, size: 74297
2008-03-07
22:05
merge updates from HEAD file: 8d2e985f51 check-in: [3b6959be94] user: dgp branch: core-stabilizer-branch, size: 74272
2008-03-03
04:34
merge updates from HEAD file: 5fd4faab39 check-in: [f211098809] user: dgp branch: dgp-refactor, size: 74273
2008-02-28
17:36
* generic/tclStringObj.c (Tcl_AppendFormatToObj): [format %llx $big] leaked an mp_int. file: 9363f7d771 check-in: [120da645b7] user: dgp branch: trunk, size: 74268
2008-01-23
16:42
merge updates from HEAD file: c3c6d95d56 check-in: [013cce9562] user: dgp branch: core-stabilizer-branch, size: 74230
2008-01-10
16:46
merge updates from HEAD file: 75e7bffddf check-in: [6c7f7cedb2] user: dgp branch: dgp-refactor, size: 74231
16:09
* generic/tclStringObj.c (Tcl_AppendFormatToObj): Correct failure to * tests/format.test: account for big.used == 0 corner case in the %ll(idox) format directives. [Bug 1867855]. file: d9ead8dd62 check-in: [8af00ef2f0] user: dgp branch: trunk, size: 74226
2007-12-13
15:22
merge stable branch onto HEAD file: 4815da9ed7 check-in: [d1f7550cd9] user: dgp branch: trunk, size: 74189
2007-12-06
06:51
merge updates from HEAD file: 26cabc685e check-in: [6f3a8a0d9e] user: dgp branch: dgp-refactor, size: 74194
2007-11-21
06:30
Merge updates from 8.5b3 release file: d75a82264c check-in: [c60ad186f4] user: dgp branch: core-stabilizer-branch, size: 74193
2007-11-18
22:30
More minor cleanup file: 98b1762b38 check-in: [2746b844ca] user: dkf branch: trunk, size: 74189
2007-11-12
20:40
merge updates from HEAD file: 147b1546f3 check-in: [27f428842c] user: dgp branch: dgp-refactor, size: 74287
19:18
merge updates from HEAD file: c68d8c639f check-in: [72c5ac9502] user: dgp branch: core-stabilizer-branch, size: 74286
2007-11-11
19:32
[Patch 1830038]: Increased usage of macros to detect and take advantage of objTypes. file: 4bc99bf130 check-in: [11e8f31512] user: msofer branch: trunk, size: 74285
2007-04-08
14:58
Merge updates from HEAD; may not build file: 18c43c971f check-in: [8dc7079178] user: dgp branch: dgp-refactor, size: 74303
2007-03-28
19:03
* generic/tclCmdMZ.c (STR_REVERSE): Implement the actual [string reverse] command in terms of the new TclStringObjReverse() routine. * generic/tclInt.h (TclStringObjReverse): New internal routine * generic/tclStringObj.c (TclStringObjReverse): that implements the [string reverse] operation, making use of knowledge/surgery of the String intrep to minimize the number of allocs and copies needed to do the job. file: bb24ea1219 check-in: [5373afa733] user: dgp branch: trunk, size: 74298
2007-03-21
18:02
* generic/tclExecute.c: More ckalloc -> ckrealloc conversions. * generic/tclLiteral.c: * generic/tclNamesp.c: * generic/tclParse.c: * generic/tclPreserve.c: * generic/tclStringObj.c: * generic/tclUtil.c: file: d4ae7f9b44 check-in: [aa6b9bf6a4] user: dgp branch: trunk, size: 72390
2006-11-15
20:08
TIP#270 IMPLEMENTATION * generic/tcl.decls: New public routines Tcl_ObjPrintf, * generic/tclStringObj.c: Tcl_AppendObjToErrorInfo, Tcl_Format, * generic/tclInt.h: Tcl_AppendLimitedToObj, Tcl_AppendFormatToObj and Tcl_AppendPrintfToObj. Former internal versions removed. * generic/tclDecls.h: make genstubs * generic/tclStubInit.c: * generic/tclBasic.c: Updated callers. * generic/tclCkalloc.c: * generic/tclCmdAH.c: * generic/tclCmdIL.c: * generic/tclCmdMZ.c: * generic/tclCompExpr.c: * generic/tclCompile.c: * generic/tclDictObj.c: * generic/tclExecute.c: * generic/tclIORChan.c: * generic/tclIOUtil.c: * generic/tclMain.c: * generic/tclNamesp.c: * generic/tclObj.c: * generic/tclPkg.c: * generic/tclProc.c: * generic/tclStrToD.c: * generic/tclTimer.c: * generic/tclUtil.c: * unix/tclUnixFCmd.c: file: 6ab13eec09 check-in: [c06db721dd] user: dgp branch: trunk, size: 72482
2006-11-05
04:16
* generic/tclStringObj.c: Changed Tcl_ObjPrintf() response to an invalid format specifier string. No longer panics; now produces an error message as output. file: 9f863ed99c check-in: [a83e3b5958] user: dgp branch: trunk, size: 72466
2006-11-02
16:57
* generic/tclCmdAH.c: Further revisions to produce the routines * generic/tclInt.h: TclFormat() and TclAppendFormatToObj() that * generic/tclNamesp.c: accept (objc, objv) arguments rather than * generic/tclStringObj.c: any varargs stuff. file: f5d9e99147 check-in: [e66b307b7d] user: dgp branch: trunk, size: 72445
15:58
* generic/tclBasic.c: Further revised TclAppendPrintToObj() and * generic/tclCkalloc.c: TclObjPrintf() routines to panic when unable * generic/tclCmdAH.c: to complete their formatting operations, rather * generic/tclCmdIL.c: than report an error message. This means an * generic/tclCmdMZ.c: interp argument for error message recording is * generic/tclDictObj.c: no longer needed, further simplifying the * generic/tclExecute.c: interface for callers. * generic/tclIORChan.c: * generic/tclIOUtil.c: * generic/tclInt.h: * generic/tclMain.c: * generic/tclNamesp.c: * generic/tclParseExpr.c: * generic/tclPkg.c: * generic/tclProc.c: * generic/tclStringObj.c: * generic/tclTimer.c: * generic/tclUtil.c: * unix/tclUnixFCmd.c: file: bf9c229ca5 check-in: [6ed730551a] user: dgp branch: trunk, size: 74207
2006-10-31
20:19
* generic/tclBasic.c: Refactored and renamed the routines * generic/tclCkalloc.c: TclObjPrintf, TclFormatObj, and * generic/tclCmdAH.c: TclFormatToErrorInfo to a new set of * generic/tclCmdIL.c: routines TclAppendPrintfToObj, * generic/tclCmdMZ.c: TclAppendFormatToObj, TclObjPrintf, and * generic/tclDictObj.c: TclObjFormat, with the intent of making * generic/tclExecute.c: the latter list, plus TclAppendLimitedToObj * generic/tclIORChan.c: and TclAppendObjToErrorInfo, public via * generic/tclIOUtil.c: a revised TIP 270. * generic/tclInt.h: * generic/tclMain.c: * generic/tclNamesp.c: * generic/tclParseExpr.c: * generic/tclPkg.c: * generic/tclProc.c: * generic/tclStringObj.c: * generic/tclTimer.c: * generic/tclUtil.c: * unix/tclUnixFCmd.c: file: f1eb31b393 check-in: [65113c21ec] user: dgp branch: trunk, size: 74345
2006-10-23
21:01
merge updates from HEAD file: decd49e5e0 check-in: [1f911d4cbb] user: dgp branch: dgp-refactor, size: 73622
2006-09-24
21:15
* generic/tclParse.c (Tcl_ParseCommand): also return an error if start==NULL and numBytes<0. This is coverity's bug #20 * generic/tclStringObj.c (STRING_SIZE): fix allocation for 0-length strings. This is coverity's bugs #54-5 file: d888ef8b3e check-in: [cbbabd2395] user: msofer branch: core-8-4-branch, size: 54268
20:46
* generic/tclStringObj.c (STRING_SIZE): fix allocation for 0-length strings. This is coverity's bugs #54-5 file: 69dc63e90f check-in: [e31741c85d] user: msofer branch: trunk, size: 73620
2006-08-29
16:19
merge updates from HEAD file: 4aff4bf3b4 check-in: [e1feeec3e7] user: dgp branch: dgp-refactor, size: 73554
2006-08-28
16:05
* generic/tclStringObj.c: Revised ObjPrintfVA to take care * generic/tclParseExpr.c: to copy only whole characters when doing %s formatting. This relieves callers of TclObjPrintf() and TclFormatToErrorInfo() from needing to fix arguments to character boundaries. Tcl_ParseExpr() simplified by taking advantage. [Bug 1547786] file: 34b21ce597 check-in: [915a693050] user: dgp branch: trunk, size: 73549
14:13
* generic/tclStringObj.c: Corrected TclFormatObj's failure to count up the number of arguments required by examining the format string. [Bug 1547681] file: d938cfa275 check-in: [366bf07353] user: dgp branch: trunk, size: 73364
2006-08-10
12:15
Various minor object file size efficiency fixes. [Bug 1530474] file: a0113d2b64 check-in: [a09967381c] user: dkf branch: trunk, size: 73303
2006-07-20
06:17
* generic/regc_locale.c (cclass): * generic/tclExecute.c (TclExecuteByteCode): * generic/tclIOCmd.c (Tcl_ExecObjCmd): * generic/tclListObj.c (NewListIntRep): * generic/tclObj.c (Tcl_GetLongFromObj, Tcl_GetWideIntFromObj, FreeBignum, Tcl_SetBignumObj): * generic/tclParseExpr.c (Tcl_ParseExpr): * generic/tclStrToD.c (TclParseNumber): * generic/tclStringObj.c (TclAppendFormattedObjs): * unix/tclUnixPipe.c (TclpCreateProcess): fix signed-with-unsigned comparison and other warnings from gcc4 -Wextra. file: 4f90aa9b88 check-in: [25ff7e8b0a] user: das branch: trunk, size: 73261
2006-04-28
16:09
Merge updates from HEAD file: 828a2b16a1 check-in: [afab2ad07a] user: dgp branch: dgp-refactor, size: 73258
2006-03-23
14:24
comment adjustment file: 2cf4071242 check-in: [23f223b411] user: dgp branch: trunk, size: 73253
2006-01-25
18:38
merge updates from HEAD file: 26c28d6df4 check-in: [24df3318d7] user: dgp branch: dgp-refactor, size: 73217
2006-01-23
11:24
* generic/tclStringObj.c: fixed incorrect handling of internal rep in Tcl_GetRange [Bug 1410553]. Thanks to twylite and Peter Spjuth. file: a1923cf0e0 check-in: [b23e99e48d] user: msofer branch: core-8-4-branch, size: 54201
11:18
* generic/tclStringObj.c: fixed incorrect handling of internal rep in Tcl_GetRange [Bug 1410553]. Thanks to twylite and Peter Spjuth. file: 7df7225e60 check-in: [be0a450d63] user: msofer branch: trunk, size: 73215
2005-11-03
17:52
merge updates from HEAD file: e400ab9b72 check-in: [d827b9cf1e] user: dgp branch: dgp-refactor, size: 73197
2005-11-02
11:55
ANSIfy (though only partially - function decls only - for tclExecute.c) file: 7082a90f03 check-in: [127ec44748] user: dkf branch: trunk, size: 73193
2005-10-18
20:46
merge updates from HEAD file: 6f288258b9 check-in: [2e8613842e] user: dgp branch: dgp-refactor, size: 73726
2005-10-09
20:05
* generic/tclBasic.c: * generic/tclExecute.c: * generic/tclStrToD.c: * generic/tclStringObj.c: initialise variables to avoid compiler warnings ([Bug 1320818] among others). file: 54033f7814 check-in: [6c384e90de] user: msofer branch: trunk, size: 73725
2005-10-08
14:42
TIP#237 IMPLEMENTATION [kennykb-numerics-branch] Resynchronized with the HEAD; at this checkpoint [-rkennykb-numerics-branch-20051008], the HEAD and kennykb-numerics-branch contain identical code. file: 27acf6dd29 check-in: [83fdb360a9] user: dgp branch: trunk, size: 73630
2005-09-30
17:02
[kennykb-numerics-branch] * generic/tclStringObj.c: Bug fix: Missing cast to large enough integral size before << operations led to broken [format %llx] results. Thanks to Robert Henry for reporting the bug. file: f4f1b9630a check-in: [14a510d9c1] user: dgp branch: kennykb-numerics-branch, size: 73635
2005-09-16
19:29
[kennykb-numerics-branch] * generic/tclInt.h: Added TclBNInitBigNumFromWideInt() * generic/tclTomMathInterface.c: so that every caller isn't required to duplicate the sign logic to use the unsigned interface. * generic/tclBasic.c: Reduce the number of places where Tcl * generic/tclExecute.c: intrudes into the internal format details * generic/tclObj.c: of the mp_int struct. * generic/tclStrToD.c: * generic/tcLStringObj.c: * generic/tclTomMath.h: Added mp_cmp_d to routines from * unix/Makefile.in: libtommath used by Tcl. * win/Makefile.in: * win/makefile.vc: file: 07ff865208 check-in: [6e1addf33e] user: dgp branch: kennykb-numerics-branch, size: 73619
2005-09-15
20:58
merge updates from HEAD file: 27d7f1aaa6 check-in: [29cc0feeb2] user: dgp branch: kennykb-numerics-branch, size: 73610
20:29
merge updates from HEAD file: 2d63ff735d check-in: [f3caf581fe] user: dgp branch: dgp-refactor, size: 72003
16:58
* generic/tclStringObj.c (TclAppendFormattedObjs): Revision to eliminate one round of string copying. file: e36fed674f check-in: [1a7995155b] user: dgp branch: trunk, size: 71999
2005-09-14
21:32
* generic/tclStringObj.c: Bug fixes: ObjPrintfVA needed to support "*" fields and needed to interpret precision limits on %s conversions as a maximum number of bytes, not Tcl_UniChars, to take from the (char *) argument. * generic/tclBasic.c: Updated several callers to use * generic/tclCkalloc.c: TclFormatToErrorInfo() and/or * generic/tclCmdAH.c: TclObjPrintf(). * generic/tclCmdIL.c: * generic/tclCmdMZ.c: * generic/tclDictObj.c: * generic/tclExecute.c: * generic/tclIORChan.c: * generic/tclIOUtil.c: * generic/tclNamesp.c: * generic/tclProc.c: file: cb5614f931 check-in: [fbec962a12] user: dgp branch: trunk, size: 72048
17:13
* generic/tclStringObj.c: Bug fixes: ObjPrintfVA needed to support "*" fields and needed to interpret precision limits on %s conversions as a number of bytes, not Tcl_UniChars, to take from the (char *) argument. * generic/tclBasic.c: Updated several callers to use * generic/tclCmdMZ.c: TclFormatToErrorInfo(). * generic/tclIOUtil.c: * library/init.tcl: Keep [unknown] in sync with errorInfo formatting rules. file: 850e6d568a check-in: [73c6dc5786] user: dgp branch: trunk, size: 71891
03:46
* generic/tclBasic.c: First caller of TclFormatToErrorInfo. * generic/tclInt.h: Using stdarg.h conventions, add more * generic/tclStringObj.c: fixed arguments to TclFormatObj() and TclObjPrintf(). Added new routine TclFormatToErrorInfo(). file: 78d7f5540f check-in: [267895cd36] user: dgp branch: trunk, size: 71055
2005-09-13
21:23
* generic/tcl.h: Explicitly standardized on the use of stdarg.h * generic/tclBasic.c: conventions for functions with variable number * generic/tclInt.h: of arguments. Support for varargs.h has been * generic/tclPanic.c: implicitly gone for some time now. All * generic/tclResult.c: TCL_VARARGS* macros purged from Tcl sources, * generic/tclStringObj.c: leaving only some deprecated #define's * tools/genStubs.tcl: in tcl.h for the sake of older extensions. * generic/tclDecls.h: make genstubs * doc/AddErrInfo.3: Replaced all documented requirement for use * doc/Eval.3: of TCL_VARARGS_START() with requirement for * doc/Panic.3: use of va_start(). * doc/SetResult.3: * doc/StringObj.3: file: 9f61d2cc8c check-in: [bdf9458b14] user: dgp branch: trunk, size: 70739
2005-09-12
19:39
uninitialized vars are bad, mm'kay? file: 6bdc178af7 check-in: [948d18b8f7] user: dgp branch: kennykb-numerics-branch, size: 72513
19:12
* generic/tclCmdAH.c: Added support for the "ll" width * generic/tclStringObj.c: specifier to [format]. file: 8edeb63bc8 check-in: [a74d98295f] user: dgp branch: kennykb-numerics-branch, size: 72495
15:40
merge updates from HEAD file: cfa8d090a8 check-in: [156f19bcaf] user: dgp branch: dgp-refactor, size: 70906
14:47
[kennykb-numerics-branch] Merge updates from HEAD. file: 6ca001ee92 check-in: [0b3ca397c7] user: dgp branch: kennykb-numerics-branch, size: 70947
14:31
2005-09-12 Don Porter <[email protected]> * generic/tclStringObj.c (TclAppendFormattedObjs): Bug fix: make sure %ld formats force the collection of a wide value, when the value could be a different long. file: 82532711a0 check-in: [e034ea072e] user: dgp branch: trunk, size: 70902
2005-09-09
19:27
silence compiler warnings file: 6e0c0d0236 check-in: [d68f155509] user: dgp branch: kennykb-numerics-branch, size: 70888
19:24
silence compiler warnings file: 37e0e8e40c check-in: [9e8ea0b8c1] user: dgp branch: trunk, size: 70843
18:48
[kennykb-numerics-branch] Merge updates from HEAD. file: 61d50feac5 check-in: [343239eeff] user: dgp branch: kennykb-numerics-branch, size: 71017
17:47
* generic/tclInt.h: New internal routine TclObjPrintf() * generic/tclStringObj.c: is similar to TclFormatObj() but accepts arguments in non-Tcl_Obj format. file: 69d8141027 check-in: [60ba4924b2] user: dgp branch: trunk, size: 70972
17:19
added missing casts in tclStringObj.c file: 9688e32da1 check-in: [93d1ebfd11] user: kennykb branch: trunk, size: 68268
15:44
* generic/tclInt.h: New internal routines TclFormatObj() * generic/tclStringObj.c: and TclAppendFormattedObjs() to offer sprintf()-like means to append to Tcl_Obj. Work in progress toward [RFE 572392]. * generic/tclCmdAH.c: Compiler directive NEW_FORMAT when #define'd directs the [format] command to be implemented in terms of the new TclAppendFormattedObjs() routine. file: 7e3749adb7 check-in: [d61b665021] user: dgp branch: trunk, size: 68249
2005-08-16
04:26
* generic/tclExecute.c: More revisions to IllegalExprOperandType. Merged INST_BITNOT with INST_UMINUS and make it bignum-aware according to the rule: ~a = -a - 1. Disabled unused code and noted more TODOs. file: fc90a227bc check-in: [df1d00d8c1] user: dgp branch: kennykb-numerics-branch, size: 55432
2005-08-02
18:14
merge updates from HEAD file: b9c45e6054 check-in: [10feab7c07] user: dgp branch: kennykb-numerics-branch, size: 55391
2005-07-26
04:11
Merge updates from HEAD file: e392860fe3 check-in: [8351a734a6] user: dgp branch: dgp-refactor, size: 55391
2005-07-24
22:56
Getting more systematic about style file: 01e1fcf3d2 check-in: [83d72c558c] user: dkf branch: trunk, size: 55387
2005-06-13
01:45
*** MERGE WITH HEAD *** (tag msofer-wcodes-20050611) file: 361357b2ee check-in: [d666b09ed5] user: msofer branch: msofer-wcodes-branch, size: 55368
2005-05-10
18:33
Merged kennykb-numerics-branch back to the head; TIPs 132 and 232 file: e572d3a86b check-in: [1cc2336920] user: kennykb branch: trunk, size: 55365
2005-04-10
23:14
merged with HEAD and fixed 1180368 file: e4c3c8fae1 check-in: [7bc9ca0285] user: kennykb branch: kennykb-numerics-branch, size: 55369
2005-04-07
17:31
merge updates from HEAD file: b2574286fd check-in: [7d5704f18c] user: dgp branch: dgp-refactor, size: 55365
2005-04-01
18:48
opt in INST_*_SCALAR, sync with HEAD file: 7af2880745 check-in: [7bf6052c01] user: msofer branch: msofer-wcodes-branch, size: 55368
15:17
* generic/tclExecute.c: * generic/tclInt.h: * generic/tclObj.c: * generic/tclStringObj.c: defined new internal macros for creating and setting frequently used obj types (int,long, wideInt, double, string). Changed TEBC to use eg 'TclNewIntObj(objPtr, i)' to avoid the function call in 'objPtr = Tcl_NewIntObj(i)' file: 840441f4e9 check-in: [cbef3b55b1] user: msofer branch: trunk, size: 55364
2004-09-30
00:51
merge updates from HEAD file: 9d2cc26ea0 check-in: [6cd7cf6875] user: dgp branch: dgp-refactor, size: 55389
2004-09-29
22:17
Factorize out the code for freeing an object's internal rep. file: 5fde645697 check-in: [3890ad3c7c] user: dkf branch: trunk, size: 55385
2004-02-07
05:47
Merge updates from HEAD Note that this branch currently does not fully support the new {expand} syntax. Updates to TclEvalScriptTokens and TclCompileScriptTokens are still to come. file: 3d5ceee2b2 check-in: [beeeb45bbf] user: dgp branch: dgp-refactor, size: 55752
2003-12-24
04:18
All uses of 'panic' (the macro) changed to 'Tcl_Panic' (the function). The #define of panic in tcl.h clearly states it is deprecated in the comments. [Patch 865264] file: 6aa481b716 check-in: [524a53e3b3] user: davygrvy branch: trunk, size: 55753
2003-10-16
02:28
Merged updates from HEAD file: c9fbc1eb7b check-in: [44102608b1] user: dgp branch: dgp-refactor, size: 55728
2003-10-14
15:44
* generic/tclBasic.c (TclAppendObjToErrorInfo): New internal routine that appends a Tcl_Obj to the errorInfo, saving the caller the trouble of extracting the string rep. * generic/tclStringObj.c (TclAppendLimitedToObj): New internal routine that supports truncated appends with optional ellipsis marking. This single routine supports UTF-8-safe truncated appends needed in several places throughout the Tcl source code, mostly for error and stack messages. Clean fix for [Bug 760872]. * generic/tclInt.h: Declarations for new internal routines. * generic/tclCmdMZ.c: Updated callers to use the new routines. * generic/tclCompExpr.c: * generic/tclCompile.c: * generic/tclExecute.c: * generic/tclIOUtil.c: * generic/tclNamesp.c: * generic/tclObj.c: * generic/tclParseExpr.c: * generic/tclProc.c: * generic/tclStringObj.c: * mac/tclMacResource.c: * library/init.tcl: Updated ::errorInfo cleanup in [unknown] to reflect slight modifications to Tcl_LogCommandInfo(). Corrects failing init-4.* tests. file: d43b24ec27 check-in: [3522d44090] user: dgp branch: trunk, size: 55724
2003-02-19
16:43
* generic/tclStringObj.c: restored Tcl_SetObjLength() side-effect of always invalidating unicode rep (if the obj has a string rep). Added hasUnicode flag to String struct, allows decoupling of validity of unicode rep from buffer size allocated to it (improves memory allocation efficiency). [Bugs #686782, #671138, #635200] * macosx/Tcl.pbproj/project.pbxproj: * macosx/Makefile: reworked embedded build to no longer require relinking but to use install_name_tool instead to change the install_names for embedded frameworks. * macosx/Tcl.pbproj/project.pbxproj: preserve mod dates when running 'make install' to build framework (avoids bogus rebuilds of dependent frameworks because tcl headers appear changed). * tests/ioCmd.test (iocmd-1.8): fix failure when system encoding is utf-8: use iso8859-1 encoding explicitly. file: f4c761893f check-in: [80440365ac] user: das branch: trunk, size: 54177
14:33
* generic/tclCompile.c (TclCompileExprWords): remove unused variable "range" [Bug 664743] * generic/tclExecute.c (ExprSrandFunc): remove unused variable "result" [Bug 664743] * generic/tclStringObj.c (UpdateStringOfString): remove unused variable "length" [Bug 664751] * tests/execute.test (execute-7.30): fix for [Bug 664775] file: 19bc4a5f32 check-in: [efdc16ed56] user: msofer branch: trunk, size: 54892
2003-02-15
02:14
generic/tclStringObj.c (Tcl_GetCharLength): perf tweak file: 3db05e95fe check-in: [3dfa905412] user: hobbs branch: trunk, size: 54952
2003-02-11
18:35
* tests/stringObj.test: * generic/tclStringObj.c (Tcl_GetCharLength): correct ascii char opt of 2002-11-11 to not stop early on \x00. [Bug #684699] file: 7ae1715dc0 check-in: [78c313648a] user: hobbs branch: trunk, size: 54928
2003-01-24
11:59
stringObj unicode Tcl_SetObjLength fixes file: ad1e119bc5 check-in: [dce71c6888] user: vincentdarley branch: trunk, size: 54932
2003-01-17
14:19
execution trace, command trace and stringObj bug fixes file: c7f28bf8dd check-in: [bf6b0dfaf9] user: vincentdarley branch: trunk, size: 52871
2002-11-13
22:11
3 small fixes file: 2bbc4ebb0b check-in: [602e2df05f] user: vincentdarley branch: trunk, size: 52010
2002-11-12
02:26
* generic/tclStringObj.c (Tcl_GetCharLength): optimize for the ascii char case. (Tcl_GetUniChar): remove unnecessary use of Tcl_UtfToUniChar. (FillUnicodeRep): Use TclUtfToUniChar. file: da589abaef check-in: [0dc350572c] user: hobbs branch: trunk, size: 52002
2002-02-05
02:21
Merging with the current TOT. Very few conflicts, mostly in the generated files. file: 82c4c0de46 check-in: [f469a31a06] user: wolfsuit branch: macosx-8-4-branch, size: 51557
2002-01-26
01:10
* Sought out and eliminated instances of CONST-casting that are no longer needed after the TIP 27 effort. file: d542b1ebd6 check-in: [4bca1d26db] user: dgp branch: trunk, size: 51547
2002-01-08
17:14
* typos and formatting file: 6bd297238c check-in: [c8ce36dee8] user: dgp branch: trunk, size: 51549
2001-12-28
23:36
* generic/tclCkalloc.c (MemoryCmd, TclFinalizeMemorySubsystem): Added the [memory onexit] command, intended to replace [checkmem]. * doc/DumpActiveMemory.3: * doc/memory.n: Updated documentation for [memory] and related matters. [Bug 487677] * mac/tclMacBOAMain.c (Tcl_Main, CheckmemCmd): Removed all the machinery for the [checkmem] command that is completely duplicated by code in generic/tclCkalloc.c. * generic/tclBinary.c: * generic/tclListObj.c: * generic/tclObj.c: * generic/tclStringObj.c: Removed references to [checkmem] in comments, referencing [memory active] instead, since it is documented. file: 87718ded11 check-in: [cf5397db43] user: dgp branch: trunk, size: 51549
2001-12-03
18:23
NRE1 patch by Miguel Sofer. Several new controlling macros for information on the stack. Parser information on the stack can now be switched to allocation on the heap. file: f774f1322c check-in: [fc43051481] user: andreas_kupries branch: mod-8-3-4-branch, size: 44901
2001-09-27
13:49
Backing out unwise changes file: 771d260518 check-in: [4c0c25f627] user: dkf branch: dkf-64bit-support-branch, size: 51546
2001-09-26
14:23
Now builds on Solaris8/SPARC with both SunPro CC *and* GCC. file: 75f9995bde check-in: [4850711173] user: dkf branch: dkf-64bit-support-branch, size: 51701
2001-09-25
16:49
Woo hoo! Builds on one platform (Solaris8/SPARC with SunPro CC) file: eaceaddafa check-in: [dd2d80954c] user: dkf branch: dkf-64bit-support-branch, size: 51584
2001-05-19
16:11
Update to head -> S4-0-2 file: 25ec04ba1e check-in: [1b2b2b84cf] user: msofer branch: msofer-bcEngine, size: 51549
2001-05-15
21:30
* generic/tcl.decls: * generic/tclDecls.h: * generic/tclStubInit.c: * generic/tclStringObj.c (Tcl_GetUnicodeFromObj): new function to parallel Tcl_GetStringFromObj (fix of an API oversight). file: 94e6956b4a check-in: [fe1162706a] user: hobbs branch: trunk, size: 51544
2001-05-11
20:47
new byte-compiled commands, Tcl_GetUnicodeFromObj and string comparison changes file: 1684b2c731 check-in: [bbd0c14230] user: hobbs branch: dev-hobbs-branch, size: 51548
2001-04-04
16:07
(TIP#27) Changed a number of Tcl API's to accept "CONST char*" in place of simple "char*". (kennykb) [Patch #404026] file: d002d96f4e check-in: [bda1abaf85] user: kennykb branch: trunk, size: 49899
2000-09-14
18:42
* doc/Alloc.3: Added entries for Tcl_AttemptAlloc, Tcl_AttempRealloc. * doc/StringObj.3: Added entry for Tcl_AttemptSetObjLength. * generic/tclDecls.h: * generic/tclStubInit.c: Regen'ed stubs files from new tcl.decls. * generic/tcl.decls: Added stubs for the Tcl_Attempt* memory allocators and for Tcl_AttemptSetObjLength. * generic/tcl.h: Added #define's for attemptckalloc, attemptckrealloc, which map to the Tcl_Attempt* memory allocators. * generic/tclCkalloc.c: Added non-panic'ing versions of Tcl_Alloc, Tcl_Realloc, etc.; these are called Tcl_AttemptAlloc, Tcl_AttemptRealloc, etc. These are used by Tcl_AttemptSetObjLength and the string obj append functions. * generic/tclStringObj.c: Modified string growth algorithm to use doubling algorithm as long as possible, and only fall back when that fails. Added Tcl_AttemptSetObjLength, and modified AppendUnicodeToUnicodeRep, AppendUtfToUtfRep, and Tcl_AppendStringsToObjVA to support this. file: 65457b8516 check-in: [66347b65e4] user: ericm branch: trunk, size: 49810
2000-08-30
01:43
* generic/tclStringObj.c: Applied patch from Gerhard Hintermayer to provide a more conservative string growth algorithm for strings larger than one megabyte; this allows more efficient use of memory for very large strings. file: 63f1e17047 check-in: [ce0e80bb0f] user: ericm branch: trunk, size: 47064
2000-05-26
08:52
* generic/tclStringObj.c (Tcl_AppendUnicodeToObj): removed dead code. (AppendUnicodeToUnicodeRep) removed overallocation by extra sizeof(Tcl_UniChar) multiplier. file: 327cd0535a check-in: [0ea5ede54f] user: hobbs branch: trunk, size: 44464
2000-05-08
22:10
minor comment correction file: 2a1f4c4021 check-in: [7fc9fd97f3] user: hobbs branch: trunk, size: 44833
1999-11-19
23:32
* generic/tclCkalloc.c: fixed Tcl_DbCkfree to return a value on NULL input. [Bug: 3400] * generic/tclStringObj.c: fixed support for passing in negative length to Tcl_SetUnicodeObj, et al handling routines. [Bug: 3380] * tests/http.test: updated http package to 2.2 * doc/http.n: * library/http2.1/http.tcl: added register and unregister commands to http:: package (better support for tls/SSL), as well as -type argument to http::geturl. [RFE: 2617] * library/http2.1/http.tcl: Correctly fixed the -timeout problem mentioned in the 10-29 change. Also added error handling for failed writes on the socket during the protocol. * generic/tclBasic.c: removed extra decr of numLevels in Tcl_EvalObjEx that could cause seg fault. ([email protected]) * generic/tclEvent.c: fixed possible lack of MutexUnlock in Tcl_DeleteExitHandler [Bug: 3545] file: a4a3caea56 check-in: [662493e960] user: hobbs branch: core-8-2-1-branch, size: 44833
06:34
* generic/tclProc.c: corrected error reporting for default case at the global level for uplevel command. * generic/tclIOSock.c: changed int to size_t type for len in TclSockMinimumBuffers. * generic/tclCkalloc.c: fixed Tcl_DbCkfree to return a value on NULL input. [Bug: 3400] * generic/tclStringObj.c: fixed support for passing in negative length to Tcl_SetUnicodeObj, et al handling routines. [Bug: 3380] * doc/scan.n: * tests/scan.test: * generic/tclScan.c: finished support for inline scan by supporting XPG identifiers. * doc/http.n: * library/http2.1/http.tcl: added register and unregister commands to http:: package (better support for tls/SSL), as well as -type argument to http::geturl. [RFE: 2617] * generic/tclBasic.c: removed extra decr of numLevels in Tcl_EvalObjEx that could cause seg fault. ([email protected]) * generic/tclEvent.c: fixed possible lack of MutexUnlock in Tcl_DeleteExitHandler [Bug: 3545] file: 123a71e2ca check-in: [907f606957] user: hobbs branch: trunk, size: 44829
1999-10-30
11:05
* generic/tcl.h: updated to patchlevel 2 * generic/tclCmdMZ.c: fixed [string index] to return ByteArrayObj when indexing into one (test case string-5.16) [Bug: 2871] * tests/incr.test: * tests/set.test: * generic/tclCompCmds.c: fixed improper bytecode handling of 'eval {set array($unknownvar) 5}' (also for incr) * generic/tclThreadTest.c: fixed mem leaks in threads * generic/tclStringObj.c: fixed Tcl_AppendStringsToObjVA and * generic/tclResult.c: fixed Tcl_AppendResultVA to only iterates once over the va_list (avoiding a memcpy of it, which is not portable). * generic/tclCompile.c: removed savedChar trick that appeared to be causing a segv when the literal table was released * generic/tclEnv.c: fixed mem leak with putenv and DStrings and fixed possible ABR error in environ array file: 93bde6c83c check-in: [be0c860183] user: hobbs branch: core-8-2-1-branch, size: 44401
1999-10-29
03:03
* generic/tclStringObj.c: fixed Tcl_AppendResultVA so it only iterates once over the va_list (avoiding a memcpy of it, which is not portable). * generic/tclEnv.c: fixed possible ABR error in environ array * tests/scan.test: * generic/tclScan.c: added support for use of inline scan, XPG3 currently not included * tests/incr.test: * tests/set.test: * generic/tclCompCmds.c: fixed improper bytecode handling of 'eval {set array($unknownvar) 5}' (also for incr) * win/tclWinTest.c: added testvolumetype command, as atime is completely ignored for Windows FAT file systems * win/tclWinPort.h: added sys/utime.h to includes * unix/tclUnixPort.h: added utime.h to includes * doc/file.n: * tests/cmdAH.test: * generic/tclCmdAH.c: added time arguments to atime and mtime file command methods (support 'touch' functionality) file: cfe17a53fb check-in: [2c17586d2a] user: hobbs branch: trunk, size: 44397
1999-09-22
04:12
1999-09-21 Jeff Hobbs <[email protected]> * tests/env.test: * unix/Makefile.in: added support for AIX LIBPATH env var [Bug: 2793] removed second definition of INCLUDE_INSTALL_DIR (the one that referenced @includedir@) [Bug: 2805] * unix/dltest/Makefile.in: added -lc to LIBS [Bug: 2794] * tests/timer.test: changed after delay in timer test 6.29 from 1 to 10. [Bug: 2796] * tests/pkg.test: * generic/tclPkg.c: fixed package version check to disallow 1.2..3 [Bug: 2539] * unix/Makefile.in: fixed gendate target - this never worked since RCS was intro'd. * generic/tclGetDate.y: updated to reflect previous changes to tclDate.c (leap year calc) and added CEST and UCT time zone recognition. Fixed 4 missing UCHAR() casts. [Bug: 2717, 954, 1245, 1249] * generic/tclCkalloc.c: changed Tcl_DumpActiveMemory to really dump to stderr and close it [Bug: 725] and changed Tcl_Ckrealloc and Tcl_Ckfree to not bomb when NULL was passed in [Bug: 1719] and changed Tcl_Alloc, et al to not panic when a alloc request for zero came through and NULL was returned (valid on AIX, Tru64) [Bug: 2795, etc] * generic/tclIOCmd.c: fixed potential core dump in conjunction with stacked channels with result obj manipulation in Tcl_ReadChars [Bug: 2623] * tests/format.test: * generic/tclCmdAH.c: fixed translation of %0#s in format [Bug: 2605] * tests/set-old.test: * generic/tclVar.c: Added fix in TclArraySet to check when trying to set in a non-existent namespace. [Bug: 2613] * tests/linsert.test: * generic/tclCmdIL.c: fixed end-int interpretation of linsert to correctly calculate value for end, added test and docs [Bug: 2693] * doc/switch.n: added proper use of comments to example. * generic/tclCmdMZ.c: changed switch to complain when an error occurs that seems to be due to a misplaced comment. * generic/tclCmdMZ.c: fixed illegal ref for \[0-9] substitutions in regsub [Bug: 2723] * generic/tclCmdMZ.c: changed [string equal] to return an Int type object (was a Boolean) * generic/tclParseExpr.c: changed '"' to '\"' to make FreeBSD happy [Bug: 2625] * generic/tclProc.c: moved static buf to better location and changed static msg that would overflow in ProcessProcResultCode [Bug: 2483] and added Tcl_DStringFree to Tcl_ProcObjCmd. Also reworked size of static buffers. * tests/stringObj.test: added test 9.11 * generic/tclStringObj.c: changed Tcl_AppendObjToObj to properly handle the 1-byte dest and mixed src case where both had had Unicode string len checks made on them. [Bug: 2678] * unix/aclocal.m4: * unix/tcl.m4: added -bnoentry to the AIX-* case [Bug: 1909] added fix for FreeBSD-[1-2] recognition [Bug: 2070] and fix for IRIX SHLIB_LB_LIBS. [Bug: 2610] * generic/tclPosixStr.c: fixed typo [Bug: 2592] * win/README.binary: fixed version info and some typos [Bug: 2561] * generic/tclIO.c: changed Tcl_GetChannelNames* to use style guide headers (pleases HP cc) * tests/expr.test: * generic/tclCompile.c: add TCL_TOKEN_VARIABLE to the part types that cause differed compilation for exprs, to correct the expr double-evaluation problem for vars. Added test cases. Related to [Bug: 732] file: 333c3bb390 check-in: [ab656050a9] user: hobbs branch: core-8-2-1-branch, size: 43719
1999-09-02
16:26
1999-09-01 Jeff Hobbs <[email protected]> * generic/tclParseExpr.c: changed '"' to '\"' to make FreeBSD happy [Bug: 2625] * generic/tclProc.c: moved static buf to better location and changed static msg that would overflow in ProcessProcResultCode [Bug: 2483] and added Tcl_DStringFree to Tcl_ProcObjCmd. Also reworked size of static buffers. * tests/stringObj.test: added test 9.11 * generic/tclStringObj.c: changed Tcl_AppendObjToObj to properly handle the 1-byte dest and mixed src case where both had had Unicode string len checks made on them. [Bug: 2678] file: b214d59aef check-in: [dc02bb24c9] user: hobbs branch: trunk, size: 43715
1999-06-16
00:47
fixed bug that cause bad memory read on Windows file: 72df14ad7e check-in: [4a56d07c39] user: hershey branch: trunk, size: 43684
00:00
fixed bugs that kept windows from compiling. file: c6c6583f70 check-in: [0cb1b747f4] user: hershey branch: trunk, size: 43688
1999-06-15
22:06
beefed up the string object tests file: b5a1694335 check-in: [3f45ef233e] user: hershey branch: trunk, size: 43670
03:14
Improved the appendObj functions (uncomented the optimized code that was present in the Unicode obj). Updated the teststringobj command to look in the correct location for the amount of space allocated for the UTF string rep. Note: one stringObj test is still failing; it reflects a change in that may not be undesirable... file: 7908d57203 check-in: [6a28946962] user: hershey branch: trunk, size: 43552
01:16
Merged String and Unicode object types. Added new functions to the puplic API: Tcl_NewUnicodeObj, Tcl_SetUnicodeObj, Tcl_GetUnicode, Tcl_GetUniChar, Tcl_GetCharLength, Tcl_GetRange, Tcl_AppendUnicodeToObj. Note: some stringObj tests are still failing--the teststringobj command still needs to be updated. file: 5644dfe576 check-in: [23b23af342] user: hershey branch: trunk, size: 44357
1999-06-08
02:59
* tests/string.test: * generic/tclVar.c (Tcl_SetVar2Ex): * generic/tclStringObj.c (Tcl_AppendObjToObj): * generic/tclCmdMZ.c (Tcl_StringObjCmd): optimized the string index, string length, string range, and append command in cases where the object's internal rep is a bytearray. Objects with other internal reps are converted to have the new unicode internal rep. * unix/Makefile.in: * win/Makefile.in: * win/Makefile.vc: * tests/unicode.test: * generic/tclInt.h: * generic/tclObj.c: * generic/tclUnicodeObj.c: added a new object type to store the unicode representation of a string. * generic/tclTestObj.c: added the objtype option to the testobj command. This option returns the name of the type of internal rep an object has. file: 21a787827b check-in: [8fcb19ead3] user: hershey branch: trunk, size: 18921
1999-05-07
20:07
* generic/tclResult.c (Tcl_AppendResultVA): * generic/tclStringObj.c (Tcl_AppendStringsToObjVA): Fixed to copy arglist using memcpy instead of assignment so it works properly on OS/390. [Bug: 1997] file: 7265878d31 check-in: [dea0868b6c] user: stanton branch: trunk, size: 18968
1999-04-28
17:06
* mac/tclMacResource.c: * generic/tclListObj.c: * generic/tclObj.c: * generic/tclStringObj.c: Changed to avoid freeing the string representation before freeing the internal rep. This helps with debugging since the string rep will still be valid when the free proc is invoked. file: ea565f3bcb check-in: [101102ec64] user: stanton branch: trunk, size: 18816
1999-04-21
00:42
Deleted: Added comments for 4/19 and 4/20 check-in: [6c6fc5d7b2] user: redman branch: scriptics-tclpro-1-2-old, size: 0
1999-04-16
00:46
merged tcl 8.1 branch back into the main trunk file: 88f4231d89 check-in: [f3b32fb71c] user: stanton branch: trunk, size: 18824
1999-03-11
19:28
Deleted: Add documentation for Tcl_GetVersion() check-in: [940e47cf48] user: redman branch: scriptics-tclpro-1-2, size: 0
1999-03-10
06:49
Integrated stubs mechanism from 8.0 into 8.1 file: fd95aa1da6 check-in: [ddb86b8d93] user: stanton branch: core-8-1-branch-old, size: 18828
05:52
Merged stubs changes into mainline for 8.0 file: f26de96ab6 check-in: [1969693351] user: stanton branch: trunk, size: 18133
1999-03-09
02:37
* generic/tcl.h: Moved Tcl_Mutex, etc. macros above the inclusion of tclDecls.h to avoid macro conflicts. * generic/tclInt.h: * generic/regc_color.c: * generic/regcomp.c: * generic/tclCmdIL.c: * generic/tclCmdAH.c: * generic/tclIOCmd.c: * generic/tclParse.c: * generic/tclStringObj.c: * unix/tclUnixNotfy.c: Cleaned up various compiler warnings, eliminated UCHAR bugs. * unix/tclUnixNotfy.c: * unix/tclUnixThrd.c: * generic/tclThreadTest.c: * mac/tclMacThrd.c: Changed TclpCondition*() to Tcl_Condition*(). file: 92850edbce check-in: [a1684dfa8e] user: stanton branch: dev-8-1-stubs-branch, size: 18832
1999-03-08
20:14
First pass at integrating stubs mechanism from 8.0. file: c89ba4d7a0 check-in: [eeba5fd9e9] user: stanton branch: dev-8-1-stubs-branch, size: 18902
1999-03-03
00:38
* unix/Makefile.in: * unix/configure.in: * unix/ldAix: Enhanced AIX shared library support. * win/tclWinSock.c: Removed a bunch of extraneous PASCAL FAR attributes from internal functions. * win/tclWinReg.c: Changed registry package to use stubs mechanism so it no longer depends on the specific version of Tcl. * doc/AddErrInfo.3: * doc/Eval.3: * doc/PkgRequire.3: * doc/SetResult.3: * doc/StringObj.3: * generic/tcl.h: * generic/tclBasic.c: * generic/tclPanic.c: * generic/tclStringObj.c: * generic/tclUtil.c: * unix/mkLinks: Added va_list versions of all VARARGS functions so they can be invoked from the stub functions. * doc/package.n: * doc/PkgRequire.3: * generic/tclPkg.c: Added Tcl_PkgProvideEx, Tcl_RequireEx, Tcl_PresentEx, and Tcl_PkgPresent. Added "package present" command. * generic/tclFileName.c: * mac/tclMacFile.c: * mac/tclMacShLib.exp: * unix/tclUnixFile.c: * win/tclWinFile.c: Changed so TclGetUserHome is defined on all platforms, even though it is currently a noop on mac and windows, and renamed it to TclpGetUserHome. * generic/tclCkalloc.c: Added stub versions of memory checking functions when compiling without TCL_MEM_DEBUG. * doc/ByteArrObj.3: * generic/tcl.h: * generic/tclBinary.c: * generic/tclObj.c: Ported the 8.1 ByteArray type back to 8.0. * generic/tcl.decls: * generic/tcl.h: * generic/tclBasic.c: * generic/tclDecls.h: * generic/tclInt.decls: * generic/tclInt.h: * generic/tclIntDecls.h: * generic/tclIntPlatDecls.h: * generic/tclIntPlatStubs.c: * generic/tclIntStubs.c: * generic/tclPlatDecls.h: * generic/tclPlatStubs.c: * generic/tclStubInit.c: * generic/tclStubLib.c: * generic/tclStubs.c: * tools/genStubs.tcl: * unix/configure.in: * unix/Makefile.in: * unix/tclConfig.sh.in: * win/makefile.vc: * win/tclWinPort.h: Added Tcl stubs implementation. There are now two new macros USE_TCL_STUBS and USE_TCL_STUB_PROCS that enable use of stubs and disable stub macros respectively. All of the public and private function declarations from tcl.h and tclInt.h have moved into the *.decls files and the *Stubs.c and *Decls.h files are generated using the genStubs.tcl script. * generic/tclPanic.c: * generic/panic.c: renamed panic to Tcl_Panic, added macro for backwards compatibility, renamed file to tclPanic.c file: f9eda23b90 check-in: [f404370f5a] user: stanton branch: dev-stubs-branch, size: 18137
1998-09-24
23:58
merging changes from 8.0.3 into 8.1a2 file: 62acd4117b check-in: [1c3c1ab19f] user: stanton branch: core-8-1-branch-old, size: 18200
1998-09-21
23:39
Added contents of Tcl 8.1a2 file: a46aa959b7 check-in: [8c56dc8868] user: stanton branch: core-8-1-branch-old, size: 18175
1998-09-14
18:39
Replaced SCCS strings, fixed binary files file: 9d8e1138b2 check-in: [196f92fd17] user: stanton branch: trunk, size: 17497
1998-03-26
14:45
Added: Initial revision file: 720c6d9cc4 check-in: [cacdd0f329] user: rjohnson branch: trunk, size: 17476