History of generic/tclCompile.c of fb24db99f5e1b06a
Not logged in

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

History of file generic/tclCompile.c at check-in fb24db99f5e1b06a

2026-08-21
10:18
This is the first version of TIP 759 file: [2c9b263ab9] check-in: [ea18400465] user: Florent branch: tip-759_tcl90, size: 151589
2026-08-09
11:38
Error messages almost all generated via Tcl_PrintfResult family file: [636b2c0f0a] check-in: [4b4b6ea188] user: dkf branch: tip-757, size: 161117
2026-07-17
06:50
Use of TIP 757 in many places file: [9df67e493a] check-in: [2237c55faf] user: dkf branch: tip-757-use, size: 161119
2026-06-20
14:47
Minor change: Fix up some wayward tabs file: [10aa26c1cb] check-in: [c207a9178f] user: dkf branch: main, size: 161179
2026-05-28
12:13
Merge 9.0. Formatting file: [3e66e8c05a] check-in: [8e78be4610] user: jan.nijtmans branch: main, size: 161178
2026-05-09
10:43
merge trunk file: [4b6ae6bb92] check-in: [38a70f1e88] user: dkf branch: c11-anon-members, size: 161126
2026-04-11
16:10
merge trunk file: [5947fc641e] check-in: [7a18a6cd85] user: dkf branch: tip-735, size: 161176
2026-02-23
09:17
Rebase to trunk. More bool's file: [2d49ecb248] check-in: [e0b054564f] user: jan.nijtmans branch: tip-748, size: 160881
2026-02-05
15:17
More clearly mark file-internal functions as static. file: [3d7de2d867] check-in: [0f4b67d30f] user: dkf branch: main, size: 160814
2026-01-20
08:01
Even more Tcl_GetMonotonicTime() usage file: [52c71d20b6] check-in: [a9fb386bce] user: jan.nijtmans branch: main, size: 160807
2025-12-28
16:26
merge trunk file: [81d19a8343] check-in: [b4f8dfbad1] user: dkf branch: tip-735, size: 161374
16:19
Fix some indentation of comments file: [5c6bb68d1b] check-in: [870237637e] user: dkf branch: main, size: 161012
2025-12-23
14:06
merge trunk file: [06b2a2810d] check-in: [5c294aaabb] user: dkf branch: tip-735, size: 161374
2025-12-05
15:41
More 'bool' usage, mainly for the notifier file: [59658659bf] check-in: [b95ee14f1d] user: jan.nijtmans branch: main, size: 161012
2025-11-30
12:57
Better comments on the Tcl_ObjType instances file: [a90dd01650] check-in: [44e8e5ff97] user: dkf branch: main, size: 160962
2025-11-18
17:15
Work in progress: adding restrict to OUT arguments file: [adc367cbd0] check-in: [f9725400dd] user: dkf branch: c11-restrict, size: 161129
2025-11-17
09:18
merge trunk file: [b45eb57432] check-in: [8d7f54a91b] user: dkf branch: c11-automarker, size: 161081
2025-11-16
14:49
merge trunk file: [7d1e3e4f0f] check-in: [99532e9544] user: dkf branch: c11-anon-members, size: 161061
2025-11-15
21:56
merge trunk file: [f646b6f208] check-in: [459669e809] user: dkf branch: c-std-update, size: 160274
2025-11-11
15:38
Switch to using a new instruction to get the list index file: [d36c15f716] check-in: [63cbb16421] user: dkf branch: tip-735, size: 161473
2025-11-09
14:12
merge trunk file: [87e1369a8e] check-in: [c495403a16] user: dkf branch: c11-printf-result, size: 161055
2025-10-29
11:01
merge trunk file: [6a640f1fb7] check-in: [c6d51e06f8] user: dkf branch: extra-push-constants, size: 161348
2025-10-28
12:41
Yet more bools... file: [459a134f03] check-in: [0517c8f089] user: dkf branch: c11-bool, size: 161279
2025-10-27
14:35
More booleans file: [e76537ae5c] check-in: [c3432ca23e] user: dkf branch: c11-bool, size: 161278
2025-10-24
14:25
merge trunk file: [65cab605f4] check-in: [9c127a6a3a] user: dkf branch: c11-bool, size: 161269
11:53
Make the bool type available properly (and reduce include duplication). Be careful though; C23 deprecates that header file: [ba50b6e74c] check-in: [99ada2a57b] user: jan.nijtmans branch: main, size: 161111
11:51
Make the bool type available properly (and reduce include duplication). Be careful though; C23 deprecates that header. file: [8558fa1fa9] check-in: [bd8805313f] user: jan.nijtmans branch: core-9-0-branch, size: 150353
2025-10-10
23:15
Fix broken build, introduced [2d7ae66265|here]. More -Wconversion warning fixes file: [454f97bd5b] check-in: [b8506ab1c6] user: jan.nijtmans branch: main, size: 161131
14:11
Tranche 3 of adoption of bool file: [f2f80c819d] check-in: [6e7e183bb2] user: dkf branch: c11-bool, size: 161261
2025-10-07
14:02
Tranche 2 of adoption of bool file: [d7d271210d] check-in: [7c0638716d] user: dkf branch: c11-bool, size: 161210
2025-10-06
18:03
Turn initialisation flags into bools file: [ca3bdd5341] check-in: [85f3db92e2] user: dkf branch: c11-bool, size: 161111
15:52
Make the bool type available properly (and reduce include duplication). Be careful though; C23 deprecates that header. file: [783ea72d7e] check-in: [fa8b63f0c3] user: dkf branch: c11-bool, size: 161103
14:21
Simplify some of the code by using anonymous struct/union members file: [96f372fe4a] check-in: [87d19e421a] user: dkf branch: c11-anon-members, size: 161073
2025-10-05
19:26
Tranche 3 of adoption of TclPrintfResult file: [4513e5b9de] check-in: [3aa1ace500] user: dkf branch: c11-printf-result, size: 161067
2025-10-04
11:12
Tranche 1 of adoption of TclPrintfResult file: [4029f3cdf4] check-in: [4bd77df23d] user: dkf branch: c11-printf-result, size: 161106
2025-10-03
11:47
Use C11 macros to automatically add a NULL to the end of varargs sequences file: [bb308da4bf] check-in: [9c524e00d4] user: dkf branch: c11-automarker, size: 161093
2025-09-28
12:07
compilation of [namespace parent $ns] file: [d16b1ddcc3] check-in: [b6e9e590a5] user: dkf branch: compile-namespace-parent, size: 161349
2025-09-26
18:53
merge trunk file: [f0250b4876] check-in: [f0dcb3e615] user: dkf branch: c-std-update, size: 160286
2025-09-19
17:07
Fix [77059c] TclPushVarName(): pointer overflow file: [a6de88aeec] check-in: [67519af0aa] user: jan.nijtmans branch: main, size: 161123
2025-08-17
11:25
More bools and pieces file: [e8bf454cfe] check-in: [28a7d957c7] user: dkf branch: c-std-update, size: 160271
2025-08-12
09:06
More booleans. file: [5314307587] check-in: [8a9080996d] user: dkf branch: c-std-update, size: 160475
2025-08-06
09:25
Start to use the real bool type. file: [272a4898c4] check-in: [3dc71d011c] user: dkf branch: c-std-update, size: 160443
2025-08-01
11:48
More moving of variable declarations file: [6f6af2fdff] check-in: [1d20e4cf45] user: dkf branch: c-std-update, size: 160160
2025-07-19
12:31
More moving of variable declarations file: [7ea122c534] check-in: [c149575323] user: dkf branch: c-std-update, size: 161040
2025-07-14
14:26
TclSetErrorCode lets us avoid writing a lot of marker values file: [5739c49c99] check-in: [a29f1f8fab] user: dkf branch: c-std-update, size: 161019
2025-07-12
20:58
Define TclPrintfResult() for common pattern in error generation. file: [719ef11507] check-in: [70b6205548] user: dkf branch: c-std-update, size: 161052
2025-06-29
07:05
Amend places that were missing the changes from this branch file: [13f8c7cea6] check-in: [dfce14f098] user: dkf branch: extra-push-constants, size: 161345
06:54
merge trunk file: [e8f639ff0a] check-in: [80d47976a7] user: dkf branch: extra-push-constants, size: 161339
06:25
merge trunk file: [be17738cd9] check-in: [63d8f3a50f] user: dkf branch: compile-uplevel, size: 161108
2025-06-27
10:55
merge trunk file: [dbd8867520] check-in: [b041328148] user: dkf branch: arith-series-bytecode, size: 160878
2025-06-26
13:12
Draft of instruction done... but crashes. file: [1e5452952e] check-in: [4af3554349] user: dkf branch: compile-uplevel, size: 160683
07:53
Change bytecode flag names to match their related instruction file: [8762cf7588] check-in: [37bed52197] user: dkf branch: main, size: 160453
2025-06-21
10:31
merge trunk file: [494a506512] check-in: [a77445bb73] user: dkf branch: arith-series-bytecode, size: 160879
07:57
merge trunk file: [6a779e01f7] check-in: [0b779e7169] user: dkf branch: arith-series-bytecode, size: 159959
07:56
merge trunk file: [51561d0f39] check-in: [3b04d0d21e] user: dkf branch: expand-next, size: 160454
2025-06-19
14:08
Move general variable compiler to file where it makes sense file: [246ed80f3f] check-in: [2996bce5c9] user: dkf branch: main, size: 159534
2025-06-16
16:02
Add compilers for expanding [next] and [nextto] file: [7e95a93af1] check-in: [f461d3d1ea] user: dkf branch: expand-next, size: 153236
10:41
Start of {*}-aware [next] and [nextto] file: [fa01715531] check-in: [12b91ee081] user: dkf branch: expand-next, size: 153028
2025-06-13
13:32
merge trunk file: [d69f28a227] check-in: [881289af90] user: dkf branch: arith-series-bytecode, size: 152741
13:27
Implement [tailcall {*}...] in bytecode file: [d3634e652f] check-in: [043acea4e9] user: dkf branch: main, size: 152316
08:14
Add new macro, EnvIsProc, to cover cases where we should be stricter. [fa7995bdf2] file: [28c8804d26] check-in: [950d15a307] user: dkf branch: main, size: 152092
2025-06-11
11:00
All edge case tests now pass. But why does [lseq] behave like this??? file: [1ab510c399] check-in: [2aff866995] user: dkf branch: arith-series-bytecode, size: 152570
2025-06-10
13:53
Define an instruction to build an arithmetic series. Not yet issued file: [a5834d971f] check-in: [9a34988847] user: dkf branch: arith-series-bytecode, size: 152791
2025-06-09
08:18
Greatly improved [tailcall] handling, including more special cases. file: [0a357f1ebe] check-in: [704185a4e7] user: dkf branch: expanded-tailcall, size: 152369
2025-06-03
15:16
Make the [tailcall] compiler understand {*}; a common case file: [c6d6de01c9] check-in: [ee89589a58] user: dkf branch: expanded-tailcall, size: 152364
2025-06-02
14:18
Backport: Add [[unreachable]] and [[fallthrough]] from C23 (where available) file: [e0d518bc9e] check-in: [01eaeaebf1] user: jan.nijtmans branch: core-9-0-branch, size: 150373
2025-05-29
15:10
merge trunk file: [613086a86b] check-in: [e1ef92cb5d] user: dkf branch: tcl-unreachable, size: 152145
08:13
more unreachable/fallthrough marks file: [d7da6cb31a] check-in: [dc49f7f0a3] user: dkf branch: tcl-unreachable, size: 152146
2025-05-27
19:11
More marking of paths as unreachable file: [8e85d3f98c] check-in: [1482b8cabb] user: dkf branch: tcl-unreachable, size: 152145
2025-05-26
10:04
Use TclAttemptInitStringRep() in a few more places where it's possible. Fix indenting. file: [64e069c1ae] check-in: [20449a8a25] user: jan.nijtmans branch: main, size: 151908
2025-05-21
10:52
Use the right internal macro file: [b4f3dcd3a4] check-in: [4ad899d098] user: dkf branch: no-variable-width-instruction-issue, size: 151909
10:47
more bools file: [60e152c40e] check-in: [cc075d6e41] user: dkf branch: experiment-stdbool, size: 152079
09:13
rebase file: [308720bf20] check-in: [791e524b6c] user: dkf branch: experiment-stdbool, size: 152071
08:16
merge fix file: [60d118cb83] check-in: [63802397a4] user: dkf branch: extra-push-constants, size: 152191
2025-05-20
13:04
Missed two table entries that should have been deprecated too file: [1ce804b6da] check-in: [dce05176d3] user: dkf branch: remove-deprecated-opcodes-level1, size: 150320
12:37
Remove the deprecated opcodes more thoroughly file: [b9c77dcb19] check-in: [4751a3bc9d] user: dkf branch: remove-deprecated-opcodes-level2, size: 147178
11:35
Remove the deprecated opcodes file: [b0df732e08] check-in: [428a4026f3] user: dkf branch: remove-deprecated-opcodes-level1, size: 150335
07:55
A few more corrections to Tcl_BounceRefCount usage; definitely no leaks in test suite file: [4d303ec064] check-in: [300f51cb4e] user: dkf branch: no-variable-width-instruction-issue, size: 151960
2025-05-19
11:58
Promote IsEmptyToken to TclIsEmptyToken, and use in other relevant places file: [568ff070af] check-in: [4672337c5b] user: dkf branch: no-variable-width-instruction-issue, size: 151905
2025-05-18
16:28
Extra opcodes to push special values file: [928f55bc27] check-in: [c6e9590b87] user: dkf branch: extra-push-constants, size: 151212
2025-05-15
14:54
merge trunk file: [fddfa79a38] check-in: [2592ccf185] user: dkf branch: no-variable-width-instruction-issue, size: 150981
2025-05-09
12:09
Final set of changes file: [7d4d4824d0] check-in: [ac4754b22d] user: dkf branch: no-variable-width-instruction-issue, size: 150998
2025-05-05
20:14
Preparing to be able to disable the opcodes at some later date; we do not want to alter the opcode numbers when we do file: [180b0b2299] check-in: [7d0e5d4663] user: dkf branch: no-variable-width-instruction-issue, size: 151526
15:34
Merge tclCompUtils.h into tclCompile.h file: [7e9529f0bb] check-in: [6e3b4f4d86] user: dkf branch: no-variable-width-instruction-issue, size: 151448
14:43
Clean up a bit file: [05b9af5811] check-in: [f7cd80b77c] user: dkf branch: no-variable-width-instruction-issue, size: 152544
2025-05-02
15:54
Combine the new jumptable into this branch file: [41d852d728] check-in: [1240aef1a5] user: dkf branch: no-variable-width-instruction-issue, size: 152412
08:21
Add INST_IS_EMPTY, a surfacing of Tcl_IsEmpty() to bytecode file: [146b382d78] check-in: [09d3143e29] user: dkf branch: no-variable-width-instruction-issue, size: 152121
2025-04-26
15:52
Convert [subst] to use a numeric jump table instead of magic offset computations file: [8321be7be6] check-in: [5e433c4971] user: dkf branch: numeric-jumptable, size: 152240
13:36
merge no-variable-width-instruction-issue file: [a557e793d1] check-in: [67639380cb] user: dkf branch: numeric-jumptable, size: 152442
2025-04-25
14:37
Add INST_DICT_REMOVE to go with INST_DICT_PUT file: [212fd957e3] check-in: [fe10fad281] user: dkf branch: no-variable-width-instruction-issue, size: 151949
2025-04-23
08:50
Starting to develop a new jump table type for numeric keys file: [e3c61a3db7] check-in: [4980453105] user: dkf branch: numeric-jumptable, size: 152260
2025-04-22
13:49
An experiment with including stdbool.h and using that in internal APIs file: [667db66fc3] check-in: [990a0e861f] user: dkf branch: experiment-stdbool, size: 151867
2025-04-20
19:57
merge trunk file: [af7e3b7844] check-in: [dd8e821516] user: dkf branch: no-variable-width-instruction-issue, size: 151767
16:19
Rebase to trunk file: [3a970d2d4d] check-in: [ab31a15604] user: jan.nijtmans branch: attemptcreatehashentry, size: 150187
2025-04-19
16:43
Merge trunk. Another round of (harmless) -Wconversion fixes file: [44ca5321ae] check-in: [9f799357d8] user: jan.nijtmans branch: conversion-warning, size: 150204
2025-04-17
14:47
Another round of -Wconversion warning fixes, see [03cff7a777] file: [45204d695d] check-in: [d92999333a] user: jan.nijtmans branch: conversion-warning, size: 150215
2025-04-16
14:28
Rebase to TIP #717 file: [5592fc6ccd] check-in: [c381d23c19] user: jan.nijtmans branch: tip-626, size: 150203
13:26
Merge from trunk, resolve conflicts file: [b7b398d251] check-in: [eba3586416] user: dgp branch: dgp-refactor, size: 145299
12:37
Clean up some code sections affected by change to always using 4-byte jumps file: [11dfa5d2e3] check-in: [8d5947bd00] user: dkf branch: no-variable-width-instruction-issue, size: 151727
09:32
Merge trunk file: [f64e8db763] check-in: [c7480b3df9] user: jan.nijtmans branch: tip-626, size: 150220
2025-04-14
19:28
Give [dict merge] its own compiler using INST_DICT_PUT; enables better [try] and [dict create] compiling too file: [4fc9bb994a] check-in: [74b5ce17af] user: dkf branch: no-variable-width-instruction-issue, size: 151584
13:29
Add [info object creationid] to fully compiled operations; simplify some instruction descriptors file: [ef49fa483b] check-in: [b5cfceb353] user: dkf branch: no-variable-width-instruction-issue, size: 151381
09:11
Minor improvement to [try/finally] instruction sequence file: [c8a39c026c] check-in: [859997d95a] user: dkf branch: no-variable-width-instruction-issue, size: 151931
2025-04-13
21:37
Fully functional now, with a lot of examples for the improvement. Also, merge trunk file: [398af6f523] check-in: [fcbb032b58] user: jan.nijtmans branch: tkt-236d18f49b, size: 150125
20:58
merge trunk file: [043d6f18a1] check-in: [5a9047d5b9] user: dkf branch: no-variable-width-instruction-issue, size: 151933
2025-04-11
16:05
Merge 9.0 file: [c6bf85fa33] check-in: [99b2bd11e8] user: jan.nijtmans branch: main, size: 150142
15:46
Fix and speedup for TclLog2() - only used with TCL_COMPILE_STATS. Can now handle values > 2**31 file: [8aa20edc22] check-in: [677241c9b3] user: jan.nijtmans branch: core-9-0-branch, size: 150136
2025-04-09
20:01
Some corrections, found by Ashok. Thanks! file: [9041bf9319] check-in: [a6ce6309cd] user: jan.nijtmans branch: tip-626, size: 150229
14:18
Cleaning up a bunch of things in code generation. file: [2cdaf7a7bb] check-in: [db21f8e213] user: dkf branch: no-variable-width-instruction-issue, size: 152066
2025-03-28
15:25
Many changes to basic opcode issuing to eliminate most 1-byte args. Not yet fully working... file: [a4d8f8b997] check-in: [3ffa6a16aa] user: dkf branch: no-variable-width-instruction-issue, size: 149202
2025-03-27
11:17
Move more (int) typecasts to macro's file: [cab5fb983f] check-in: [7d93825103] user: jan.nijtmans branch: tip-626, size: 150234
2025-03-26
10:34
More int->Tcl_Size, making command processing 64-bit safe. file: [cc4e8dc052] check-in: [e5495dc820] user: jan.nijtmans branch: tip-626, size: 150438
2025-03-25
15:28
Make all tclComp* files 64-bit safe file: [f0d840d635] check-in: [6b6f8f878f] user: jan.nijtmans branch: tip-626, size: 150433
2025-03-24
16:18
int -> Tcl_Size in Tcl parser, so it can handle larger argument lists file: [2a031e65d4] check-in: [e6281f050e] user: jan.nijtmans branch: tip-626, size: 150280
2025-03-18
12:17
Switch over to using 4-byte args; mark some ops as deprecated (gcc/clang) file: [2aab51e425] check-in: [0486fdf101] user: dkf branch: no-variable-width-instruction-issue, size: 147356
2025-03-09
15:16
This is an experiment with eliminating the issuing of variable-width instructions Much complexity in the compiler and bytecode engine comes from handling both instructions with width-1 arguments and width-4 arguments. Just issuing the width-4 versions should simplify things quite a bit, at a cost of making the bytecode less dense. This experiment is to look at the consequences of that. file: [8f30c25382] check-in: [091900ea2a] user: dkf branch: no-variable-width-instruction-issue, size: 147102
2025-03-05
16:12
merge trunk file: [4c32d19c85] check-in: [00abfd892a] user: dgp branch: dgp-refactor, size: 145434
16:00
merge 9.0 file: [5ada51478c] check-in: [42428385a5] user: dgp branch: main, size: 150275
15:49
merge 8.7 file: [6b807d0a8f] check-in: [b3305e6d27] user: dgp branch: core-9-0-branch, size: 150269
15:30
The "numTokens" field of Tcl_Token is now type Tcl_Size. Propagate that change through the code. file: [96ef9e6853] check-in: [dac52020d7] user: dgp branch: core-8-branch, size: 149348
2025-03-04
19:54
merge & resolve file: [76b53521f4] check-in: [756e71bdbe] user: dgp branch: dgp-refactor, size: 145462
2025-03-03
09:33
Mostly whitespace fixes, but also a bug in Tcl_SetWideUIntObj file: [7750e27610] check-in: [16c040e40a] user: dkf branch: main, size: 150324
2025-03-02
15:48
Bunch of whitespace basic fixes. file: [5e78ef24df] check-in: [809d595b56] user: dkf branch: main, size: 150325
2025-03-01
16:46
Tidier way of handling single-pointer internal representations file: [c6e2758fc1] check-in: [d7db31fa83] user: dkf branch: inline-func, size: 150326
2025-02-27
18:39
Remove protections and open branch to work on [27b3ce2997]. file: [80c3cdbc14] check-in: [5285a51808] user: dgp branch: bug-27b3ce2997, size: 149453
2025-02-26
14:46
conflict free file: [e9ad568557] check-in: [d87991a725] user: dgp branch: dgp-refactor, size: 145454
2025-02-25
19:19
Merge 9.0.0 file: [cc5213dc21] check-in: [dbf9e21ca3] user: dgp branch: dgp-refactor, size: 145463
16:36
merge & resolve file: [38fcbb8d6c] check-in: [430970cc11] user: dgp branch: dgp-refactor, size: 145480
2025-02-24
21:30
get merging back on trunk up to 9.0b2 release file: [369aa1ca24] check-in: [ae4a8f86e6] user: dgp branch: dgp-refactor, size: 145803
21:07
merge & resolve file: [3be0c7dbaf] check-in: [7f5769effb] user: dgp branch: dgp-refactor, size: 145803
20:37
merge & resolve file: [73b1496d0d] check-in: [981242ea94] user: dgp branch: dgp-refactor, size: 145806
20:16
merge & resolve file: [f9890064a2] check-in: [966dd9dbe0] user: dgp branch: dgp-refactor, size: 145808
18:03
merge 9.0b1 file: [1efc5782f9] check-in: [6464229b3b] user: dgp branch: dgp-refactor, size: 145807
2025-02-11
17:10
More bits and pieces of functions file: [2aea7240bf] check-in: [f94ca90326] user: dkf branch: inline-func, size: 150251
2025-01-20
14:39
Fixes for many many whitespace infelicities file: [adac228bab] check-in: [ba7d219e65] user: dkf branch: whitespace-fix, size: 150324
2025-01-10
13:01
Add TclPrintfResult() for easy error message generation file: [ea1879bf1b] check-in: [665eb99f69] user: dkf branch: dkf-c11-features, size: 150248
2025-01-09
09:30
TclSetErrorCode is a macro to end-mark Tcl_SetErrorCode file: [0abde1450f] check-in: [0e84f9c9df] user: dkf branch: dkf-c11-features, size: 150289
2024-12-10
09:38
(cherry-pick )Fix ungrammatical doubling of words in comments file: [0bae6c890d] check-in: [49100cbdd2] user: jan.nijtmans branch: core-8-branch, size: 149335
2024-12-01
23:01
Experiment: simplify internal representation notation file: [2cfbf4e290] check-in: [bf30412994] user: jan.nijtmans branch: intrep-simpl, size: 150307
2024-11-13
09:30
GHA win-, linux- and mac-flows: speed-up build (j4), add info section into build. Remove some unneeded typecasts file: [e3e9bcc23b] check-in: [d8a7be3197] user: jan.nijtmans branch: main, size: 150319
2024-11-12
12:10
backout [b569739692]: [02977e0004] Reduce impact of recursion depth bug. Remove some unneeded typecasts. Some int -> Tcl_Size file: [5de9737bb4] check-in: [e1e7f93e74] user: jan.nijtmans branch: core-8-branch, size: 149352
2024-10-30
20:58
Merge [7209ffe4b0086e82]: (void *)NULL -> (char *)NULL, where appropriate. file: [86e74617b1] check-in: [252c8c207f] user: pooryorick branch: unchained, size: 150675
2024-10-25
10:54
(void *)NULL -> (char *)NULL, where appropriate file: [03d9b5ec99] check-in: [7209ffe4b0] user: jan.nijtmans branch: main, size: 150328
2024-10-07
19:52
Merge [1f19a433ece17043]: Fix ungrammatical doubling of words in comments. file: [ddbc65bd34] check-in: [9a9ba6ce11] user: pooryorick branch: unchained, size: 150675
2024-09-21
08:41
Fix ungrammatical doubling of words in comments file: [bbc56f0ec7] check-in: [1f19a433ec] user: dkf branch: main, size: 150328
2024-08-28
21:43
Merge [d13f391c04240008]: Eliminate TclPrintByteCodeObj()'s 'interp' argument, which is not used. Fix some indenting. file: [6e9a016a36] check-in: [64edb267ff] user: pooryorick branch: unchained, size: 150692
16:33
Merge [3a60363aa10ef993]: Clean up a lot of whitespace issues. file: [fe1f748dde] check-in: [627781a6db] user: pooryorick branch: unchained, size: 150925
2024-08-27
12:28
Merge [93e55377dc46846b]: "Use Tcl_NewBooleanObj for booleans; we should say what we mean", "Style cleanup, plus added comments on memory management", "Possibly a fix for [080f846fd58958ef]: When updating the interest of a channel, don't schedule the channel handler timer if a nonblocking channel doesn't yet have a buffer or if the buffer is empty or overflowing. Where asynchronous connection state is concerned, this should mean that the time won't be scheduled if the initial connection isn't established.", and "A few more small changes". file: [ac329daa0c] check-in: [176e45cc06] user: pooryorick branch: unchained, size: 151011
2024-08-26
09:54
Merge [9a59cf84995963c5]: More spacing/formatting tweaks. file: [dd283eef0a] check-in: [33360d10e4] user: pooryorick branch: unchained, size: 151011
09:45
Merge [1fbff64078d7fb02]: Fix indentation/brace usage style issues. file: [d4b8455ea9] check-in: [bd3faf4a67] user: pooryorick branch: unchained, size: 150976
2024-08-24
18:43
Merge [0b4db30283750894]: TIP 677: Constant Variables. file: [49307ba3f5] check-in: [f58a7d19ee] user: pooryorick branch: unchained, size: 150983
2024-08-22
21:12
Merge [506bbed9ce503ee0]: Remaining fixes for [26870862f0]: Wrong sentinel in Tcl_SetErrorCode usage. file: [0be8ccb200] check-in: [e700392910] user: pooryorick branch: unchained, size: 150686
20:52
Merge [f67f60d202716adf]: Fix [26870862f0]: Wrong sentinel in Tcl_SetErrorCode usage; Handle any C++-compiler as well. file: [e711e43742] check-in: [e18c9ab9f6] user: pooryorick branch: unchained, size: 150678
2024-08-18
02:26
Merge [336125e9e807df1c], A bunch of 64 bit fixes (int->Tcl_Size) and the like.Merge [336125e9e807df1c], A bunch of 64 bit fixes (int->Tcl_Size) and the like. file: [ea5eee668a] check-in: [cee62ab600] user: pooryorick branch: unchained, size: 150670
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: [fc3016567d] check-in: [d8a3450f12] user: pooryorick branch: unchained, size: 150538
2024-05-27
20:23
Eliminate TclPrintByteCodeObj()'s 'interp' argument, which is not used file: [7eadb862bf] check-in: [861da428c1] user: jan.nijtmans branch: core-8-6-branch, size: 148396
11:24
Eliminate TclPrintByteCodeObj()'s 'interp' argument, which is not used. Fix some indenting. file: [1475733ecd] check-in: [d13f391c04] user: jan.nijtmans branch: main, size: 150345
11:04
Eliminate TclPrintByteCodeObj()'s 'interp' argument, which is not used. file: [c2fdf52d74] check-in: [56c28e2db2] user: jan.nijtmans branch: core-8-branch, size: 149361
2024-05-20
16:38
merge trunk file: [3d98ca55da] check-in: [3fd88cd4cd] user: dkf branch: result-helpers, size: 150626
2024-05-14
16:06
Add helper macros TclSetResult and TclPrintfResult file: [07e36d65eb] check-in: [0b65fb9e0c] user: dkf branch: result-helpers, size: 150540
2024-05-13
15:41
Clean up a lot of small whitespace issues This is the dullest commit ever. Sorry. file: [38ea686414] check-in: [3a60363aa1] user: dkf branch: main, size: 150582
2024-04-23
16:06
Hmm, something is broken. Leaving this here but this commit is definitely wrong somehow file: [215a090e6c] check-in: [b356268e32] user: dkf branch: tidy-indentation, size: 150808
2024-04-18
15:06
Tidy up some indentation and other little code style issues file: [fb56844a3b] check-in: [cb11914788] user: dkf branch: tidy-indentation, size: 150670
2024-04-11
14:09
Merge 8.7 file: [d88474a968] check-in: [93e55377dc] user: jan.nijtmans branch: main, size: 150668
13:15
Merge 8.6. Use Tcl_NewBooleanObj for booleans; we should say what we mean file: [82ef9fb9c3] check-in: [c6d3960498] user: jan.nijtmans branch: core-8-branch, size: 149684
2024-03-20
14:27
Merge 9.0 file: [0f93e91371] check-in: [4271f3b52a] user: jan.nijtmans branch: tip-626, size: 150668
2024-03-19
17:09
more spacing/formatting tweaks file: [2e93e0e2ce] check-in: [9a59cf8499] user: dkf branch: main, size: 150673
14:56
Fix indentation/brace usage style issues file: [eedb634c85] check-in: [1fbff64078] user: dkf branch: main, size: 150638
2024-01-30
17:07
Tweaking indentation of code; really unimportant... file: [74728a8b95] check-in: [bb72806960] user: dkf branch: dkf-indent-tweak, size: 150663
2023-12-05
15:48
Bytecode implementation file: [ca556c391c] check-in: [f86dc8ec6b] user: dkf branch: tip-677, size: 150645
2023-11-03
19:56
merge trunk file: [65ebe5dd34] check-in: [4627159c40] user: dgp branch: dgp-refactor, size: 145510
2023-10-22
19:49
Remaining fixes for [26870862f0]: Wrong sentinel in Tcl_SetErrorCode usage file: [b3322246e0] check-in: [506bbed9ce] user: jan.nijtmans branch: main, size: 150348
2023-10-19
18:48
Merge 8.7 file: [146ac3df69] check-in: [f67f60d202] user: jan.nijtmans branch: main, size: 150340
2023-10-17
06:02
Handle sentinels for any C++ compiler file: [03833f444e] check-in: [6876d1f99a] user: jan.nijtmans branch: bug-26870862f0, size: 149684
2023-10-10
19:27
More int -> Tcl_Size (backported from 9.0) file: [67330a6ba5] check-in: [e94d0fede9] user: jan.nijtmans branch: core-8-branch, size: 149676
2023-09-13
15:19
More type-casts (c++-compatibility) file: [319400cc54] check-in: [42c4e352ff] user: jan.nijtmans branch: core-8-6-branch, size: 148620
2023-07-31
16:30
Merge next checkin from trunk. Resolve conflicts. file: [590c88c86c] check-in: [1176dde31b] user: dgp branch: dgp-refactor, size: 145502
2023-07-09
14:47
Permit large scripts > INT_MAX. Not complete because compiler source line tracking still limited. file: [5482cd4be6] check-in: [f2432558f7] user: apnadkarni branch: apn-fix-scripts64, size: 150332
2023-05-09
13:38
merge trunk file: [9d66b7a8ab] check-in: [d183a31327] user: dgp branch: dgp-refactor, size: 145416
2023-05-05
14:57
A few corrections in comments. file: [8fc224cec9] check-in: [909ed82355] user: pooryorick branch: main, size: 150200
2023-05-02
13:39
merge trunk file: [9cd99a8b22] check-in: [ea70c42344] user: dgp branch: dgp-refactor, size: 145413
2023-04-29
16:16
Add tests. Panic on bytecode length limit file: [8857478cf5] check-in: [42ac2ae6d4] user: apnadkarni branch: bug-27b3ce2997, size: 150197
02:11
Limit scripts to INT_MAX-1 bytes file: [a2375eb8ed] check-in: [d527c3064e] user: apnadkarni branch: bug-27b3ce2997, size: 149812
2023-04-24
18:47
Merge TIP 660 commit. Resolve enough conflicts to compile. file: [1dcb75869e] check-in: [16ce472043] user: dgp branch: dgp-refactor, size: 145027
15:51
Adapt signature of TclCompileScript() to fit better after TIP 660. file: [41147ec138] check-in: [815e08b6d1] user: dgp branch: main, size: 149288
2023-04-21
17:11
Merge monster spell-check patch, resolving conflicts. file: [a9793bf25f] check-in: [b882118946] user: dgp branch: dgp-refactor, size: 144991
06:16
Fix warnings generated on disable8api builds file: [72798dc440] check-in: [e80d1c5113] user: apnadkarni branch: apn-disabletcl8api-warnings, size: 149290
2023-04-14
15:01
Merge trunk file: [9fc279bc8e] check-in: [e36ab1e9ba] user: apnadkarni branch: tip-660, size: 149284
2023-04-12
14:25
Correct spelling errors in comments and documentation, but also a non-comment corrections in history.tcl and tcltest.test. file: [d570a198ae] check-in: [d65da06a77] user: pooryorick branch: main, size: 149295
13:30
Correct spelling errors in comments and documentation, but also a non-comment corrections in history.tcl and tcltest.test. file: [c12d8ded08] check-in: [aca8de0aeb] user: pooryorick branch: core-8-branch, size: 149666
09:35
Correct spelling errors in comments and documentation, but also non-comment corrections in history.tcl and tcltest.test. file: [bb56499f36] check-in: [ee3df4e647] user: pooryorick branch: core-8-6-branch, size: 148201
2023-04-06
09:52
Eliminate TCL_SIZE_CMP() for now, not a good idea for Tcl 9.0 file: [604f3143e6] check-in: [d00062f436] user: jan.nijtmans branch: optional-signed-size, size: 149436
2023-04-04
20:50
more progress file: [7cb61f1f8b] check-in: [4e36871191] user: jan.nijtmans branch: optional-signed-size, size: 149512
2023-04-03
15:14
merge trunk through 3/5 file: [7ab32fb4de] check-in: [67c14bbabf] user: dgp branch: dgp-refactor, size: 144994
2023-04-02
21:49
Merge 9.0. Add some more utility macro's file: [2c1a1a2df2] check-in: [4bedba476d] user: jan.nijtmans branch: optional-signed-size, size: 149280
2023-03-30
18:01
TIP 660. No compiler warnings. Tests suite pass on Win and Ubuntu file: [786131b467] check-in: [eb81a25271] user: apnadkarni branch: tip-660, size: 149287
2023-03-05
00:26
More -1 -> TCL_INDEX_NONE file: [2be7d2ed77] check-in: [7a2fc29ce0] user: jan.nijtmans branch: main, size: 149298
2022-11-24
01:18
Support multiple indicies in abstract list lindex operation. Catch up with trunk. file: [d17dcaaaf6] check-in: [cf418732cb] user: griffin branch: tip-636-tcl9-644, size: 149335
2022-11-20
22:58
merge trunk file: [b85df1e14e] check-in: [4544b3f396] user: dgp branch: dgp-refactor, size: 144982
2022-11-09
16:29
Rebase to latest trunk file: [687c888c3a] check-in: [9c26ed6942] user: jan.nijtmans branch: tip-644-alt, size: 149260
14:00
merge trunk file: [b85047237b] check-in: [0a4ac238cf] user: dgp branch: dgp-refactor, size: 144943
13:45
Merge trunk. Also update Tcl_ObjType.version to match TIP 644 file: [709060cb64] check-in: [67db36998a] user: apnadkarni branch: tip-644, size: 149286
2022-11-07
21:16
Merge 8.7 file: [a48daf0606] check-in: [a01d7d452d] user: jan.nijtmans branch: main, size: 149247
20:46
Deprecate TclpHasSockets(): Every system nowadays has sockets file: [f5f097e280] check-in: [02f41946ab] user: jan.nijtmans branch: core-8-branch, size: 149669
14:33
merge trunk file: [cf8b044d87] check-in: [240d688d10] user: dgp branch: dgp-refactor, size: 144944
2022-11-06
05:20
Sync with trunk file: [9a39643a2f] check-in: [6a10d9194c] user: griffin branch: tip-636-tcl9-644, size: 149336
2022-11-05
11:49
Merge 8.7. lreplace4 bcc instruction and FLT_MAX fix file: [777fe3fdbb] check-in: [4014e2a164] user: apnadkarni branch: main, size: 149248
2022-11-04
22:47
Implement abstractlist with tip-644 file: [b9c9931168] check-in: [3aa22fe8ab] user: griffin branch: tip-636-tcl9-644, size: 149010
2022-11-03
17:04
Rewrite lreplace4 implementation not to need extra immediate operands. file: [2ae34c5567] check-in: [e636911126] user: apnadkarni branch: apn-bcc, size: 149670
2022-11-01
08:26
Don't bother to provide a TCL_OBJTYPE_SIZE macro file: [f86e6b596d] check-in: [04e8efd4ac] user: jan.nijtmans branch: tip-644-alt, size: 148935
2022-10-30
10:43
New bytecode implementation for lreplace file: [0b9afae22e] check-in: [c1b8cdcb2e] user: apnadkarni branch: apn-bcc, size: 149751
04:27
New bytecode for linsert file: [03c9aadcd4] check-in: [71f5587826] user: apnadkarni branch: apn-bcc, size: 149751
03:04
Implement lreplace4 BCC instruction file: [b9fee7eed5] check-in: [a4e5d2aee0] user: apnadkarni branch: apn-bcc, size: 149510
2022-10-24
11:47
Another possible approach file: [9741cfd855] check-in: [dc7f554cb0] user: jan.nijtmans branch: tip-644-alt, size: 148965
2022-10-20
15:31
Fix [d554e5554e]: fix typo “defintion” file: [06eacfd694] check-in: [146e6d1e75] user: jan.nijtmans branch: core-8-6-branch, size: 148201
2022-10-11
15:07
TIP 644 - Make Tcl_ObjType extensible file: [6c2973b69e] check-in: [6d1d103cf6] user: apnadkarni branch: tip-644, size: 148961
2022-09-07
14:40
merge trunk file: [3f4005c1b9] check-in: [18ef41c5e4] user: dgp branch: dgp-refactor, size: 144618
2022-08-25
20:46
Merge 8.7 file: [39456ab54e] check-in: [8a13b9df4a] user: jan.nijtmans branch: main, size: 148922
20:36
[37108037b9]: Code cleanups to support CHERI. Apply patch 0001 and 0003 (and a few more potential alignment problems, inspired by those patches) file: [551c7988c8] check-in: [ffa62b189d] user: jan.nijtmans branch: core-8-branch, size: 149344
2022-07-26
13:32
Fix msvc OPTS=symbols build. Eliminate (int) typecast file: [998a164e1c] check-in: [5020aeebd1] user: jan.nijtmans branch: dgp-refactor, size: 144323
2022-06-15
13:53
merge trunk file: [314837ec44] check-in: [31348182ac] user: dgp branch: dgp-refactor, size: 144331
2022-06-13
20:50
Merge 8.7. Eliminate warning, seen with clang file: [5a50701353] check-in: [f2bd6bed00] user: jan.nijtmans branch: main, size: 148627
11:46
Merge 8.7 file: [7401426b76] check-in: [77b3699a84] user: jan.nijtmans branch: main, size: 148634
11:33
Some -1 -> TCL_INDEX_NONE. Update fossil's ignore-glob file: [a5d700c94f] check-in: [08ecf6cdde] user: jan.nijtmans branch: core-8-branch, size: 149049
07:32
Use TCL_8_COMPAT to change Tcl_Size to ptrdiff_t file: [2b42bc266d] check-in: [5e6303cdd8] user: jan.nijtmans branch: tcl8-compat, size: 148641
2022-06-10
13:45
Provide help with solving merge conflicts ;-) file: [f0fb5b030f] check-in: [71597277a7] user: jan.nijtmans branch: dgp-refactor, size: 144338
2022-06-09
07:03
More (internal) int -> size_t, allowing values > 2^31 file: [30ddae2e19] check-in: [5d828b481d] user: jan.nijtmans branch: main, size: 148629
2022-06-08
10:35
Undo unintended (internal) variable rename file: [62f522992d] check-in: [f2ba4eead8] user: jan.nijtmans branch: main, size: 148628
10:23
TIP #616: Tcl lists > 2^31 elements file: [92bc768546] check-in: [574358cda4] user: jan.nijtmans branch: main, size: 148629
2022-03-31
21:25
more tweaks file: [de65a07c04] check-in: [f89280f1fb] user: jan.nijtmans branch: tip-616, size: 148639
20:10
More progress file: [410de368a7] check-in: [24e731e5e2] user: jan.nijtmans branch: tip-616, size: 148619
16:33
more progress file: [bb9e924691] check-in: [e87add1ce3] user: jan.nijtmans branch: tip-616, size: 148616
16:21
More progress file: [893df2632d] check-in: [a8d3491010] user: jan.nijtmans branch: tip-616, size: 148615
15:59
more progress file: [bebf612ac7] check-in: [c4d11f04a1] user: jan.nijtmans branch: tip-616, size: 148596
2022-03-30
15:44
More progress file: [0fe20ea82e] check-in: [7939de52fe] user: jan.nijtmans branch: tip-616, size: 148583
14:46
More progress file: [db52244109] check-in: [308da2dbf7] user: jan.nijtmans branch: tip-616, size: 148566
2022-03-29
13:17
More progress file: [a400c7f658] check-in: [205f96536f] user: jan.nijtmans branch: tip-616, size: 148566
10:37
More progress file: [ccf1430aca] check-in: [c561bb0174] user: jan.nijtmans branch: tip-616, size: 148411
2022-03-28
10:07
Fix some compiler warnings file: [fdd4358446] check-in: [9a1423505b] user: jan.nijtmans branch: tip-616, size: 148403
2022-03-23
20:10
Make varIndexes a size_t[] file: [e7c7745e2b] check-in: [05b146d3be] user: jan.nijtmans branch: tip-616, size: 148400
17:22
More progress file: [dc7356c61d] check-in: [a917223f94] user: jan.nijtmans branch: tip-616, size: 148335
2022-03-18
23:09
Further , file: [d8eb023091] check-in: [995c65ad87] user: jan.nijtmans branch: tip-616, size: 148320
22:11
More progress file: [aa7dedf538] check-in: [5e82dc9591] user: jan.nijtmans branch: tip-616, size: 148300
2022-03-17
15:05
More progress file: [0c19bab4c8] check-in: [4c5be4f585] user: jan.nijtmans branch: tip-616, size: 148299
2022-03-10
16:08
Merge tip-616 file: [ca80190a23] check-in: [113abaae22] user: jan.nijtmans branch: tip-616-experiment, size: 148431
2022-03-09
17:53
More progress file: [f994e0f9b5] check-in: [0480ed9723] user: jan.nijtmans branch: tip-616, size: 148234
2022-03-08
11:38
More size_t file: [9421350e39] check-in: [db643479d3] user: jan.nijtmans branch: tip-616, size: 148161
2022-03-07
11:25
Another round of int -> size_t for internal functions file: [a6150d74c1] check-in: [c3e9fab92a] user: jan.nijtmans branch: tip-616, size: 148180
2022-03-06
15:28
More progress file: [27365f68d8] check-in: [0ca30e14a0] user: jan.nijtmans branch: tip-616, size: 148062
2022-03-02
20:27
More size_t in tclCompile.h file: [e7c2956c11] check-in: [a2b7a28c1f] user: jan.nijtmans branch: tip-616-experiment, size: 148335
17:34
More progress file: [455c9c3878] check-in: [1411ccc2c8] user: jan.nijtmans branch: tip-616-experiment, size: 148181
17:24
More progress file: [df9f210936] check-in: [1cd1806ac7] user: jan.nijtmans branch: tip-616-experiment, size: 148166
17:05
More progress file: [2784261eb2] check-in: [d014640dcc] user: jan.nijtmans branch: tip-616-experiment, size: 148178
16:13
More progress file: [a821bd726b] check-in: [52a8aa860a] user: jan.nijtmans branch: tip-616-experiment, size: 148109
2022-03-01
17:37
Use size_t in TclFindCompiledLocal et al file: [249507c7e3] check-in: [75e02db60f] user: jan.nijtmans branch: tip-616-experiment, size: 148085
15:32
Even more progress file: [00df74bfed] check-in: [b5574327d9] user: jan.nijtmans branch: tip-616-experiment, size: 148025
2022-02-07
14:33
merge trunk file: [31725925df] check-in: [4ac2207990] user: dgp branch: dgp-refactor, size: 143805
2022-01-17
17:02
Merge 8.6 file: [f92a0221d0] check-in: [ea38112364] user: jan.nijtmans branch: core-8-branch, size: 148880
16:44
Tcl_NewObj() -> TclNewObj() file: [f296475f9b] check-in: [df30948549] user: jan.nijtmans branch: core-8-6-branch, size: 148200
2022-01-14
10:29
Merge 8.7. Fix (windows MSVC OPTS=symbols) build error file: [a44243a781] check-in: [a80b314df5] user: jan.nijtmans branch: main, size: 148017
10:10
Merge 8.6 file: [ea0954b1e3] check-in: [9b26217141] user: jan.nijtmans branch: core-8-branch, size: 148857
2022-01-13
12:22
Fix [816913a65e]: GrowStringBuffer(): signed integer overflow. And a few similar situations in other place file: [dcc53abb96] check-in: [a03e9793d4] user: jan.nijtmans branch: bug-816913a65e, size: 148196
2021-11-06
14:58
Merge trunk; resolve conflicts. file: [f7917a03a4] check-in: [164211f6cf] user: dgp branch: dgp-refactor, size: 143804
14:50
Merge [2cc4478435]. Resolve conflict. file: [827c51f9f0] check-in: [5527b33bd8] user: dgp branch: dgp-refactor, size: 143769
2021-10-19
14:42
IntRep -> InternalRep. Internal changes only. file: [43d7b178e0] check-in: [40343f5fb6] user: jan.nijtmans branch: core-8-6-branch, size: 148195
2021-10-11
13:57
Merge 8.7 file: [7f9d3401ff] check-in: [30d5187f4f] user: jan.nijtmans branch: core-8-branch, size: 148856
2021-10-08
08:40
Merge 8.7 file: [0ca05e64b9] check-in: [916029c89c] user: jan.nijtmans branch: main, size: 148016
2021-10-06
19:33
Change "IntRep" to "InternalRep", as discussed in the Tcl Core mailing list file: [c5306e6b40] check-in: [0509fa5750] user: jan.nijtmans branch: internalrep, size: 148858
14:08
Merge 8.7 file: [e505678cbe] check-in: [2cc4478435] user: jan.nijtmans branch: main, size: 147981
2021-10-04
21:09
Rewrite comments for clarity and conciseness. file: [606d9fad55] check-in: [7bee7de7b3] user: pooryorick branch: core-8-branch, size: 148823
2021-01-15
22:23
Merge TIP 481 (resolve conflicts) file: [9489a5adea] check-in: [8cdef98ab8] user: dgp branch: dgp-refactor, size: 144799
2021-01-11
10:03
Merge 8.7, resolve conflicts file: [8a594c9455] check-in: [015ff38790] user: jan.nijtmans branch: main, size: 149002
2020-12-10
19:35
Merge trunk; silence shadow warning file: [d815ecf7aa] check-in: [fd76c5f3fc] user: dgp branch: dgp-refactor, size: 144786
2020-12-08
15:42
Merge 8.7 file: [11298d44b6] check-in: [71493b571b] user: jan.nijtmans branch: main, size: 148997
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: [8d8fb8c936] check-in: [4254aa305b] user: jan.nijtmans branch: core-8-branch, size: 149832
2020-10-30
14:32
Merge 9.0 file: [2d06966d11] check-in: [8a5d54fdfd] user: jan.nijtmans branch: dgp-refactor, size: 144791
2020-09-20
16:34
Merge [92d5c95fd8]. resolve conflicts file: [3b1222c779] check-in: [84880ae75f] user: dgp branch: dgp-refactor, size: 144796
16:18
Merge [ef1896eb35]. file: [a764550960] check-in: [51d8f95aa8] user: dgp branch: dgp-refactor, size: 144792
2020-09-19
20:32
Merge [e4b8c5a2ab]. resolve conflict. file: [66549d1a50] check-in: [fdb0f63828] user: dgp branch: dgp-refactor, size: 144763
2020-09-18
02:52
Merge trunk through May 31. file: [9e1577317c] check-in: [0f172a8f5a] user: dgp branch: dgp-refactor, size: 144763
2020-09-17
14:12
Merge 8.7 file: [de155af9c8] check-in: [92d5c95fd8] user: jan.nijtmans branch: trunk, size: 149002
13:48
Eliminate many usages of Tcl_NewObj (-> TclNewObj) and Tcl_NewIntObj (-> TclNewIntObj or Tcl_NewWideIntObj) file: [59d9b57408] check-in: [ef22eb8ac3] user: jan.nijtmans branch: core-8-branch, size: 149837
2020-09-14
12:31
Eliminate many "register" keywords (which do nothing with modern compilers) Eliminate many unnecessary type-casts to (unsigned) file: [472b62e337] check-in: [62884c2f30] user: jan.nijtmans branch: core-8-6-branch, size: 148185
2020-09-04
07:59
Merge 8.7 file: [edc7628574] check-in: [1c65379224] user: jan.nijtmans branch: trunk, size: 148998
2020-09-01
22:36
Fix for [c1a376375e0e6488], imported namespace ensemble command name distorted during deletion trace on the import file: [16ff4ca1f4] check-in: [ebe3442625] user: pooryorick branch: bug-c1a376375e0e6488, size: 149833
10:51
Merge 8.7 file: [b31312b384] check-in: [e4b8c5a2ab] user: jan.nijtmans branch: trunk, size: 148969
2020-08-31
12:42
Merge 8.6. More documentation updates file: [d9199b26d3] check-in: [a7dc67222e] user: jan.nijtmans branch: core-8-branch, size: 149804
09:23
Implement TIP #581: Master/Slave file: [b2d5253026] check-in: [7f02e98a69] user: jan.nijtmans branch: core-8-6-branch, size: 148193
2020-08-11
05:39
Eliminate many unnecessary type-casts, mostly (size_t) when value is already size_t or int file: [5f086819cc] check-in: [013b828787] user: jan.nijtmans branch: core-8-6-branch, size: 148193
2020-07-13
12:03
(Experiment): What happens if we purge all usages of Master/Slave from Tcl. Highly experimental, not meant for Tcl 8.6.11! file: [f0d311fbe3] check-in: [f9ba684c6b] user: jan.nijtmans branch: no-master-slave, size: 148229
2020-05-14
10:27
Merge 8.7 file: [b21a37d99d] check-in: [4654931a26] user: jan.nijtmans branch: trunk, size: 148969
10:16
Merge 8.6 file: [11985d74cd] check-in: [10e951f190] user: jan.nijtmans branch: core-8-branch, size: 149804
09:46
In some places, Tcl_UtfPrev()/Tcl_UtfNext() is used traversing the individual bytes of a string searching for '(', ')', '::' or other single bytes. It is overkill to use Tcl_UtfPrev/Tcl_UtfNext for that, since those characters can only appear as their ASCII byte, not as any other sequence. This effectively removes the last Tcl_UtfNext() call from the core, the only ones left are in tclTest.c for test commands. So the TclUtfNext() macro doesn't make sense any more. Remove "register" keyword from many files. file: [fc477b1e1c] check-in: [aa6cbf0a7f] user: jan.nijtmans branch: core-8-6-branch, size: 148229
2020-03-07
16:07
Merge trunk file: [620a90b3e5] check-in: [02f1df2e68] user: jan.nijtmans branch: dgp-refactor, size: 144763
2020-03-06
21:33
merge 8.7 file: [8978061cdc] check-in: [89fde09430] user: dgp branch: trunk, size: 148969
18:02
More TCL_UNUSED(). file: [3cfc92291a] check-in: [1d62614dd9] user: dgp branch: core-8-branch, size: 149804
2020-03-01
12:26
Finish C++-compat (TIP #557) for this branch file: [e8cc33b3be] check-in: [b1634d0c03] user: jan.nijtmans branch: dgp-refactor, size: 144995
2020-02-28
19:45
Merge trunk, and resolve conflicts. file: [376d77047c] check-in: [40258de7ff] user: dgp branch: dgp-refactor, size: 145032
12:46
Merge 8.7 file: [2eb2dbad95] check-in: [b7af922d61] user: jan.nijtmans branch: trunk, size: 149201
2020-01-13
14:34
merge trunk file: [53022914a2] check-in: [b2e462b310] user: dgp branch: dgp-refactor, size: 144666
2020-01-07
15:20
Merge 8.7 file: [c8bed3fc9e] check-in: [b219c8f278] user: jan.nijtmans branch: cplusplus, size: 150036
09:45
Merge 8.7 file: [0d9ebb86c7] check-in: [e88414ccba] user: jan.nijtmans branch: trunk, size: 148744
09:24
Remove type-casts in many Tcl_LinkVar() calls, which is no longer necessary since 8.7. Small missing piece in Tcl_LinkArray() implementation, handling (unsigned) longs on 64-bit platforms. file: [a61214337c] check-in: [dbd488fb8c] user: jan.nijtmans branch: core-8-branch, size: 149624
2019-11-07
08:41
Silence MSVC C4090 warnings when using ckrealloc(). Also make sure that Tcl itself doesn't use ckalloc() and friends any more. file: [639e0219e9] check-in: [ebf63c1e7d] user: jan.nijtmans branch: trunk, size: 148753
2019-11-06
22:18
Twice ckfree() -> Tcl_Free() file: [5c97f44de5] check-in: [67ba072ad8] user: jan.nijtmans branch: trunk, size: 148751
2019-09-14
21:52
Merge 8.7 file: [50d9386e7e] check-in: [6f27e2ad0a] user: jan.nijtmans branch: cplusplus, size: 150045
2019-09-13
12:10
merge trunk file: [5cbd2e1cf0] check-in: [b1b887db2b] user: dgp branch: dgp-refactor, size: 144675
2019-09-12
14:49
Merge 8.7 file: [94fba3d1f1] check-in: [5ce97959fe] user: jan.nijtmans branch: trunk, size: 148747
11:26
Merge 8.6 file: [826cd55464] check-in: [f21c1c05aa] user: jan.nijtmans branch: core-8-branch, size: 149633
11:01
Code cleanup: Add some initialization to "Tcl_UniChar ch" declaration, making the chance higher that 4-byte UTF-8 sequences are handled more reasonable internally (see: [https://core.tcl-lang.org/tk/tktview?name=a179564826|a179564826]). Use more TclGetString() in stead of Tcl_GetString(), which is slightly more efficient. file: [705ef6a55a] check-in: [38a4ab150c] user: jan.nijtmans branch: core-8-6-branch, size: 148481
2019-09-11
19:50
Merge and resolve trunk. file: [74eb6c1251] check-in: [841f74bf25] user: dgp branch: dgp-refactor, size: 144676
19:28
merge 8.7 file: [907d8491cd] check-in: [59a50e7ab3] user: dgp branch: trunk, size: 148749
19:24
merge 8.6 file: [4cdab397e5] check-in: [2305de0d9c] user: dgp branch: core-8-branch, size: 149635
19:10
partially cherrypick of [ecf524bce0], bug-fec0c17d39-8.6-limit: ultimate fix for [fec0c17d39] - avoid SO on deeply recursive call stack by restriction of nested compilations using same limit (interp recursionlimit) like the evaluation, this must protect against unexpected stack exhaustion; conflicts resolved, tests fixed (no command `try` in 8.5) file: [be15784891] check-in: [6147a8c8b0] user: sebres branch: core-8-5-branch, size: 133766
2019-09-03
19:32
Expand acronym in comment. file: [544e3348d9] check-in: [0f257f93f0] user: dgp branch: bug-fec0c17d39-8.6-limit, size: 148483
14:55
Merge tip-548 file: [6de06c16cb] check-in: [d69543a65a] user: jan.nijtmans branch: cplusplus, size: 149188
10:57
Merge 8.7 file: [8d7a637732] check-in: [b64e7a7522] user: jan.nijtmans branch: trunk, size: 147890
10:53
Merge 8.6 file: [ba5238c744] check-in: [5d91fdde6c] user: jan.nijtmans branch: core-8-branch, size: 148776
2019-08-30
19:48
extends [fec0c17d39]: restrict nested compilations using same limit (interp recursionlimit) like the evaluation, this must protect against unexpected stack exhaustion (avoid SO by deeply recursive call stack) file: [5dd961d684] check-in: [d9ccf1ab84] user: sebres branch: bug-fec0c17d39-8.6-limit, size: 148452
2019-08-29
20:50
closes [fec0c17d39]: fixed stack overflow (followed by SF) by compilation of too many nested bodies (don't use system stack, size of Tcl_Parse is ca. 400 bytes and compiler proc's of commands are reserving stack too) file: [a4fe3f2fda] check-in: [5ece79492c] user: sebres branch: bug-fec0c17d39-8.6, size: 147624
13:28
Merge tip-548 file: [f67d15a18c] check-in: [c933888049] user: jan.nijtmans branch: cplusplus, size: 148732
2019-08-26
18:56
merge trunk's elimination of register keyword file: [c7d62fd802] check-in: [9e3083e018] user: dgp branch: dgp-refactor, size: 143818
2019-08-15
15:20
Merge tip-548 file: [85d6c9593d] check-in: [fb24db99f5] user: jan.nijtmans branch: cplusplus, size: 148706
08:10
Merge 8.7 file: [91d35425e4] check-in: [f33e2933b5] user: jan.nijtmans branch: trunk, size: 147447
2019-07-17
15:38
Eliminate "register" keyword _everywhere_ in Tcl. This keyword is deprecated in C++ (removed in C++17, even), and essentially does nothing with most modern compilers. file: [5bb93e6b19] check-in: [f074bda87c] user: jan.nijtmans branch: no-register, size: 148333
2019-07-10
05:51
Merge 8.7, and continue implementation. Almost done file: [7c14201b33] check-in: [237cdadf3f] user: jan.nijtmans branch: cplusplus, size: 148976
2019-07-04
06:54
Experiment: compile Tcl with C++ compiler. WIP file: [7ed9824eb4] check-in: [99d5f9c948] user: jan.nijtmans branch: cplusplus, size: 148635
2019-06-17
18:36
merge trunk file: [248e92a156] check-in: [d40e234200] user: dgp branch: dgp-refactor, size: 144010
2019-06-15
21:29
Merge 8.7 file: [328be720f4] check-in: [af0bfa72a8] user: jan.nijtmans branch: trunk, size: 147717
17:49
TIP 461: text comparison operators for [expr] file: [ce150722a3] check-in: [7b13a290cc] user: dkf branch: core-8-branch, size: 148603
2019-06-13
12:13
merge trunk file: [9dee29bfd7] check-in: [08d36921f0] user: dgp branch: dgp-refactor, size: 143588
2019-06-12
15:42
Merge 8.7 file: [e74fcf7637] check-in: [c5ff3f41bd] user: jan.nijtmans branch: trunk, size: 147295
15:26
Eliminate (internal) TclOffset() usage, just use offsetof() in stead. file: [7630eeecdf] check-in: [f0c76dd6a8] user: jan.nijtmans branch: core-8-branch, size: 148181
2019-06-05
19:34
Start of implementation of string comparison operators. file: [bc3154b3d0] check-in: [1bc15ccfa8] user: dkf branch: tip-461, size: 148604
2019-05-03
16:00
merge trunk file: [aea5a8687d] check-in: [5623e6eb6b] user: dgp branch: dgp-refactor, size: 143589
2019-04-19
00:38
merge 8.7 file: [eab7b5f8c8] check-in: [ddaa30125b] user: dkf branch: trunk, size: 147296
2019-04-18
22:57
Compilation for [dict getwithdefault]. file: [83daf50dec] check-in: [3f55c6b25c] user: dkf branch: core-8-branch, size: 148182
2019-04-03
19:27
merge trunk file: [4f2390d792] check-in: [ae51fc9aa9] user: dgp branch: dgp-refactor, size: 143161
19:21
Rollback an (int -> size_t) conversion that doesn't yet make sense. file: [c89f975c99] check-in: [192a6d75be] user: dgp branch: trunk, size: 146868
17:31
Conflict-free merge of trunk through 2019-03-28 file: [0f67126710] check-in: [c179c90001] user: dgp branch: dgp-refactor, size: 143179
2019-03-29
17:57
Minor code cleanup: More use of size_t where possible, and elimination of unneeded type-casts. file: [37fb7c7713] check-in: [2269af324f] user: jan.nijtmans branch: trunk, size: 146885
2019-03-24
13:09
Merge 8.7 file: [d4a4407ccb] check-in: [8a8d3135b0] user: jan.nijtmans branch: trunk, size: 146896
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: [3f1904759d] check-in: [81502a66ed] user: jan.nijtmans branch: utf-max, size: 147754
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: [bbaa1cfa62] check-in: [9e1984c250] user: jan.nijtmans branch: core-8-6-branch, size: 147181
2019-02-28
20:35
merge trunk file: [93d038fae1] check-in: [e4e3193004] user: dgp branch: dgp-refactor, size: 143199
2019-02-27
21:58
Merge 8.7 file: [623e4fe53d] check-in: [727e74f081] user: jan.nijtmans branch: trunk, size: 146916
21:29
Fix [bd94500678e837d7]: SEGFAULT by conversion of unicode (out of BMP) to byte-array file: [f79a6a91d0] check-in: [efe8f3e6b0] user: jan.nijtmans branch: core-8-branch, size: 147774
2019-02-26
20:18
Merge 8.7 file: [2a4e519f4a] check-in: [13cda7b91c] user: jan.nijtmans branch: mistake, size: 146908
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: [40c8ff6044] check-in: [2c7db3fa01] user: jan.nijtmans branch: mistake, size: 147764
2019-02-25
21:10
Finish complete fix, all corner-cases correct now. Also spurious UTF-8 testcase failure (as seen on travis) fixed now. file: [ef1677b1bc] check-in: [b3d886c84f] user: jan.nijtmans branch: bug-bd94500678, size: 147818
2019-02-13
21:38
Merge trunk through 2019-02-05 file: [bb4106227b] check-in: [3bbdf1f4ba] user: dgp branch: dgp-refactor, size: 143189
2019-02-07
20:01
Merge and resolve trunk through 2018-12-26. file: [36dec31f60] check-in: [1c70fddfe1] user: dgp branch: dgp-refactor, size: 143227
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: [d305344ff3] check-in: [4b4fe25e7d] user: jan.nijtmans branch: trunk, size: 146906
2019-02-04
22:45
Merge trunk file: [b3a0309cbe] check-in: [a6db8815ce] user: jan.nijtmans branch: tip-502-for-9, size: 146908
2018-12-26
15:04
Many internal int -> size_t increases, so string lengths > 2Gb can be handled correctly in many more places. file: [ed1492f044] check-in: [2549977bc4] user: jan.nijtmans branch: trunk, size: 146952
2018-11-16
05:04
conflict free merge file: [bede914426] check-in: [1f2a70dff3] user: dgp branch: dgp-refactor, size: 143224
04:10
silence compiler warnings file: [cc2af70736] check-in: [6364870a14] user: dgp branch: dgp-refactor, size: 143201
2018-11-15
03:16
Merge TIP 494 and remove conflicts. Result doesn't work. file: [801514f2f5] check-in: [37c7a89a0b] user: dgp branch: dgp-refactor, size: 143194
2018-11-06
12:59
merge core-8-branch file: [ce86945a98] check-in: [445db2cb18] user: dkf branch: mistake, size: 146949
2018-10-06
19:20
Use more TCL_AUTO_LENGTH, when appropriate file: [6d4cc7c306] check-in: [c643e8fe38] user: jan.nijtmans branch: memory-API, size: 146926
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: [486094fbea] check-in: [f13660b5a5] user: jan.nijtmans branch: memory-API, size: 146934
2018-06-29
20:28
Another round of size_t'isms, this time also for Tcl_DString file: [210af85d08] check-in: [70159a633b] user: jan.nijtmans branch: memory-API, size: 146828
18:13
Improve many parsing-related functions to use size_t file: [4379c9bd75] check-in: [2d7687959e] user: jan.nijtmans branch: memory-API, size: 146825
2018-04-15
22:01
Merge trunk file: [3f06656a68] check-in: [ee95a2c1be] user: jan.nijtmans branch: memory-API, size: 146824
2018-03-15
13:23
Merge 8.6; An optimization miguel was considering; might be worth a look. file: [ad4e0bfba8] check-in: [4b8fba4c22] user: dgp branch: empty-bodies, size: 147247
2018-03-06
13:58
merge trunk file: [544bc78621] check-in: [c2717d5d40] user: dgp branch: dgp-refactor, size: 143118
12:02
Remove disabled code and reformat. file: [7ccef08803] check-in: [a8b448a3dc] user: dgp branch: legacy-instructions, size: 146816
05:27
Convert macros to enums - constrained by need for matching table. file: [e8d605c95c] check-in: [3801db5266] user: dgp branch: legacy-instructions, size: 147785
2018-01-31
12:18
Change Tcl_Token definition (int -> size_t). Many related code-changes. file: [5d4937e009] check-in: [e3a724b790] user: jan.nijtmans branch: memory-API, size: 147781
2018-01-25
22:42
New bytecode instructions must be appended at the end of the instruction table. file: [189d06108d] check-in: [27951f8463] user: dgp branch: amg-string-insert, size: 147952
2018-01-09
17:28
Fix for [e593adf103], resources of a namespace are still available after the namespace is deleted. Simplification of namespace deletion routines. file: [7b1dbb9e97] check-in: [829ad7a459] user: pooryorick branch: bug-e593adf103-core-8, size: 147856
2018-01-06
17:21
Fix for [e593adf103], resources of a namespace are still available after the namespace is deleted. Simplification of namespace deletion routines. file: [81c479a995] check-in: [3825265b17] user: pooryorick branch: bug-e593adf103, size: 147844
2017-12-19
16:31
merge trunk file: [1f0d358ab7] check-in: [7cc1c62ee1] user: dgp branch: dgp-refactor, size: 144075
12:23
merge core-8-branch. Also change some internal refCount's from int to size_t. file: [d2321f69db] check-in: [6e23ad39af] user: jan.nijtmans branch: trunk, size: 147773
2017-11-09
15:47
Rebase branch to trunk. file: [9b8e17fe7a] check-in: [f714eca8f2] user: dgp branch: dgp-refactor, size: 144087
2017-10-06
19:52
compiled [string insert]: rewritten via INST_STR_REPLACE (with operand); compiled [string replace]: because of variable stack length now, replace without replacement (remove) don't push empty object; op1#0 - insert, op1#1 - replace, op1#2 - remove file: [0ce47ef119] check-in: [1ecff38fdd] user: sebres branch: sebres-string-insert-cr1, size: 147955
2017-09-18
00:32
Implement bytecoded [string insert] file: [2766417332] check-in: [064fc1f23c] user: andy branch: amg-string-insert, size: 147951
2017-04-18
21:09
merge trunk file: [68a945439f] check-in: [d54a7e08cc] user: mlafon branch: tip-457, size: 147815
2017-03-17
13:14
merge trunk file: [ac8b1d7efe] check-in: [94529b0c04] user: dgp branch: tip-445, size: 147808
13:08
merge novem file: [7f01d6f546] check-in: [41aa381dd6] user: dgp branch: dgp-refactor, size: 144075
2017-03-15
02:41
Compile [clock clicks], [clock microseconds], [clock milliseconds] and [clock seconds]. file: [142bbde7ea] check-in: [1bb44d093d] user: kbk branch: novem, size: 147773
02:40
Compile [clock clicks], [clock microseconds], [clock milliseconds] and [clock seconds]. file: [23306fb0e8] check-in: [8095566752] user: kbk branch: trunk, size: 147785
02:39
Compile [clock clicks], [clock microseconds], [clock milliseconds] and [clock seconds]. file: [49a6bfc698] check-in: [09582e14f6] user: kbk branch: core-8-6-branch, size: 147171
2017-03-10
07:29
pulling Mathieu Lafon's implementation from git to fossil. file: [de0fe8b994] check-in: [37245fa89d] user: avl branch: tip-457, size: 147609
2016-12-23
15:21
merge trunk file: [2e8d45c127] check-in: [01d8a401a8] user: dgp branch: tip-445, size: 147602
15:19
merge novem file: [352938e477] check-in: [579da81b3f] user: dgp branch: dgp-refactor, size: 143869
2016-12-21
09:20
Merge trunk file: [39b52cebbc] check-in: [c52e1550bf] user: jan.nijtmans branch: novem, size: 147567
2016-12-20
09:46
more internal use of size_t in stead of int. file: [47627af7c0] check-in: [8171f63934] user: jan.nijtmans branch: trunk, size: 147579
2016-12-12
04:42
Commit changes received from Brad Lanam via email file: [adae6af05c] check-in: [9897959ab4] user: andy branch: lanam-array-for-impl, size: 147740
2016-11-28
16:24
merge novem file: [c13717d8c2] check-in: [676824c7c1] user: dgp branch: dgp-refactor, size: 143827
16:08
merge trunk file: [3399923777] check-in: [9174c893f4] user: dgp branch: tip-445, size: 147560
2016-11-21
10:40
Merge trunk. More internal use of size_t in stead of int (or long) file: [b116a9cc4b] check-in: [b68c708bd6] user: jan.nijtmans branch: novem, size: 147525
10:15
More internal use of size_t in stead of int. file: [df3da40202] check-in: [ef4da65408] user: jan.nijtmans branch: trunk, size: 147537
2016-11-18
18:05
merge novem file: [462c203819] check-in: [715274166d] user: dgp branch: dgp-refactor, size: 143823
2016-11-16
15:04
merge trunk file: [dfb5a36e8d] check-in: [f8be848288] user: dgp branch: tip-445, size: 147556
11:17
merge trunk file: [dc108bd339] check-in: [31a3f9bee0] user: jan.nijtmans branch: novem, size: 147521
10:55
Use more "size_t" in stead of "int" internall. Also eliminate a lot of type-casts which are not necessary any more. file: [54d8a9b1e3] check-in: [521d320b7b] user: jan.nijtmans branch: trunk, size: 147533
2016-09-08
19:34
merge novem file: [c3e9558de4] check-in: [085bd56f57] user: dgp branch: dgp-refactor, size: 143851
19:03
merge trunk file: [4ad01e3504] check-in: [965131dbb9] user: dgp branch: dgp-literal-reform, size: 147565
14:49
merge microopt file: [d5aeaaae33] check-in: [87bd460092] user: dgp branch: dgp-literal-reform, size: 147361
14:34
merge bytecode init reworking file: [1541fa606e] check-in: [64530305a9] user: dgp branch: dgp-literal-reform, size: 147350
13:01
merge 8.6.5 file: [47f4f927e3] check-in: [473492ffb3] user: dgp branch: dgp-literal-reform, size: 146866
12:43
merge 8.6.4 file: [4e6ecfd0ac] check-in: [67a149d080] user: dgp branch: dgp-literal-reform, size: 151104
12:36
merge 8.6.3 file: [79d6ab9612] check-in: [5e598c8a3e] user: dgp branch: dgp-literal-reform, size: 151056
12:28
merge 8.6.2 file: [aaabd38dad] check-in: [8765b86e00] user: dgp branch: dgp-literal-reform, size: 173664
12:22
merge 8.6.1 file: [5652071483] check-in: [65981cfc14] user: dgp branch: dgp-literal-reform, size: 161090
03:29
merge trunk file: [35c1883f87] check-in: [0b63cd813b] user: dgp branch: tip-445, size: 147584
2016-09-07
14:03
merge trunk file: [1d435c6d63] check-in: [c21cbbe39b] user: jan.nijtmans branch: novem, size: 147549
13:34
Fix [d4e7780ca1681cd095dbd81fe264feff75c988f7|d4e7780ca1]: "global" cmd literal sharing vs. per-interp resolvers file: [177b437f50] check-in: [8dd58d9800] user: jan.nijtmans branch: trunk, size: 147561
2016-09-05
14:52
some more clean-up file: [4ecd0cd015] check-in: [b6613c42d4] user: jan.nijtmans branch: bug-d4e7780ca1, size: 146965
13:14
Some patch clean-up, no change in functionality file: [9cba5c045f] check-in: [fafbedb850] user: jan.nijtmans branch: bug-d4e7780ca1, size: 146976
2016-09-02
12:11
Proposed patch for [d4e7780ca1681cd095dbd81fe264feff75c988f7|d4e7780ca1], by Gustaf Neumann file: [e7163a60a7] check-in: [3b88e32691] user: jan.nijtmans branch: bug-d4e7780ca1, size: 146961
2016-07-13
13:06
Merge novem file: [ebc1d2b134] check-in: [be86aae38f] user: jan.nijtmans branch: novem-bighash, size: 147354
2016-07-12
21:38
Prefer removal of just known invalid interp over destruction of all intreps. file: [410207bdf6] check-in: [67619034d2] user: dgp branch: tip-445, size: 147380
2016-07-09
19:40
merge novem file: [ab77a7eccf] check-in: [7675692667] user: dgp branch: dgp-refactor, size: 143647
17:21
merge trunk file: [f66ee4d559] check-in: [c991627aa9] user: dgp branch: tip-445, size: 147356
2016-07-08
10:34
merge trunk file: [81c2777c32] check-in: [706fbc1eb0] user: jan.nijtmans branch: novem, size: 147345
10:28
Micro-optimization: Use TclGetStringFromObj in stead of Tcl_GetStringFromObj in many places where possible. file: [e493f92030] check-in: [48cb8436f1] user: jan.nijtmans branch: trunk, size: 147357
2016-06-17
03:06
merge trunk file: [62c0045f44] check-in: [28e89d646c] user: dgp branch: tip-445, size: 147360
2016-06-16
18:28
merge novem file: [9f444172e6] check-in: [6b031876d7] user: dgp branch: dgp-refactor, size: 143651
18:28
merge trunk file: [0b7aedbf8c] check-in: [d1a8ac1051] user: dgp branch: novem, size: 147349
17:15
[4b61afd660] Allow [info frame] to record line info for substituted command names. file: [68a544dc52] check-in: [15dd07c23c] user: dgp branch: trunk, size: 147361
17:15
[4b61afd660] Allow [info frame] to record line info for substituted command names. file: [dc3d7269ae] check-in: [c94c7c4f4c] user: dgp branch: core-8-6-branch, size: 146754
17:12
[4b61afd660] Allow [info frame] to record line info for substituted command names. file: [8f5c533046] check-in: [49f56e9254] user: dgp branch: core-8-5-branch, size: 132920
16:59
Improve fix and add test. file: [71f774cd42] check-in: [e4da71ec40] user: dgp branch: bug-4b61afd660, size: 132891
2016-06-10
13:43
Corrects reported bug, but makes many tests fail. Something subtle about what we should expect when recording the line of a command that isn't known until runtime. file: [f231ada949] check-in: [a22a6e2b7f] user: dgp branch: bug-4b61afd660, size: 132920
2016-05-13
16:06
merve novem file: [c2ef010f55] check-in: [98a107e967] user: dgp branch: dgp-refactor, size: 143602
16:03
merge trunk file: [246823a25f] check-in: [1fdf03ed46] user: dgp branch: tip-445, size: 147311
09:21
Merge trunk file: [8d45b37d3b] check-in: [b65f70f7a8] user: jan.nijtmans branch: novem, size: 147300
08:01
Merge core-8-6-branch. Eliminate some unnecessary spacing. file: [766abf0c4b] check-in: [e7796bf5e8] user: jan.nijtmans branch: trunk, size: 147312
2016-05-10
16:53
merge trunk file: [9c0db388dc] check-in: [c5365cda20] user: dgp branch: tip-445, size: 147312
2016-05-03
15:38
merge novem file: [945ba6f618] check-in: [fd6fb19018] user: dgp branch: dgp-refactor, size: 143603
15:14
merge trunk file: [ea2e5e1cdd] check-in: [31be103f5d] user: dgp branch: novem, size: 147301
2016-04-29
20:34
typo file: [c29cecba4c] check-in: [7f412fb38f] user: dgp branch: tip-445, size: 147283
20:33
more revisions file: [cb6e8bb02e] check-in: [06c9126f73] user: dgp branch: tip-445, size: 147282
19:29
Parameterize TclInitByteCodeObj to callers sense of typePtr. file: [7f42b7ee73] check-in: [438aad9179] user: dgp branch: dgp-init-bytecode, size: 147313
17:58
Make obj-free bytecode maker available to rest of compile-related files. file: [0598d22948] check-in: [0dba0ff8ad] user: dgp branch: dgp-init-bytecode, size: 147297
17:52
Tease apart the bytecode creation machinery from the Tcl_Obj intrep machinery. file: [30a974c67e] check-in: [d521ec90bf] user: dgp branch: dgp-init-bytecode, size: 147240
17:34
Refactor bytecode initialization machinery. file: [d4a2e3db4a] check-in: [50792c291d] user: dgp branch: dgp-init-bytecode, size: 146853
2016-04-26
13:26
merge novem file: [e07f8c82db] check-in: [7f875d6226] user: dgp branch: dgp-refactor, size: 143185
2016-04-24
16:04
merge trunk file: [1e5c6659c1] check-in: [203ec72d4a] user: jan.nijtmans branch: novem, size: 146788
2016-04-22
18:13
Refactor bytecode cleanup. file: [0371a9977d] check-in: [4bee762db3] user: dgp branch: trunk, size: 146800
2016-04-20
16:44
Merge 8.6.5 file: [65407cb7e6] check-in: [090329ea25] user: dgp branch: little, size: 150726
2016-04-19
20:35
Fork of Tcl used in the "Little" project. http://www.mcvoy.com/lm/little/index.html file: [1a43706730] check-in: [69b737f5a1] user: dgp branch: little, size: 154929
2016-03-17
13:56
merge novem file: [8ab112362d] check-in: [fc87efe49c] user: dgp branch: dgp-refactor, size: 143090
13:31
merge trunk file: [a3470f55fa] check-in: [419214420d] user: dgp branch: novem, size: 146693
13:14
[ae38befcfb] Rewrite TclGetInnermostExceptionRange() for fewer iterations. file: [df25677413] check-in: [582d6817fe] user: dgp branch: core-8-6-branch, size: 146705
2016-01-20
03:21
fix warnings at -O2 file: [553ea76b33] check-in: [2399d89260] user: msofer branch: mig-opt2, size: 111894
2016-01-19
14:02
merge novem file: [9f2f0e283d] check-in: [89e10bd16d] user: dgp branch: dgp-refactor, size: 143153
2016-01-12
23:46
fixing the last bug: command compiler returning TCL_ERROR and bailing out file: [7d50a5d677] check-in: [6962035205] user: msofer branch: mig-opt2-tmp, size: 111887
2016-01-11
00:49
no-280 branch, it still has many errors file: [0d266a4d70] check-in: [ede41c1946] user: msofer branch: mig-opt2-tmp, size: 111791
2015-12-18
12:28
merge trunk file: [b5290d6cda] check-in: [6def89fffa] user: msofer branch: mig-opt2, size: 122784
2015-12-15
15:45
merge trunk file: [56dd8cf3c0] check-in: [109ae983c0] user: jan.nijtmans branch: novem, size: 146756
13:19
Remove unused static function definition file: [d38cbb0760] check-in: [c5394a312b] user: jan.nijtmans branch: trunk, size: 146768
11:13
make some MODULE_SCOPE symbols static file: [11ce3dd4f0] check-in: [3c36ca4be3] user: jan.nijtmans branch: trunk, size: 146830
10:33
Eliminate AuxDataType table: since this table only contains 4 constant entries, it is overkill to use a hash table for that. file: [8816e60a3d] check-in: [ae32969212] user: jan.nijtmans branch: trunk, size: 147761
2015-12-12
20:02
remove support for obsolete 8.4 bytecodes file: [6057516275] check-in: [65e9ef3d6c] user: msofer branch: mig-opt2, size: 126938
2015-12-11
21:51
transforming the NRE stack from a linked list to a real stack file: [8becbb85e2] check-in: [f7809e02ac] user: msofer branch: mig-opt2, size: 127194
15:55
transforming the NRE stack from a linked list to a real stack; incomplete file: [0357cf2ac7] check-in: [bf2e0e30c5] user: msofer branch: mig-nre-mods, size: 150943
2015-12-09
18:08
new branch for experimental mods file: [319e077c0f] check-in: [21276302ce] user: msofer branch: mig-opt2, size: 127222
2015-11-21
12:43
REVIEW: avoid doing the full TEBC dance for empty bodies file: [c151b9435d] check-in: [68801e59cb] user: msofer branch: empty-bodies, size: 151047
2015-11-05
16:44
merge trunk file: [c37f33a564] check-in: [623a8ff73b] user: msofer branch: mig-optimize, size: 144951
01:48
merge trunk; partial while hunting for a merge bug - updated to 2015-05-18 file: [99350153fc] check-in: [26f9bf8072] user: msofer branch: mig-optimize, size: 144986
2015-09-27
19:54
merge novem file: [4cb588b3ff] check-in: [7919f734b7] user: dgp branch: dgp-refactor, size: 147356
2015-08-04
17:34
merge trunk file: [af5c5beafe] check-in: [b8253e16e6] user: jan.nijtmans branch: novem, size: 150959
2015-08-02
12:22
Fix more problems with break and continue in for-step clauses. file: [93efe10421] check-in: [7a737d57dd] user: dkf branch: Coverity CID 1251203, size: 150971
2015-08-01
19:37
Fix Coverity CID 1251203: break vs continue in for-step clause file: [6c547a31e6] check-in: [3481934110] user: dkf branch: Coverity CID 1251203, size: 150940
2015-07-15
15:35
merge novem file: [c5bb4e3a4e] check-in: [18daab3d84] user: dgp branch: dgp-refactor, size: 147322
2015-07-13
09:01
merge trunk file: [fdfbfb2a39] check-in: [ecaf852558] user: jan.nijtmans branch: novem, size: 150925
2015-07-10
12:41
Implement TIP 436: Improve TclOO isa Introspection file: [be10e192da] check-in: [52e60be8fa] user: dkf branch: trunk, size: 150937
2015-07-05
17:58
merge novem file: [e3281ec78b] check-in: [a006f10aa9] user: dgp branch: dgp-refactor, size: 147325
2015-07-02
13:17
merge trunk file: [5524218fe0] check-in: [cfb40a9761] user: jan.nijtmans branch: novem, size: 150928
12:54
Revert refcount changes that were not cosmetic. Changing equality testing to inequality testing does more than make code prettier or clearer. It makes it less strict, and thus more tolerant of other bugs elsewhere. Such changes deserve separate consideration at least, not breezy entry in an otherwise "code cleanup" commit. file: [35c8e6d99b] check-in: [33e894a6ee] user: dgp branch: trunk, size: 150940
08:42
merge trunk file: [81ad3256d4] check-in: [4c0b0070c3] user: jan.nijtmans branch: novem, size: 150928
08:17
Another round of refCount consistancy improvements. file: [162c81e848] check-in: [ec91b85b61] user: jan.nijtmans branch: trunk, size: 150940
2015-06-30
21:41
Consistancy in refcount management. file: [31841dab2b] check-in: [296892a8fb] user: jan.nijtmans branch: trunk, size: 150954
08:10
Use twoPtrValue in stead of ptrAndLongRep for implementation of some internal Obj types. On most platforms this doesn't make a difference, as (void *) and (long) generially have the same size. The only exception where it makes a difference is win64, as we can now store 64 bits in this field in stead of only 32 bits, exactly what the processor is optimized for. file: [2e57d10af7] check-in: [d3a263c973] user: jan.nijtmans branch: trunk, size: 150952
2014-12-23
15:37
merge novem file: [b57a259ca1] check-in: [37e28f586b] user: dgp branch: dgp-refactor, size: 147387
2014-12-09
20:29
[e711ffb458] Replace TclIsLocalScalar() (which does the wrong thing).... with PushVarNameWord() (which doesn't) in the compiler for [dict lappend]. file: [20396dcfbc] check-in: [f0b1afe696] user: dgp branch: bug-e711ffb458, size: 132871
2014-12-08
16:23
merge trunk file: [78101d43a3] check-in: [16ac00f4bb] user: jan.nijtmans branch: novem, size: 150994
2014-12-01
20:17
Fix missing export of the "NewForeachInfoType" AuxData structure for tbcload/tclcompiler packages. file: [70e54112d7] check-in: [edb0dea965] user: andreask branch: trunk, size: 151006
2014-09-29
13:37
Rebase the refactoring branch to novem. file: [ef8ffc9597] check-in: [663194637e] user: dgp branch: dgp-refactor, size: 147339
11:49
Merge new disassembler. DOES NOT BUILD! tclDisassemble.c still needs conversion. file: [70a98436e2] check-in: [16dfcd4ff8] user: dgp branch: dgp-refactor, size: 147351
2014-09-28
22:23
merge trunk file: [a37c43fc8a] check-in: [9a9386911e] user: dgp branch: novem, size: 150946
2014-08-14
06:49
Merge trunk. Remove (old and deprecated) SystemV timezone information. file: [41d3a1f12a] check-in: [2f17676f24] user: jan.nijtmans branch: novem, size: 173554
2014-08-02
19:20
merge trunk file: [14d9b0008d] check-in: [63ed148e71] user: kbk branch: dkf-improved-disassembler, size: 150958
2014-07-22
20:19
merge trunk file: [21b38c7978] check-in: [78f1abcc5d] user: dgp branch: dgp-refactor, size: 169988
2014-07-18
12:18
[b43f2b49f7] New compilation strategy for lappend that allows multi-value lappend to not have quadratic performance (through better reference management). file: [24f2c8275f] check-in: [17150b71d2] user: dkf branch: trunk, size: 173566
2014-02-06
22:10
merge trunk file: [4624bbd907] check-in: [6828d86c67] user: jan.nijtmans branch: novem, size: 172957
18:35
merge trunk file: [4cce525468] check-in: [0eb8efa5ba] user: mig branch: mig-optimize, size: 166949
2014-02-04
16:30
merge trunk file: [cdfabbb1a1] check-in: [7642672bf2] user: dgp branch: dgp-refactor, size: 169391
09:02
make the printing of source much less inclined to be fazed by non-ASCII chars file: [f97c0625bd] check-in: [185f7e2f36] user: dkf branch: trunk, size: 172969
2014-02-03
22:29
merge trunk file: [4f53154e3e] check-in: [6e467f54ca] user: dkf branch: dkf-improved-disassembler, size: 150361
17:32
merge trunk file: [24974df1de] check-in: [2dc7adbbf0] user: mig branch: mig-optimize, size: 166628
09:53
merge trunk file: [7dac1b42d9] check-in: [63547cfbe8] user: jan.nijtmans branch: novem, size: 172636
2014-02-02
14:42
improve the disassembly file: [087796d713] check-in: [d1f2d16fd2] user: dkf branch: dkf-bytecode-8.6/string-is, size: 172648
2014-01-29
13:59
Compile [string is] with character classes in a non-awful way. Needs more work to make resulting bytecode disassemble nicely. file: [d639d00931] check-in: [587d82b78a] user: dkf branch: dkf-bytecode-8.6/string-is, size: 172476
2014-01-25
09:02
merge principal development branch file: [a4b863dce4] check-in: [51b5fe9afe] user: dkf branch: dkf-bytecode-8.6/string-is, size: 172181
2014-01-23
23:12
merge trunk file: [01edb208f6] check-in: [ddec41f466] user: jan.nijtmans branch: novem, size: 171842
13:15
merge trunk file: [87a6c9ed1a] check-in: [e5eacae891] user: dgp branch: dgp-refactor, size: 168276
2014-01-21
15:07
implementation of [yieldto] in bytecode file: [7ef1de0eab] check-in: [ef8db24f85] user: dkf branch: dkf-bytecode-8.6-main, size: 171854
2014-01-19
18:39
added compilation for [nextto] file: [061384fa4c] check-in: [6f3de2ee14] user: dkf branch: dkf-bytecode-8.6-main, size: 171461
2014-01-13
08:06
extend [string is] to booleans file: [dfd9145961] check-in: [4013777385] user: dkf branch: dkf-bytecode-8.6/string-is, size: 171177
2014-01-10
15:58
a different approach file: [489148d2bf] check-in: [85c888f3e7] user: dkf branch: dkf-bytecode-8.6/string-is, size: 171011
2014-01-09
21:20
merge trunk file: [b481624c82] check-in: [cd045e6a26] user: dkf branch: dkf-improved-disassembler, size: 148735
2014-01-07
14:52
merge trunk file: [bfb81c1d12] check-in: [0d51d6c35e] user: dgp branch: dgp-refactor, size: 167272
2014-01-01
12:36
merge trunk file: [d26c530e90] check-in: [3cb08706ae] user: jan.nijtmans branch: novem, size: 167575
2013-12-30
10:24
merge main working branch file: [b0769e0130] check-in: [1eae2c7592] user: dkf branch: dkf-bytecode-8.6/next, size: 170850
08:37
implement [namespace origin] in bytecode file: [476c427e32] check-in: [1572fe02bd] user: dkf branch: dkf-bytecode-8.6-main, size: 170670
08:16
allow generation by assembler file: [0097067d14] check-in: [7b776b5ef4] user: dkf branch: dkf-bytecode-8.6-main, size: 170448
2013-12-28
17:21
completed instruction implementation file: [8ac6c3d1b5] check-in: [4baf63487a] user: dkf branch: dkf-bytecode-8.6/string-replace, size: 170436
2013-12-27
21:00
merge trunk file: [3845b6799f] check-in: [4eca9283c9] user: dgp branch: dgp-refactor, size: 164009
19:51
merge to pre-conflict file: [9fa83ba1c9] check-in: [97e935896f] user: dgp branch: dgp-refactor, size: 163270
2013-12-23
18:32
merge trunk file: [5e0e2105fb] check-in: [9dfb1c05dd] user: dkf branch: dkf-bytecode-8.6-main, size: 170217
11:42
merge new stack checking tools for the compiler file: [1a81eb5a3c] check-in: [3729db90cb] user: mig branch: mig-optimize, size: 161567
11:28
Added new tools for managing and verifying the stack depth during compilation. Used it in some spots in the compiler and in TclCompileCatchCommand. file: [475bbc24b2] check-in: [c91b235146] user: mig branch: trunk, size: 167587
2013-12-19
12:21
merge trunk file: [f0f7205d02] check-in: [7d7672c1eb] user: jan.nijtmans branch: novem, size: 166833
2013-12-18
17:29
merge trunk file: [fbb59b1beb] check-in: [9e7cd2afeb] user: mig branch: mig-optimize, size: 160825
15:34
Making the optimizer pluggable by extensions; please review for committing to trunk file: [a6069ff58e] check-in: [66649275ed] user: mig branch: mig-tmp-optimize, size: 166845
2013-12-12
09:13
merge trunk; document added instructions file: [dc52a80ee5] check-in: [3c12b66379] user: dkf branch: dkf-bytecode-8.6-main, size: 169435
08:09
merge trunk file: [c8ee44faaf] check-in: [7bab51b334] user: dkf branch: dkf-bytecode-8.6-main, size: 168463
2013-12-11
11:29
move the optimizer back to TclSetByteCodeFromAny - still unsure if it actually belongs in InitBytecode though, although the hook may possibly need to remain after the optimization. TODO: consider these issues file: [e81a1bbeb5] check-in: [51dac455d6] user: mig branch: mig-optimize, size: 160785
2013-12-10
12:07
fix INST_LMAP_COLLECT from trunk file: [a271e3068d] check-in: [c70ff981e2] user: mig branch: mig-optimize, size: 160539
12:05
fix stack computations for lmap file: [60a05c1c26] check-in: [e4212fccc3] user: mig branch: trunk, size: 166805
11:55
fix INST_LMAP_COLLECT from trunk file: [f01e5a8575] check-in: [fab4f64b61] user: mig branch: mistake, size: 160541
11:55
fix stack computations for lmap file: [60cde44f99] check-in: [8aa6e6e51b] user: mig branch: mistake, size: 166807
11:40
get INST_LMAP_COLLECT from trunk file: [2c2dee9f45] check-in: [72fd8739c8] user: mig branch: mig-optimize, size: 160539
11:38
new INST_LMAP_COLLECT, speeds up lmap and eliminates the need for a temp var file: [d7f011bc44] check-in: [58ebb29700] user: mig branch: trunk, size: 166805
2013-12-07
20:15
More simplification of forward jumps, emiting almost only 4 jumps. Ready to start on optimizer. file: [cc8e8090ac] check-in: [60fe9d5c31] user: mig branch: mig-optimize, size: 160479
17:38
More simplification of forward jumps file: [03896f79c4] check-in: [be9709bda2] user: mig branch: mig-optimize, size: 164667
15:46
Some simplification of forward jumps file: [6e82b6b3d6] check-in: [265934fd86] user: mig branch: mig-optimize, size: 164814
12:14
First steps to a rewriting-optimizer: emit all forward jumps as 4-jumps to have rewriting space. This here is just emitting them, massive simplification follows. Note that 'subst' still needs to emit 1-jumps (as does any other that uses INST_RETURN_CODE_BRANCH). file: [6a289fd23e] check-in: [b5d790a234] user: mig branch: mig-optimize, size: 165889
2013-12-06
17:41
Resolve "conflict" that dgp-refactor stores AuxData in a Brodnik array. file: [def7b1537a] check-in: [40308d67c9] user: dgp branch: dgp-refactor, size: 163170
16:59
Resolve (mostly cosmetic) conflicts merging changes in the compiler. file: [89373dd37c] check-in: [5659066924] user: dgp branch: dgp-refactor, size: 162622
16:44
Merge to pre-conflict checkin file: [5f04ff4c3e] check-in: [b0b4303cbb] user: dgp branch: dgp-refactor, size: 163046
09:33
merge trunk file: [33ae90306d] check-in: [1ab40a5c8f] user: dkf branch: dkf-bytecode-8.6-main, size: 168403
2013-12-05
15:15
New compiler and bytecodes for foreach and lmap: 70% faster * speed as measured by http://wiki.tcl.tk/39021: runs in <1/3 the time * still need to adapt array-set to use this * assemble.test-16.5 or 16.6 bombs in a purify/symbols build (?) * removing the old opcodes would force recompilation of old .tbc files or adaptation of tbcload file: [3e3b8427f9] check-in: [3782af5f5a] user: mig branch: mig-opt-foreach, size: 166745
2013-10-29
20:07
Now do [string toupper], [string tolower] and [string totitle]. Only handles the no-indices case; that's the only case anyone actually commonly uses. file: [0cf7afde74] check-in: [993ffd1993] user: dkf branch: dkf-bytecode-8.6-main, size: 167855
2013-10-26
08:25
General [concat] compilation. file: [769ccdb571] check-in: [280e05bb11] user: dkf branch: dkf-bytecode-8.6-main, size: 167248
07:50
Change name of instruction to make way for future changes. file: [c9f6d37772] check-in: [5c6f835158] user: dkf branch: dkf-bytecode-8.6-main, size: 167098
2013-10-23
15:32
silence compiler warning file: [484e3873bf] check-in: [7a099f617d] user: dgp branch: trunk, size: 166197
14:58
Avoid stack verificaton steps in macros when called by assembler. It uses them differently. Also suspend optimization pass. file: [f57c66a6a3] check-in: [013678a14e] user: dgp branch: dgp-stack-depth-tester, size: 166514
2013-10-22
17:37
merge trunk file: [3f58bda424] check-in: [604c3c8c38] user: dgp branch: dgp-stack-depth-tester, size: 166509
17:36
merge fixes from trunk file: [ee56e2d8d2] check-in: [11b31eb3dd] user: dkf branch: dkf-bytecode-8.6-main, size: 167083
17:17
Complete the repair on the INST_POP removal. file: [ed315ade5f] check-in: [e884549c28] user: dgp branch: dgp-stack-depth-tester, size: 161328
14:53
Conditionalize size of INST_POP removal. file: [cb7126d2e7] check-in: [94e56787fa] user: dgp branch: dgp-stack-depth-tester, size: 161278
14:30
Merge e9c8ef file: [489a8078a5] check-in: [72e2f3c377] user: dgp branch: dgp-stack-depth-tester, size: 161248
14:29
Fix problems in for.test file: [371f61c8f0] check-in: [da8d84083c] user: dkf branch: trunk, size: 166263
04:39
Merge 2718a16 file: [cbc20e2b7f] check-in: [c4801d3413] user: dgp branch: dgp-stack-depth-tester, size: 161154
2013-10-21
22:59
Merge to TCS rewrite merge point. file: [1e607ef000] check-in: [959a872065] user: dgp branch: dgp-stack-depth-tester, size: 176244
21:32
Merge 97f680 file: [78a47123c5] check-in: [3024ea00d3] user: dgp branch: dgp-stack-depth-tester, size: 176245
19:47
Merge to pre-TCS branch. file: [6051c1c164] check-in: [7baa52405f] user: dgp branch: dgp-stack-depth-tester, size: 165191
17:09
Merge to pre-TCS rewrite. file: [acca5a4e87] check-in: [daa3925cb9] user: dgp branch: dgp-stack-depth-tester, size: 164943
14:35
silence compiler warnings file: [fe02cf22f0] check-in: [14351c91dd] user: dgp branch: trunk, size: 166624
2013-10-20
18:44
merge trunk file: [187f19c606] check-in: [cddba18029] user: dkf branch: dkf-bytecode-8.6-main, size: 167432
2013-10-19
14:11
Fix handling of 'invokeExpanded' and start to do 'returnStk'. file: [b7993dbdf9] check-in: [7e41c534a9] user: dkf branch: dkf-loop-exception-range-work, size: 166612
12:29
Added missing exception range finalize. file: [a82f690b27] check-in: [9a368b1f23] user: dkf branch: dkf-loop-exception-range-work, size: 166337
2013-10-18
07:08
Tackle evalStk by reusing existing machinery. file: [bf8f5cbee1] check-in: [253aef53ca] user: dkf branch: dkf-loop-exception-range-work, size: 166286
2013-10-15
00:27
Do jump generation at places where INST_RETURN_IMM might occur. file: [a238f98dc7] check-in: [98717da70a] user: dkf branch: dkf-loop-exception-range-work, size: 166191
2013-10-13
13:34
update comments file: [bd826112e8] check-in: [73671810e9] user: dkf branch: dkf-loop-exception-range-work, size: 166392
12:09
Stop crashing in interactive testing. (The unknown and history mechanisms tend to exercise some parts of the bytecode compiler very well.) file: [e857b5b7c3] check-in: [f6e5ac8873] user: dkf branch: dkf-loop-exception-range-work, size: 165714
2013-10-08
09:02
Working towards better handling of stack balance with break and continue exceptions. file: [4da3057ea8] check-in: [e4d6e9291b] user: dkf branch: dkf-loop-exception-range-work, size: 165675
2013-10-03
13:32
cleaner and faster 'string trim' file: [9999b2071f] check-in: [0d32a0f39f] user: dkf branch: dkf-bytecode-8.6-main, size: 161906
2013-09-30
14:33
merge trunk file: [769d085bb9] check-in: [a765e280e7] user: dgp branch: dgp-refactor, size: 157508
03:00
First attempt at [string trim] compilation. file: [c1f713dca6] check-in: [62a0ec46d8] user: dkf branch: dkf-bytecode-8.6-main, size: 161638
2013-09-29
20:46
merge novem file: [a1faac2714] check-in: [2170e066f2] user: dkf branch: novem-64bit-sizes, size: 161358
2013-09-27
17:33
Fix test source-4.1 file: [47540aab0b] check-in: [d6941999f1] user: dgp branch: trunk, size: 161086
16:54
Patch to the original line continuation commit to fix up TclCompileTokens. file: [6963a8eaf7] check-in: [8af75fedaa] user: dgp branch: adjust-fix, size: 132227
16:38
Clean compile on OSX file: [c56d47013e] check-in: [adad1a60c5] user: dkf branch: novem-64bit-sizes, size: 161264
2013-09-26
13:13
merge novem WARNING: No checks of build-ability done yet. file: [4a8de939ef] check-in: [2688d65077] user: dkf branch: novem-64bit-sizes, size: 161257
2013-09-13
20:25
Add _Get routine to pull a random access BrodnikPointer from a BrodnikArray. Use it to scan the CmdLocation data during a fixup of a forward jump. file: [4f6a95dc7a] check-in: [2c7770626b] user: dgp branch: dgp-refactor, size: 157414
2013-09-12
23:34
Revise _Append and _Detach to return element pointers. file: [31290cabe7] check-in: [e16c235651] user: dgp branch: dgp-refactor, size: 157410
2013-09-10
17:15
More loop conversions. Also use the stability of BAs to keep pointers instead of indicies. file: [8b9e676af6] check-in: [97124028bb] user: dgp branch: dgp-refactor, size: 157448
16:07
Convert first CmdLocation loop to iterate with pointers. Add missing failed compile cleanup discovered in the conversion. file: [4f24a22faa] check-in: [f4ce6685c1] user: dgp branch: dgp-refactor, size: 158689
2013-09-09
18:46
Now that BA's retain an identity, stop returning them from routines. file: [41798b7ad8] check-in: [a298d81f98] user: dgp branch: dgp-refactor, size: 158422
2013-09-05
18:29
Move AuxData array rather than copy it. file: [c08b9f5dc6] check-in: [79fae728af] user: dgp branch: dgp-refactor, size: 158497
03:22
Split BA macros into declaration part and definition part so that a BA_* type can be used in multiple source code files as MODULE_SCOPE. file: [0c34781612] check-in: [5523d5bd5e] user: dgp branch: dgp-refactor, size: 158885
2013-08-22
07:09
merge trunk file: [96630e6cbe] check-in: [6818b3c99c] user: dkf branch: dkf-improved-disassembler, size: 138877
2013-08-07
18:34
merge trunk file: [99cb03ccd4] check-in: [b94fb74ee9] user: dgp branch: dgp-refactor, size: 158866
16:44
Remove Tcl_Preserve support for ContLineLoc values. It's not needed. This allows the clLoc field of CompileEnv struct to go away too. file: [3c307d2bf3] check-in: [08cfa769ec] user: dgp branch: dgp-bye-ctx-eval-flag, size: 160992
2013-08-06
20:18
merge trunk file: [66ac81d171] check-in: [1f866ae516] user: dgp branch: dgp-refactor, size: 159299
04:15
The value TCL_LOCATION_EVAL_LIST in the type field of a CmdFrame appears to exist only for the sake of taking great pains to make sure that pure list values remain pure list values. The value of pure list values is no longer what it once was. For a long long time now, any canonical list values have been equally good. This branch is Work In Progress eliminating the complication of the additional type value. Currently some minor botches are breaking execution tracing tests. file: [d6d926e991] check-in: [a292acfcd1] user: dgp branch: dgp-bye-location-eval-list, size: 161425
2013-07-27
20:29
Simplify AuxData access with a macro. file: [a0b6a33ebc] check-in: [3f7279e103] user: dgp branch: trunk, size: 161472
19:23
Shut down the remaining places where a TCL_TOKEN_COMMAND token was generated and then passed on to compile routines. Now that compile routines never get those token types, remove the code that handled them. Eliminated some straggling CONST. file: [02cf8ddce2] check-in: [1cbf82e813] user: dgp branch: dgp-refactor, size: 159346
2013-07-26
17:05
Remove Tcl_ResetResult() workaround that's no longer needed after merging the TclCompileScript() rewrite. file: [d455aa6256] check-in: [db9f99d903] user: dgp branch: dgp-refactor, size: 159900
2013-07-23
20:27
delete stray commented out bits file: [79b5766188] check-in: [2a7d6b0074] user: dgp branch: dgp-refactor, size: 159926
20:18
merge trunk file: [9c156cfe54] check-in: [411112f7ca] user: dgp branch: dgp-refactor, size: 160065
20:11
Remove outdated, disabled code. file: [451bd8be9e] check-in: [d526d293b4] user: dgp branch: trunk, size: 161432
16:57
Find and repair the surplus PUSH that was causing trouble. file: [49f5c2ae3c] check-in: [c3815bca63] user: dgp branch: dgp-refactor, size: 173912
2013-07-20
04:54
merge trunk. still have stack depth issues in [subst] syntax errors. file: [ad51d7cee8] check-in: [df020c50d0] user: dgp branch: dgp-refactor, size: 173959
2013-07-18
15:42
merge trunk file: [9d93b86f31] check-in: [84e6740946] user: dgp branch: dgp-tcs-rewrite, size: 176082
15:05
[Bug 1c17fbba5d] Fix -errorinfo from syntax errors so that the error is not obscured. Instead highlight it by making it the last character quoted. file: [2ccf6cfcba] check-in: [91ed4186a8] user: dgp branch: trunk, size: 164807
2013-07-17
13:57
Factor out the call to a compileProc into one place used by both ensemble subcommand compiles and toplevel command compiles in TclCompileScript. file: [d5c835ae04] check-in: [2c30f7e029] user: dgp branch: dgp-tcs-rewrite, size: 176265
2013-07-16
20:48
Streamline the housekeeping on the operands of INST_START_CMD. For example, do only incr on success, not incr on attempt + decr on error. file: [44232465b2] check-in: [c13bc40aa0] user: dgp branch: dgp-tcs-rewrite, size: 176933
17:21
Simplify the ensemble subcommand compile. There's no need to be crafting synthetic Tcl_Parse and copying tokens. Some pointer shifts will do. file: [fbab94c570] check-in: [c094eb7c53] user: dgp branch: dgp-tcs-rewrite, size: 177321
14:52
Simplify arguments to TclContinuationsEnterDerived(). file: [8b4257f2c1] check-in: [9554c7ea6d] user: dgp branch: dgp-tcs-rewrite, size: 177348
14:07
Eliminate the litInfo table and all the code tending to its care and feeding. The pc -> command index mapping function it provided can be achieved using other data already in the ByteCode struct. file: [a93f865349] check-in: [495adbf6e7] user: dgp branch: dgp-tcs-rewrite, size: 177402
2013-07-15
20:16
Build CompileBasicNArgCommand on top of TclCompileInvocation. file: [5a319e11a5] check-in: [eefc49c5e0] user: dgp branch: dgp-tcs-rewrite, size: 178729
2013-07-10
03:28
Remove the (now unused) wlineat arguments. file: [caca87b16e] check-in: [28e986f628] user: dgp branch: dgp-tcs-rewrite, size: 178730
03:17
Revise the litInfo table so that it gets built later (in TclInitByteCodeObj) from a simpler store of data that can unwind. file: [002b244081] check-in: [cd1f5a64d4] user: dgp branch: dgp-tcs-rewrite, size: 178794
2013-07-09
20:37
Tentative Work In Progress unwinding TIP 280 line information. file: [0bc86fbc65] check-in: [fc79e08504] user: dgp branch: dgp-tcs-rewrite, size: 179918
2013-07-08
23:02
Use the TokenAfter() macro. file: [fdf6f82f21] check-in: [8b4182f53a] user: dgp branch: dgp-tcs-rewrite, size: 179359
22:36
Use TIP 280 macros. file: [5dbc8384fb] check-in: [6c074bf665] user: dgp branch: dgp-tcs-rewrite, size: 179409
19:29
Factor out compiling the Command literal. file: [e70c6b0b69] check-in: [07154b5b9c] user: dgp branch: dgp-tcs-rewrite, size: 179538
18:08
Plug memory leak; Break three compilation mechanisms into routines. file: [aae61259d1] check-in: [1be8ee0aab] user: dgp branch: dgp-tcs-rewrite, size: 179684
15:39
Move TIP 280 and command extent housekeeping to the periphery. file: [c3c8eaa236] check-in: [98d911f411] user: dgp branch: dgp-tcs-rewrite, size: 177837
15:24
Defer expansion request detection as much as possible. file: [a7e4a7635b] check-in: [b5995f92b3] user: dgp branch: dgp-tcs-rewrite, size: 177837
15:00
Consolidate the StartExpanding() calls. file: [c377b89ec5] check-in: [92ab99b072] user: dgp branch: dgp-tcs-rewrite, size: 177538
14:31
The routines StartExpanding() and EnterCmdWordData() are orthogonal, so it's ok to reverse the order in which they are called. file: [cb19c35127] check-in: [33fae79cbd] user: dgp branch: dgp-tcs-rewrite, size: 177649
2013-07-07
11:57
merge trunk file: [5e338a7142] check-in: [da2f2cfb27] user: dkf branch: dkf-improved-disassembler, size: 142847
2013-07-05
19:54
merge trunk file: [1b4407ae7e] check-in: [d26213e0bd] user: dgp branch: dgp-tcs-rewrite, size: 177650
2013-07-02
10:36
comment improvements file: [b34db38b55] check-in: [4bf4d3191d] user: dgp branch: dgp-tcs-rewrite, size: 177575
2013-07-01
20:58
More Work In Progress. file: [1045166221] check-in: [579d4e455f] user: dgp branch: dgp-tcs-rewrite, size: 176583
2013-06-28
02:58
More elimination of error message litter to fix [Bug 20a81392ec]. file: [7dc7ae88ad] check-in: [2b4ecf6ecb] user: dgp branch: dgp-tcs-rewrite, size: 175885
2013-06-27
20:10
Stop the compileProc routines leaving behind error messages in interp. (Nicer way to solve [Bug 20a81392ec].) Make simplifications in TclCompileScript() make possible by the new structure. Still a work in progress. file: [e65d32da32] check-in: [0a9f3b2935] user: dgp branch: dgp-tcs-rewrite, size: 176110
13:11
plug memory leaks file: [2698d40a90] check-in: [c5dcd6efaa] user: dgp branch: dgp-tcs-rewrite, size: 176415
12:26
merge step from trunk file: [fd03235e68] check-in: [86a495fc78] user: dgp branch: dgp-refactor, size: 162982
2013-06-26
16:06
Fix bytecode ranges in the cmdMapPtr. still leaky. file: [8389d1c1b2] check-in: [f6a18ccded] user: dgp branch: dgp-tcs-rewrite, size: 176375
03:46
A few bug fixes from failing tests; still leaky. file: [6e1fc2bd2c] check-in: [c7302407ae] user: dgp branch: dgp-tcs-rewrite, size: 176277
2013-06-25
20:22
merge trunk file: [be5a46efc3] check-in: [49f14bbea9] user: dgp branch: dgp-tcs-rewrite, size: 176092
20:22
Nearly functional now, but leaky and not yet as tidy as I'm hoping for. file: [c37348ce8b] check-in: [97f68093e1] user: dgp branch: dgp-tcs-rewrite, size: 176083
19:23
Replace always true test with assertion. file: [324ba00989] check-in: [131df98507] user: dgp branch: trunk, size: 164962
15:01
merge trunk file: [be901a9dde] check-in: [2ee54f2f83] user: dgp branch: dgp-tcs-rewrite, size: 167738
15:01
Make more use of the CompileTokens() macro. file: [12dbe1db48] check-in: [dfc55c5a38] user: dgp branch: trunk, size: 164953
14:19
Branch for rewriting TclCompileScript() and related routines, with the intent to generally simplify and make more readable, as well as find and eliminate duplication with ensemble machinery and improve mergeability to other branches. Work in Progress. Doesn't work at all right now. file: [0e31afd34e] check-in: [8297f30f00] user: dgp branch: dgp-tcs-rewrite, size: 167840
2013-06-20
14:20
TclCompileScript() should not overwrite envPtr->numSrcBytes. The envPtr already has the right value stored in it. file: [681c5302bd] check-in: [e346706482] user: dgp branch: trunk, size: 165055
14:17
TclCompileScript() should not overwrite envPtr->numSrcBytes. The envPtr already has the right value stored in it. file: [5f3a954d84] check-in: [349fd09957] user: dgp branch: core-8-5-branch, size: 132864
11:05
Properly encode more operand types to reduce the number of special cases in the disassembler. file: [8defc62e7e] check-in: [9d361e7c74] user: dkf branch: dkf-improved-disassembler, size: 142979
2013-06-19
22:46
merge trunk file: [45bc2849c0] check-in: [8d4c7580ce] user: dkf branch: dkf-improved-disassembler, size: 142959
20:00
merge trunk file: [b494b1ba24] check-in: [4b848557de] user: dgp branch: dgp-refactor, size: 163080
19:33
More use of simplifying macros. Replace dynamic allocation with automatic storage on the call stack. file: [77df71670d] check-in: [bf171b6b51] user: dgp branch: trunk, size: 165094
2013-06-13
20:37
Repair the panics in the test suite. file: [a204b08492] check-in: [05d512a0d0] user: dgp branch: dgp-refactor, size: 163223
15:08
Merge to next conflict resolution. Result has panics in test suite. file: [fa939e4095] check-in: [c791a1eece] user: dgp branch: dgp-refactor, size: 163053
14:50
merge trunk to the next conflict resolution file: [c918483604] check-in: [b7f61fa3c7] user: dgp branch: dgp-refactor, size: 162933
14:03
Merge trunk to next conflict resolution. file: [1d6331ed19] check-in: [b88278df21] user: dgp branch: dgp-refactor, size: 166950
13:49
Merge trunk to first conflict resolution. file: [c967cae59b] check-in: [f3790e370e] user: dgp branch: dgp-refactor, size: 164382
2013-06-11
21:40
merge trunk file: [b5b8dd704e] check-in: [16ef96c190] user: dkf branch: dkf-improved-disassembler, size: 143165
20:45
merge trunk file: [f1b8553c26] check-in: [f38f08056c] user: dgp branch: mig-review, size: 165436
20:38
Select improvements in stack depth estimates brought over from mig-review. Mostly these are just simplifications, removing code that wasn't needed. Some changes make the stack depth estimate more accurate instruction by instruction. file: [5014f15467] check-in: [c438852c5f] user: dgp branch: trunk, size: 165300
19:41
Repairs to compile/exec debugging output. file: [7fe2ea1cf0] check-in: [31ab051598] user: dgp branch: trunk, size: 165393
08:19
Move the disassembler to its own file. file: [1cb6ea79f1] check-in: [d5d42f1b36] user: dkf branch: dkf-improved-disassembler, size: 143136
05:26
More tidying of stack management code. file: [67bcd3ebcf] check-in: [cca1b62768] user: dgp branch: mig-review, size: 165497
2013-06-10
16:25
Fix stack estimates for INST_EXPAND_DROP. file: [45b32cb2e2] check-in: [ed2c0d0cc7] user: dgp branch: mig-review, size: 165636
03:25
merge near trunk file: [515a3d703a] check-in: [a2f6edc051] user: dgp branch: mig-review, size: 165703
2013-06-08
23:35
More informative comment describing INST_SYNTAX. file: [4ed3e024cc] check-in: [b51448551b] user: dkf branch: trunk, size: 165271
2013-06-06
19:29
Progress getting more stack estimates correct. Exceptions are still the hard part. file: [10b1f6f9da] check-in: [2081ac3e11] user: dgp branch: mig-review, size: 165616
2013-06-05
21:44
merge trunk file: [c2a111d5b7] check-in: [0d7b5d2fb0] user: dkf branch: mig-review, size: 165382
20:55
Corrected wrong information about instruction width that was causing an optimizer crash. file: [f7b7aef207] check-in: [86379e17df] user: dkf branch: dkf-bytecode-optimizer, size: 165184
18:12
Get stack depth adjustments right for INST_DONE opimized [return] compile. file: [ac169334af] check-in: [2b62dc5fb5] user: dgp branch: mig-review, size: 169868
16:09
Debug printing for [subst] compiles file: [a6fa8ce8cb] check-in: [fffd1d6dfa] user: dgp branch: mig-review, size: 169928
16:07
Repair merge of instruction table file: [8e24fe6a99] check-in: [2994094c72] user: dgp branch: mig-review, size: 169806
12:34
More cleaning up; factor out optimizer to new file. Some weird problems still. file: [e04ae1223b] check-in: [585a8c7af2] user: dkf branch: dkf-bytecode-optimizer, size: 165184
11:59
merge trunk file: [a51d4d259c] check-in: [0208fd3481] user: dgp branch: mistake, size: 169806
07:19
Stack cleanup works now even in the most evil expansion cases. file: [7a38843388] check-in: [5f597cd627] user: dkf branch: dkf-compile-improvements, size: 169670
2013-06-03
22:38
merge trunk file: [4b5389a328] check-in: [cdfdeca7cf] user: dgp branch: mig-review, size: 167235
14:57
Next stage of fixing the break/continue generation. file: [bc41e3959c] check-in: [c1d4474810] user: dkf branch: dkf-compile-improvements, size: 167213
09:37
Generate [continue] optimally in [for] next clauses. Add tests for Bug 3614226. file: [d8d18510b0] check-in: [0244245364] user: dkf branch: dkf-compile-improvements, size: 167099
2013-06-02
17:41
Many improvements to code generation of efficient break and continue. file: [81976948dd] check-in: [4ee4a3fe46] user: dkf branch: dkf-compile-improvements, size: 165922
2013-06-01
21:05
Getting better at doing more efficient break/continue instruction handling. file: [f55aca6d47] check-in: [5d2383cba4] user: dkf branch: dkf-compile-improvements, size: 162157
04:05
Work in progress auditing the stack usage estimates of the bytecode compiler routines. Much of this code is ugly and will never find a place on the trunk, but the problems it pinpoints will be fixed there. This is now at the point where the test suite of a --enable-symbols=all build will usefully panic on those tests where stack estimates are not correct (or where the auditing code itself is still faulty). file: [5e851cb337] check-in: [f77c2158c2] user: dgp branch: mig-review, size: 159258
2013-05-30
23:29
Experimental super-stack-estimate checker. file: [bd10edd97b] check-in: [eb37a3ef11] user: dgp branch: mig-review, size: 159258
10:57
derp file: [648c6d10fe] check-in: [204a8cab40] user: dkf branch: dkf-compile-improvements, size: 160984
10:55
Working towards the next batch of optimizations. file: [0789f8417d] check-in: [3b09d7b08a] user: dkf branch: dkf-compile-improvements, size: 160996
2013-05-29
17:28
merge trunk file: [64674b2119] check-in: [b6d8bbff1b] user: dgp branch: dgp-refactor, size: 156399
17:20
3614102 - Reset stack housekeeping when compileProc fails. file: [95291f8e9f] check-in: [83e8b2e153] user: dgp branch: trunk, size: 159122
16:08
merge trunk file: [ba8020bba8] check-in: [3d9e134de3] user: dgp branch: dgp-refactor, size: 156359
14:37
Stop emitting the instructions INST_*_SCALAR_STK*. They are identical to their INST_*_STK* counterparts. Having done that, it is clear the "simpleVarName" return from TclPushVarName provides nothing of use to any of its callers. Eliminate that. Also make TPVN return void, instead of int. Bring the TPVN header comments up to date; they were quite rotten. file: [0bb06705f6] check-in: [134b3c0bfc] user: dgp branch: trunk, size: 159046
2013-05-25
03:26
Repair some stack depth housekeeping. file: [66e33e8c83] check-in: [3ebbf5fefa] user: dgp branch: trunk, size: 159053
2013-05-23
18:13
merge trunk file: [c6a3043036] check-in: [19a741f795] user: dgp branch: dgp-refactor, size: 156366
2013-05-22
16:39
Removed const qualifier causing the HP native cc to error out (error 1675: Duplicate type qualifier "const"). file: [ee8a869c17] check-in: [6d9213be40] user: andreask branch: trunk, size: 159053
2013-05-17
17:56
Merge trunk. Conflicts resolved. Branch builds and runs ok. Still does not have the new expand-supporting compile of [list] enabled. file: [3581ae66ef] check-in: [67c1291e8a] user: dgp branch: dgp-refactor, size: 156372
11:02
Remove useless variables. file: [639483232f] check-in: [1b1edcdcc7] user: dkf branch: trunk, size: 159059
2013-05-16
13:24
Confirmed that every caller of TclProcCompileProc() arranges for the procPtr and nsPtr arguments: nsPtr == procPtr->cmdPtr->nsPtr. This makes the test in TclCompileScript() useless. TCS() will always compile in the current namespace of the interp. Remove the code that obfuscates that fact. file: [c786f4664e] check-in: [9424cfeac1] user: dgp branch: dkf-review, size: 159059
2013-05-15
15:18
Disabled some code in TclCompileScript(). Test suite results are unaffected. Does this indicate a gap in the test suite, or is this code truly useless? file: [5ef38a1bf7] check-in: [e7415ccfa3] user: dgp branch: dkf-review, size: 159250
13:27
Trunk merged. Conflicts resolved. New functionality not yet enabled. file: [0ed53cd118] check-in: [775ad8abf2] user: dgp branch: dgp-refactor, size: 156237
10:56
Removing a few changes that were not actually needed, and correcting comments. file: [9fe2bf63fe] check-in: [e112c51022] user: dkf branch: trunk, size: 159230
10:41
merge trunk file: [bf4c4ec63a] check-in: [c76fb949b9] user: dkf branch: dkf-bcc-optimize, size: 159374
10:38
A better technique for [list {*}blah]. Remove the INST_LIST_EXPANDED opcode (and the complex machinery associated with it) as as it is no longer needed. file: [60b938d4ee] check-in: [a42aa0a38c] user: dkf branch: dkf-bcc-optimize, size: 159371
2013-05-13
14:23
compiler warning file: [b9f9381c99] check-in: [49281094f1] user: dgp branch: trunk, size: 159196
14:12
Solved with a Tcl_ResetResult() call. file: [7621e88a7a] check-in: [2569f069d9] user: dgp branch: dgp-refactor, size: 156243
14:05
Cause of the failing tests is the second pass optimizing compile. The second pass is building on remnants of the first pass in some situations. Disable until fixed. file: [294b208dcb] check-in: [49a20875f0] user: dgp branch: dgp-refactor, size: 156222
12:53
Bring merge up to date with the trunk. Still suffers two test failures. file: [ee69f80ca6] check-in: [4700365c09] user: dgp branch: dgp-refactor, size: 156217
12:37
Create stanza to set INST_LIST_EXPANDED to replace function lost in merge. Still have two failing tests in area of -errorinfo construction, indicating more faults in the merge. file: [568222a48a] check-in: [65eb9f36e1] user: dgp branch: dgp-refactor, size: 155894
11:18
merge file: [e5d2d5dbe3] check-in: [f4dd83a22d] user: dgp branch: dgp-refactor, size: 155256
2013-05-12
00:42
Corrected the stack balancing in the special [list {*} ] compiler. file: [44146e4d84] check-in: [037223b708] user: dkf branch: dkf-bcc-optimize, size: 159193
2013-05-11
20:02
Partial fix: still ongoing file: [10af9495dd] check-in: [faad6bf676] user: dkf branch: dkf-bcc-optimize, size: 158851
2013-05-10
12:57
Optimizations and general bytecode generation improvements. file: [d15d79b537] check-in: [18bcecceea] user: dkf branch: dkf-bcc-optimize, size: 158849
2013-03-20
14:10
merge trunk file: [e3e7f592d4] check-in: [5a5d0ec834] user: mig branch: mig-no280, size: 131766
2013-03-11
01:42
Bring over the literal reform ideas. file: [2951261bd2] check-in: [6333182519] user: dgp branch: dgp-refactor, size: 148296
2013-03-10
16:13
Don't scan the whole literal list seeking the one value that can cause a circular reference, when we already have the machinery to look it up directly. file: [00328f1f0f] check-in: [674a1ecef4] user: dgp branch: dgp-literal-reform, size: 151473
15:10
When possible, move literals instead of copying them. file: [16cd4fbbe3] check-in: [bf1bea5357] user: dgp branch: dgp-literal-reform, size: 151675
2013-03-08
21:24
3607372 Correct literal refcounting. file: [958ce1b00e] check-in: [f1a5efa5f0] user: dgp branch: dgp-literal-reform, size: 151202
21:14
3607372 Correct literal refcounting. file: [9490853b40] check-in: [1c1952f439] user: dgp branch: bug-3607372, size: 151375
19:11
Now change to store a simple array of (Tcl_Obj *) literal values in CompileEnv. WARNING! This will break compat with the TclPro tclcompiler app, and likely it successors. file: [475ad13bd3] check-in: [8d274fcbcf] user: dgp branch: dgp-literal-reform, size: 151181
2013-03-07
21:30
Work in progress reworking how literals are stored. First effort is replacing the string based local custom LiteralTable for per-CompileEnv literals with standard pointer based Tcl_HashTable. Contrary to comments the literal table plays no role in value sharing. Its sole purpose is to eliminate dup references in the literalArrayPtr. In current state, code suffers from mem leaks and panics. At least partially related to Bug 3607246. file: [dc8937664a] check-in: [8de868a03b] user: dgp branch: dgp-literal-reform, size: 151211
2013-03-05
23:44
merge trunk file: [82a0a99eac] check-in: [9b6195c25c] user: mig branch: mig-no280, size: 131745
22:35
merge trunk; resolve conflicts file: [650338d406] check-in: [5e76cf24a8] user: dgp branch: dgp-refactor, size: 148177
22:13
New internal routine TclFetchLiteral() for better CompileEnv encapsulation. file: [5ad282d5ae] check-in: [b98f550ddf] user: dgp branch: trunk, size: 151354
20:19
Remove from tclCompile.h declarations used in only one source file. file: [b24ed9afeb] check-in: [0db2298136] user: dgp branch: trunk, size: 151397
20:16
Remove from tclCompile.h declarations used in only one source file. file: [d9eb2de85b] check-in: [df46919393] user: dgp branch: core-8-5-branch, size: 132904
2013-02-28
17:09
merge trunk file: [09f9f01967] check-in: [e37a95335b] user: dgp branch: dgp-refactor, size: 148162
17:08
Revise TclReleaseLiteral() to tolerate a NULL interp argument. Update callers and revise mistaken comments. file: [47a75194bf] check-in: [c192ffaad6] user: dgp branch: trunk, size: 151343
2013-02-24
12:17
merge trunk file: [af4245c1a3] check-in: [8738bbd988] user: mig branch: mig-no280, size: 131896
2013-02-23
04:08
New BA routines _Size() and Copy(). Use BA_AuxData in CompileEnv. file: [c37f2b554f] check-in: [de39cce7e6] user: dgp branch: dgp-refactor, size: 148353
2013-02-22
19:24
refactor so that all access to auxDataArrayPtr field are in tclCompile.c. file: [b2831b2aae] check-in: [a5c5bd22d0] user: dgp branch: dgp-refactor, size: 149031
19:17
merge trunk file: [d64d643407] check-in: [fe0d62b5d5] user: dgp branch: dgp-refactor, size: 148472
19:05
Shift more burden of smart cleanup onto the TclFreeCompileEnv() routine. Stop crashes when the hookProc raises an error. file: [ca53be7305] check-in: [541899f7c7] user: dgp branch: trunk, size: 151534
18:54
Restore the ReleaseCmdWordData cleanup routine from 8.4, to plug very rare memory leak. file: [171d375221] check-in: [a616d4b120] user: dgp branch: core-8-5-branch, size: 132853
18:26
Shift more burden of smart cleanup onto the TclFreeCompileEnv() routine. Stop crashes when the hookProc raises an error. file: [433fbd6aed] check-in: [06abbd6e02] user: dgp branch: core-8-5-branch, size: 132720
18:24
Use iPtr field instead of source field to mark a CompileEnv as uninitialized. envPtr->source == NULL can actually be valid (at least when merging forward). file: [2c972d1ae0] check-in: [5c01d3bd75] user: dgp branch: core-8-4-branch, size: 127763
2013-02-21
21:14
Protect against multiple uses of a CompileEnv with only one initialization. Make TclFreeCompileEnv smarter about cleanup so all callers do not have to be. Revise TclSetByteCodeFromAny() so that when hookProc raises an error, bytecode is not generated. This was rumored to cause crashes. file: [956d8a0d4d] check-in: [a9d0d6fd73] user: dgp branch: aku-review, size: 127771
2013-02-19
15:47
Revise Append and Detach ops on BrodnikArray to work with pointers. This makes more data copying optional at the caller's discretion. file: [4b75732eb1] check-in: [9215a31935] user: dgp branch: dgp-refactor, size: 147915
2013-02-15
20:27
Replace the JumpFixupArray with a BrodnikArray of JumpFixup. file: [674a3524af] check-in: [affdb3a496] user: dgp branch: dgp-refactor, size: 147892
18:51
Convert the array of CmdLocation in the CompileEnv struct to a BrodnikArray. file: [fd73b028dd] check-in: [44ba7ef101] user: dgp branch: dgp-refactor, size: 150718
14:21
merge trunk: file: [292f813631] check-in: [f95a1f3321] user: dgp branch: dgp-refactor, size: 151287
2013-02-14
09:01
Improve some comments and quoting, no change in functionality. Only check for refCount == 0x61616161 for TCL_MEM_DEBUG build. file: [3fd5079f68] check-in: [37c5e68b61] user: jan.nijtmans branch: trunk, size: 150989
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: [87e1b45d06] check-in: [271dbffaf7] user: jan.nijtmans branch: no-register-objtypes, size: 149703
13:50
merge trunk file: [eb632b8a80] check-in: [76befed959] user: mig branch: mig-alloc-reform, size: 150876
2013-02-08
11:48
merge trunk file: [970236ef28] check-in: [9af350fd79] user: mig branch: mig-no280, size: 131544
2013-02-05
21:34
merge trunk file: [b9945ad9e1] check-in: [0b573f25cb] user: dgp branch: dgp-refactor, size: 151230
2013-02-04
10:51
Eliminate all Tcl_ConvertToType calls and all direct calls to typePtr->setFromAnyProc (except the call from inside the Tcl_ConvertToType function) from the Tcl core. file: [017e1f4442] check-in: [af25d8dc8c] user: jan.nijtmans branch: trunk, size: 150932
2013-02-01
09:46
merge trunk file: [4aa13b9ce8] check-in: [1d3d013041] user: mig branch: mig-no280, size: 131556
2013-01-31
11:41
Merge core-8-5-branch. Optimize tclCmdNameType the same way. file: [93f500201e] check-in: [b4cdb58176] user: jan.nijtmans branch: no-shimmer-string-length, size: 132569
10:31
merge core-8-5-branch file: [5b3ee2bdd3] check-in: [f9be79d941] user: jan.nijtmans branch: trunk, size: 150944
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: [0313863184] check-in: [17354de1e8] user: jan.nijtmans branch: core-8-5-branch, size: 132351
07:56
Merge trunk Handle caching of string intRep in more internal objTypes file: [c5746ffd2c] check-in: [c5f0ac6cc3] user: jan.nijtmans branch: no-shimmer-string-length, size: 133114
2013-01-30
08:19
merge changes from trunk file: [722850fb86] check-in: [fc2438ef5f] user: dkf branch: novem-no-startcmd, size: 151373
2013-01-29
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: [2e446012a0] check-in: [4918a10d3d] user: jan.nijtmans branch: no-shimmer-string-length, size: 132543
2013-01-21
18:27
remove tip348: errorstack file: [9cb18b41bc] check-in: [68ed8e9957] user: mig branch: mig-no280, size: 131678
2013-01-19
04:02
isolate the compiler/engine subsystem - preparing to move them out of generic and permit plugging in other compiler/engines file: [809a89ab75] check-in: [563e43ef46] user: mig branch: trunk, size: 131824
2013-01-17
16:18
more removals, more separation of concerns: destruction almost complete TEBC now almost split in two: a command dispatcher and an expr evaluator. As their internal workings better hidden from the rest of Tcl, experiments to improve on each aspect are now easier. file: [ae1af7f0d4] check-in: [ee6fe20b03] user: mig branch: mig-strip-brutal, size: 52899
2013-01-15
23:08
TEBC is almost gone, down to 44 insts mostly for math. No commands are compiled, all (including [set]) are dispatched via EvalObjv. This is just a removal, redesign and reconstruction still pending ... file: [80ab065380] check-in: [da8004af56] user: mig branch: mig-strip-brutal, size: 70101
2013-01-14
12:14
remove tip348: errorstack file: [de8c45e7d9] check-in: [9d2ae9006e] user: mig branch: mig-no280, size: 131650
11:00
remove tip348: errorstack file: [697542a653] check-in: [a5fe7b7d06] user: mig branch: mig-strip-brutal, size: 131622
2013-01-10
21:44
merge mig-nre-mods file: [a1eabc9d21] check-in: [0968a8dae3] user: mig branch: mig-no280, size: 135989
17:22
Merge trunk through conflict-free, failure-free checkins. file: [d83525e8b7] check-in: [4c9fad4837] user: dgp branch: dgp-refactor, size: 151364
02:38
merge mig-nre-mods file: [f538fb5bf1] check-in: [7a87611416] user: mig branch: mig-strip-brutal, size: 135961
2013-01-09
17:32
more NRE abstraction file: [381a42dead] check-in: [e3caace30c] user: mig branch: mig-nre-mods, size: 151038
2013-01-08
01:26
merge trunk file: [4c45a46e25] check-in: [bc7170d76c] user: mig branch: mig-no280, size: 136017
2013-01-03
14:07
merge main dev branch file: [442f2fcd43] check-in: [b7fcd3c212] user: dkf branch: dkf-bytecode-8.6/next, size: 151246
11:59
merge mig-alloc-reform file: [edd7c7f482] check-in: [fe20502465] user: mig branch: mig-strip-brutal, size: 135989
11:45
merge trunk file: [d027428abb] check-in: [c711be5b6a] user: mig branch: mig-alloc-reform, size: 151010
2013-01-02
15:10
Passing more tests. file: [3d492eb63f] check-in: [f3f4dfddde] user: dkf branch: dkf-bytecode-8.6-main, size: 151066
2013-01-01
18:38
merged mig-alloc-reform: MEM_DEBUG is gone, as is the Tcl stack and TclStackAlloc. See also README.mig-alloc-reform file: [a024809430] check-in: [0b98f38a1d] user: mig branch: mig-strip-brutal, size: 135759
16:54
merge trunk file: [4150a24488] check-in: [4c4fb7eeec] user: mig branch: mig-no280, size: 135787
2012-12-31
02:39
Working towards more efficient treatment of non-bytecoded ensemble subcommands. file: [a24e046885] check-in: [8e445bdbe1] user: dkf branch: dkf-bytecode-8.6-main, size: 151052
2012-12-13
10:54
add special opcodes for common forms of stack manipulations file: [52aa4a61d2] check-in: [79822eefc6] user: dkf branch: novem-no-startcmd, size: 151098
2012-12-11
15:55
refactor all macros for code issuing into tclCompile.h file: [e3947a3ed6] check-in: [bb1a189497] user: dkf branch: novem-no-startcmd, size: 150841
2012-12-04
00:01
Cleaning up some of the internals of TIP #280. Replaced the hashtables keyed by pointers to Proc and ByteCode structures and providing associated information with fields in the structures, direct pointers to the information. The change makes the information accessible through a single pointer dereference instead of a hashtable search. Some information (Tcl_Obj* related) could not be inlined in this way and likely requires a larger reworking of parser and script structures. file: [6cfb3c7eb8] check-in: [d2cb52feda] user: andreask branch: novem-ak-iframe-direct, size: 150625
2012-12-03
11:59
fix math problem; remove duplicate opcodes file: [aaa633238d] check-in: [01ee59ac30] user: dkf branch: novem-no-startcmd, size: 144742
2012-12-02
23:24
Experimenting with not generating INST_START_CMD where it wouldn't be useful. Also removed INST_DICT_DONE; it wasn't ever issued. file: [1733365d93] check-in: [96f784113e] user: dkf branch: novem-no-startcmd, size: 144996
2012-11-30
07:55
Improve behavior when exception ranges need retraction. file: [c771a94dda] check-in: [bcd72865d9] user: dkf branch: novem-reduced-bytecodes, size: 144881
04:14
Prevent the first few panics when testing on a 64-bit system. file: [9234ec4ad6] check-in: [5447c2a1d7] user: dgp branch: novem-64bit-sizes, size: 151123
2012-11-29
21:44
Get rid of two unusable bytecodes; they always Tcl_Panic()ed... file: [61152a7092] check-in: [f047f6448e] user: dkf branch: novem-reduced-bytecodes, size: 144633
21:25
Reducing the complexity of the bytecodes as an experiment. file: [00e4e42f97] check-in: [f85f56e089] user: dkf branch: novem-reduced-bytecodes, size: 144888
2012-11-26
15:31
merge trunk file: [bb23d9f8c9] check-in: [cdc837ae05] user: mig branch: mig-alloc-reform, size: 150780
2012-11-21
10:18
more conversion of code, still not running test suite at all file: [111702b074] check-in: [e648a1571f] user: dkf branch: novem-64bit-sizes, size: 151115
00:42
converting to use TCL_STRLEN file: [5d5872eed1] check-in: [2afb72a22d] user: dkf branch: novem-64bit-sizes, size: 150955
2012-11-18
12:41
parser and line number computation engine file: [f763e6acf2] check-in: [717ce64a54] user: dkf branch: novem-64bit-sizes, size: 150954
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: [98dfddf33e] check-in: [11a1d1e174] user: jan.nijtmans branch: tcl_nosize, size: 150996
2012-11-16
17:23
merge Jan's contribution file: [b3d886b39d] check-in: [2926909462] user: dkf branch: novem-64bit-sizes, size: 150914
15:40
conversion of many files file: [91a61a424b] check-in: [30983e25c6] user: dkf branch: novem-64bit-sizes, size: 150880
14:15
More work done. Still I am finding places where int should be size_t and reverse. file: [9287a2d0b1] check-in: [d348e679f7] user: jan.nijtmans branch: novem-64bit-sizes, size: 150862
2012-11-08
21:46
merge trunk; resolve conflicts file: [dfbc1071ab] check-in: [b9106ac438] user: dgp branch: dgp-refactor, size: 151134
2012-11-05
15:33
merge main dev branch file: [b8e6d0c979] check-in: [bd2cb80131] user: dkf branch: dkf-bytecode-8.6/next, size: 151016
14:34
Added compilation of [array exists], [array set] and [array unset]. Fixed a whole bunch of issues with opcode issuing that were causing problems with stack depth calculations. file: [40d3890546] check-in: [7c61073736] user: dkf branch: dkf-bytecode-8.6-main, size: 150836
2012-11-03
20:21
Added compilation of [string last] and improved the compilation of [string range]. This in turn enables compilation of [namespace qualifiers] and [namespace tail] (also done). file: [a82aa367a5] check-in: [75cbbc5cf0] user: dkf branch: dkf-bytecode-8.6-main, size: 149199
12:48
Added compilation of [info object isa object] (i.e., object verification). file: [648bba610e] check-in: [4d5db00353] user: dkf branch: dkf-bytecode-8.6-main, size: 148829
2012-11-02
20:39
reorder to preserve main BC development branch sequence better file: [285c3237f3] check-in: [ef6191e5a7] user: dkf branch: dkf-bytecode-8.6/next, size: 148705
20:25
merge dkf-compile-misc-info file: [c3f8aa4bcf] check-in: [f0a7031a74] user: dkf branch: dkf-bytecode-8.6/next, size: 148703
18:13
Added more TclOO introspection bytecodes ([info object class], [info object namespace]). Also moved TclOO-in-8.6 to using the main Tcl internal ensemble builder. file: [9c971991ac] check-in: [294a3d3bb9] user: dkf branch: dkf-bytecode-8.6-main, size: 148524
2012-11-01
20:40
Working towards a BCCed [next]. This version <i>almost</i> works, except for a problem with restoring the context namespace upon return (which produces very strange results!) file: [d3be0e2e36] check-in: [6344562868] user: dkf branch: dkf-bytecode-8.6/next, size: 148341
18:06
Added compilation of [tailcall]. Not a particularly efficient compilation though; it does not detect tailcall-of-self as a special case. file: [fbd19a835a] check-in: [2968fdc5d5] user: dkf branch: dkf-bytecode-8.6-main, size: 148162
16:47
Added compilation of [dict create] and [dict merge]. file: [84dec4b96c] check-in: [b8eaa3a98a] user: dkf branch: dkf-bytecode-8.6-main, size: 147954
2012-10-30
22:16
Added [dict exists] compilation; implementation is 95% shared with [dict get]. file: [da9539accd] check-in: [6859d16fe4] user: dkf branch: dkf-bytecode-8.6-main, size: 147742
18:20
Compilation of [string first] and [string range] (with constant indices). file: [6586e91d27] check-in: [e756e9bdac] user: dkf branch: dkf-bytecode-8.6-main, size: 147382
2012-10-29
21:35
Added compilation of simplest practical case of [string map]. file: [0c5f14ba74] check-in: [b1a427318b] user: dkf branch: dkf-bytecode-8.6-main, size: 147037
2012-10-26
13:13
Working towards a BCCed [yield]; this doesn't work right now. file: [6b07d08033] check-in: [af49d8d62b] user: dkf branch: dkf-bytecode-8.6/yield, size: 146829
07:32
Compile [namespace which -command]; big performance saving in some contexts. file: [6971dd9b4f] check-in: [a8d554940e] user: dkf branch: dkf-bytecode-8.6-main, size: 146580
2012-10-19
14:17
yet another small introspector: [self] file: [2a98b9de6c] check-in: [7d0c06ec95] user: dkf branch: dkf-bytecode-8.6-main, size: 146311
2012-08-04
07:47
merge trunk file: [50313ff973] check-in: [942e699a9b] user: dkf branch: dkf-bytecode-8.6-main, size: 146138
2012-07-03
15:24
merge trunk file: [29c5cd7f9d] check-in: [cac5eb87de] user: dgp branch: dgp-refactor, size: 146059
14:52
Factor out a number of common patterns of use of Tcl_DStringAppend. file: [0006c0f664] check-in: [4dd736c95f] user: dkf branch: trunk, size: 145504
2012-04-30
20:21
Initial TIP 401 patch file: [c45bdca810] check-in: [e3a37c3439] user: dgp branch: tip-401, size: 145835
2012-04-23
12:30
make some more internal tables const On cygwin, install dll's in /usr/bin, not in /usr/lib file: [94d7250bab] check-in: [6de689d796] user: jan.nijtmans branch: core-8-4-branch, size: 127377
2012-04-04
20:17
some formatting (*.decls) move up #undef, for macro which is conflicting with later stuff. remove some unused cygwin-related code some minor gcc warnings file: [0d923dbbbd] check-in: [904f4fe3fe] user: jan.nijtmans branch: core-8-5-branch, size: 132430
2012-03-05
17:46
merge trunk file: [e26da07c79] check-in: [41e5026e0c] user: dgp branch: dgp-refactor, size: 146312
2012-03-04
16:52
Compilation of misc info sometimes used in high-performance code. file: [604e045ba2] check-in: [2eebfcc371] user: dkf branch: dkf-bytecode-8.6-main, size: 146346
2012-02-17
17:15
Merged core-8-5-branch segfault fix (commits [39f6ebe301] and [a6aa5be5b7]). file: [640694c1d5] check-in: [7135bc0716] user: andreask branch: trunk, size: 145712
17:12
Fix: Removed C99ism (in-block variable declaration) from commit [39f6ebe301] which prevents building with non-gcc compilers, notably AIX, HPUX, Solaris, MSVC6, possibly others. file: [2847696ace] check-in: [a6aa5be5b7] user: andreask branch: core-8-5-branch, size: 132416
15:14
bug fix: avoid segfaulting by deleted interp in RecordByteCodeStats file: [b3da68935f] check-in: [39f6ebe301] user: sebres branch: core-8-5-branch, size: 132401
2011-12-13
17:45
(TclInitAuxDataTypeTable): Extended to register the DictUpdateInfo structure as an AuxData type. For use by tbcload, tclcompiler. file: [399c8b1adf] check-in: [1afb7a55b3] user: andreask branch: trunk, size: 145696
2011-10-27
15:49
merge trunk file: [d67c2e384e] check-in: [66be65105d] user: dgp branch: dgp-refactor, size: 146244
2011-10-03
10:45
Added support for having the dict var itself referenced by LVT index. file: [d066b4d9e7] check-in: [0b8e874e2c] user: dkf branch: dkf-dict-with-compiled, size: 145644
2011-10-02
16:29
Experimental compilation of the [dict with] subcommand. No tests yet, and not yet certain that the added bytecode opcodes are correct; evaluation is still needed (but the test suite does pass...) file: [dc7cd6cf91] check-in: [3e46935f68] user: dkf branch: dkf-dict-with-compiled, size: 145402
2011-09-28
01:39
merge trunk file: [46dce60401] check-in: [0f1d9f3a48] user: mig branch: mig-no280, size: 129841
01:39
merge trunk file: [7e0204a94e] check-in: [12126498b2] user: mig branch: mig-alloc-reform, size: 144835
2011-08-16
19:49
3392070 More complete prevention of Tcl_Obj reference cycles when producing an intrep of ByteCode. file: [ca36488b96] check-in: [eb11820a8e] user: dgp branch: bug-3392070, size: 144891
2011-08-08
19:06
merge trunk file: [f1a9b3f544] check-in: [96034c7aff] user: dgp branch: dgp-refactor, size: 145154
2011-08-02
11:18
merge trunk; FIXME: symbols=mem build broken file: [220ba5314d] check-in: [5e6ff3418b] user: mig branch: mig-no280, size: 129504
11:18
merge trunk; FIXME: symbols=mem build broken file: [5e6ce70c65] check-in: [384901c292] user: mig branch: mig-alloc-reform, size: 144498
2011-07-15
17:56
Avoid segfaults when RecordByteCodeStats() is called in a deleted interp. file: [3674219577] check-in: [609c597cb2] user: dgp branch: trunk, size: 144554
17:53
Avoid segfaults when RecordByteCodeStats() is called in a deleted interp. file: [09c983eedb] check-in: [002be5a1c3] user: dgp branch: core-8-5-branch, size: 132402
17:50
Avoid segfaults when RecordByteCodeStats() is called in a deleted interp. file: [847fea9c9e] check-in: [5313bef77f] user: dgp branch: core-8-4-branch, size: 127352
14:55
3357771 Prevent circular references in values with ByteCode intreps. file: [556bfa2ce9] check-in: [a26a1204dd] user: dgp branch: trunk, size: 144448
2011-07-12
16:05
platform portable type matching in debug prints file: [f2b3dd6042] check-in: [83d26b2944] user: dgp branch: trunk, size: 143972
14:42
wip file: [795bb9ed22] check-in: [cab5f89bf7] user: dgp branch: unproven, size: 127246
2011-07-11
18:47
Type mismatches in *printf calls. file: [0827e5cd96] check-in: [7af66811dc] user: dgp branch: unproven, size: 127175
2011-05-25
13:42
silence compiler warning file: [ed25428c80] check-in: [256e20e731] user: dgp branch: core-8-5-branch, size: 132296
2011-05-24
13:46
merge trunk file: [ee87c63a67] check-in: [f62a607c8e] user: mig branch: mig-alloc-reform, size: 143884
2011-05-17
21:38
Merged core-8-5-branch, fixup of TIP 280 location mapping. file: [ea62ca5205] check-in: [168a79562b] user: andreask branch: trunk, size: 143940
21:26
* generic/tclCompile.c (TclFixupForwardJump): Tracked down and fixed * generic/tclBasic.c (TclArgumentBCEnter): the cause of a violation of my assertion that 'ePtr->nline == objc' in TclArgumentBCEnter. When a bytecode was grown during jump fixup the pc -> command line mapping was not updated. When things aligned just wrong the mapping would direct command A to the data for command B, with a different number of arguments. file: [2233caa95f] check-in: [bbb487eaac] user: andreask branch: core-8-5-branch, size: 132287
2011-05-07
20:39
merge trunk file: [9e8ded2f18] check-in: [eeefcef28f] user: mig branch: mig-no280, size: 128864
19:53
merge trunk file: [54e6c15bbf] check-in: [241f36be4b] user: mig branch: mig-alloc-reform, size: 142277
2011-04-21
13:47
Make sure SetFooFromAny routines react reasonably when passed a NULL interp. file: [c50f8fd905] check-in: [36b0307ba2] user: dgp branch: trunk, size: 142333
13:24
Make sure SetFooFromAny routines react reasonably when passed a NULL interp. file: [290f4d6996] check-in: [0da07d5b1e] user: dgp branch: core-8-5-branch, size: 130680
12:58
Make sure SetFooFromAny routines react reasonably when passed a NULL interp. file: [02aebbdf46] check-in: [2adc132d52] user: dgp branch: core-8-4-branch, size: 127168
2011-04-06
18:18
merge trunk to feature branch file: [3182d23473] check-in: [af182bb0cf] user: mig branch: mig-no280, size: 128783
18:16
merge trunk to feature branch file: [e2c5d62b70] check-in: [611c232145] user: mig branch: mig-alloc-reform, size: 142196
13:09
Don't use MODULE_SCOPE in module implementation, only in declaration. file: [cd7268257e] check-in: [02ace0039f] user: jan.nijtmans branch: trunk, size: 142252
2011-04-04
14:17
Merge to feature branch file: [cf1e2c3926] check-in: [a35d52175c] user: dkf branch: aku-tip-280-cl-perf-trial, size: 142244
2011-03-27
10:21
merge trunk to branch file: [f5ff6d46cd] check-in: [ff627b8a14] user: mig branch: mig-no280, size: 128796
2011-03-26
12:38
merge trunk to feature branch file: [21ae4b3266] check-in: [ff240fb01d] user: mig branch: mig-alloc-reform, size: 142209
11:53
Reduce the number of casts used to manage Tcl_Obj internal representations. file: [eb6e703141] check-in: [b2381061a7] user: dkf branch: trunk, size: 142265
2011-03-24
23:42
branch with tip #280 removed, for perf impact measurements file: [477229b5f6] check-in: [6cbe02a1d6] user: mig branch: mig-no280, size: 128817
2011-03-23
23:23
Trial patch changing the handling of the TIP 280 continuation line data structures to keep expensive operations out of TclFreeObj(). Note: With this change, due to the delayed cleanup of stale data four tests checking core memory leaks fail. file: [77859a06ca] check-in: [2b5c76ad19] user: andreask branch: aku-tip-280-cl-perf-trial, size: 142257
2011-03-15
09:44
retire TclInterpAlloc/Free/Realloc file: [4cc39ccffb] check-in: [15d781d135] user: mig branch: mig-alloc-reform, size: 142222
2011-03-14
15:48
Reduce diffs from trunk, and tidy up some casting matters. file: [3a21d81926] check-in: [56ed611c89] user: dgp branch: dgp-refactor, size: 142878
14:41
merge trunk + update ckfree() and ckalloc() calls file: [ef7ac5944f] check-in: [4ddd1c56f7] user: dgp branch: dgp-refactor, size: 142865
2011-03-13
04:50
rename TclStackAlloc/Free to TclInterpAlloc/Free file: [28400ca342] check-in: [820d67f844] user: mig branch: mig-alloc-reform, size: 142282
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: [c34710c881] check-in: [5574bdd262] user: dkf branch: trunk, size: 142278
2011-03-10
14:36
merge trunk (whitespace!) file: [ded2d9f026] check-in: [b1caff3218] user: dgp branch: dgp-refactor, size: 143344
09:31
MINOR: Formatting fixes, mainly to comments, so code better fits the style in the Engineering Manual. file: [7e5831ba17] check-in: [5cb634a1c1] user: dkf branch: trunk, size: 142748
2011-03-08
13:29
merge trunk file: [07740e7fc9] check-in: [00ea99d359] user: dgp branch: dgp-refactor, size: 143340
2011-03-06
22:33
* generic/tclBasic.c: More replacements of Tcl_UtfBackslash() calls * generic/tclCompile.c: with TclParseBackslash() where possible. * generic/tclCompCmdsSZ.c: * generic/tclParse.c: * generic/tclUtil.c: file: [b7765f0566] check-in: [6b0527ff33] user: dgp branch: trunk, size: 142744
22:19
* generic/tclBasic.c: More replacements of Tcl_UtfBackslash() calls * generic/tclCompile.c: with TclParseBackslash() where possible. * generic/tclParse.c: * generic/tclUtil.c: file: [9f4e90b5cf] check-in: [7d1cc3f816] user: dgp branch: core-8-5-branch, size: 130599
21:40
* generic/tclBasic.c: More replacements of Tcl_UtfBackslash() calls * generic/tclCmdMZ.c: with TclParseBackslash() where possible. * generic/tclCompExpr.c: * generic/tclCompile.c: * generic/tclUtil.c: file: [fd2ea3da70] check-in: [267149f889] user: dgp branch: core-8-4-branch, size: 127089
2011-03-05
12:29
Renamed struct TEOV_callback to the more descriptive NRE_callback. file: [973d209216] check-in: [dbebe03821] user: msofer branch: trunk, size: 142701
2011-03-03
17:14
merge trunk file: [18379a4cec] check-in: [affd89e3ef] user: dgp branch: dgp-refactor, size: 143298
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: [47d1194fcf] check-in: [c64f310d38] user: dgp branch: trunk, size: 142702
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: [519e6cd499] check-in: [79367df0f0] user: dgp branch: core-8-5-branch, size: 130560
2011-03-01
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: [28484250b6] check-in: [90b4acd7bd] user: dgp branch: core-8-4-branch, size: 127072
2011-01-12
15:23
This commit is both no-NRE v2, implemented by subtracting the NRE pieces (*), and update to CVS trunk head of Wednesday Jan 5. (*) no-NRE v1 in the other branch was created in an additive manner from the point where 8.5 was branched from the trunk, by adding all the patches but those for NRE. file: [45c3714079] check-in: [2d93b1436c] user: andreask branch: activestate-nre-excised-variant-2-subtracted, size: 142075
2010-12-30
14:42
merge file: [c3e8e20560] check-in: [45d5c91eaf] user: dgp branch: dgp-refactor, size: 143374
2010-12-15
15:58
Continued comparison of no-nre against head, and updating the latest changes, and/or pieces forgotten in the roll-forward. file: [06c1539bf9] check-in: [26fcf437a2] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 142084
2010-12-11
18:39
merge file: [3a29694fe3] check-in: [c291154f2c] user: kennykb branch: dogeen-assembler-branch, size: 142782
2010-12-10
21:59
[Bug 3129448]: Possible over-allocation on 64-bit platforms, part 2 file: [972f96f780] check-in: [e6ddd08613] user: nijtmans branch: trunk, size: 142779
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: [229f70390c] check-in: [ecb2476c6c] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 137351
14:39
@1576 file: [58d54b3d20] check-in: [ef82386ec6] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 133319
10:15
@1451 file: [92a4f6b6ab] check-in: [1ea47b059c] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 133328
2010-12-06
13:20
@1330 + jump interp, indexobj file: [85df45776e] check-in: [c08c831172] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 133611
12:33
@1300 file: [7c9086e717] check-in: [3f09e6a910] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 133623
2010-12-02
15:49
@1260 file: [b290cc06ae] check-in: [e3ce920ce7] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 133878
10:58
@1090 file: [b032db6db6] check-in: [64d3140aa1] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 133086
2010-12-01
14:48
@921 file: [cfa5372228] check-in: [61b08bf693] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 133059
13:39
@864 + jumps file: [0a4d913e4b] check-in: [0dbcc4b3c6] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 127194
2010-11-30
14:58
@820 file: [3bd2e0548e] check-in: [c7d2796ef4] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 127178
2010-11-29
13:51
@670 file: [89702dbc31] check-in: [2435a4366f] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 127144
2010-11-23
15:23
Next @611, and jumping tclGetDate.yyacc grammar. file: [894edbfcc4] check-in: [b277d95385] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 127133
2010-11-22
16:07
Next @380. OO Stacktraces broken. file: [253e2db65b] check-in: [1713113dd4] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 127205
13:14
Next @251. file: [08f1a5e7f9] check-in: [6e5d8c41eb] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 127104
2010-11-18
17:15
Next, @134 file: [e9aeec154e] check-in: [7fc03e57d1] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 127124
16:17
Next, @81. file: [a52f232be7] check-in: [269075aa4d] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 127021
2010-10-23
15:49
merge file: [6cae7fbae3] check-in: [e0bbf06869] user: kennykb branch: dogeen-assembler-branch, size: 142791
2010-10-21
12:08
merge file: [996c2ea273] check-in: [1640eaf8df] user: dgp branch: dgp-refactor, size: 143383
2010-10-20
20:52
[Patch 2995655] Report inner contexts in [info errorstack] file: [18a0533ef0] check-in: [14d357357c] user: ferrieux branch: trunk, size: 142788
13:48
merge file: [be157e8373] check-in: [edcfea4000] user: dgp branch: dgp-refactor, size: 139057
13:34
* generic/tclCompCmds.c (TclCompileDictForCmd): Update the compilation * generic/tclCompile.c (tclInstructionTable): of [dict for] so that * generic/tclExecute.c (TEBCresume): it no longer makes any use of INST_DICT_DONE now that's not needed, and make it clearer in the implementation of the instruction that it's just a deprecated form of unset operation. Followup to my commit of 2010-10-16. file: [dfae503071] check-in: [12807417a7] user: dkf branch: trunk, size: 138457
01:50
merge file: [94736c6ebd] check-in: [6c4e1f869f] user: kennykb branch: dogeen-assembler-branch, size: 138370
2010-10-15
13:20
merge file: [ae0c15bb97] check-in: [dd4a078176] user: dgp branch: dgp-refactor, size: 138962
2010-10-13
17:10
remove outdated comment file: [be5ed7452a] check-in: [9afc385ea0] user: dgp branch: trunk, size: 138362
16:42
merge file: [cf925ec4d9] check-in: [abe7a85dc2] user: dgp branch: dgp-refactor, size: 139343
16:41
* generic/tclCompile.c: Alternative fix for [Bugs 467523,983660] where * generic/tclExecute.c: sharing of empty scripts is allowed again. file: [1abe2e8573] check-in: [92a9cb47fb] user: dgp branch: trunk, size: 138743
2010-10-09
17:53
merge file: [a935cbc872] check-in: [a4dbca26be] user: kennykb branch: dogeen-assembler-branch, size: 138759
2010-10-07
12:20
merge file: [df9e452946] check-in: [efe0e17144] user: dgp branch: dgp-refactor, size: 139351
2010-10-06
18:38
* generic/tclCompile.c: Prevent writing to the intrep fields of a * tests/subst.test: freed Tcl_Obj. [Bug 3081065] file: [2e05dccaf2] check-in: [fdaf2207d9] user: dgp branch: trunk, size: 138751
2010-09-27
20:46
merge file: [4b5fc586e0] check-in: [21a3ed6049] user: dgp branch: dgp-refactor, size: 139351
20:33
Merged from HEAD. Also replaced a funky NRCallTEBC with the new call TclNRExecuteByteCode. file: [4b2834d0e7] check-in: [f757862662] user: kennykb branch: dogeen-assembler-branch, size: 138759
19:42
* generic/tclBasic.c: [Patch 3072080] (minus the itcl * generic/tclCmdIL.c: update): a saner NRE. * generic/tclCompExpr.c: * generic/tclCompile.c: This makes TclNRExecuteByteCode * generic/tclCompile.h: (ex TEBC) to be a normal NRE * generic/tclExecute.c: citizen: it loses its special status. * generic/tclInt.decls: The logic flow within the BC engine is * generic/tclInt.h: simplified considerably. * generic/tclIntDecls.h: * generic/tclObj.c: * generic/tclProc.c: * generic/tclTest.c: file: [56370ad1d9] check-in: [56c0f34285] user: msofer branch: trunk, size: 138754
2010-09-17
12:55
Merge from HEAD to rmax-ipv6-branch file: [0a6a8abd56] check-in: [70c6ac9692] user: rmax branch: rmax-ipv6-branch, size: 138820
2010-08-23
01:46
merge file: [cf610c8166] check-in: [d7364aad61] user: dgp branch: dgp-refactor, size: 139415
2010-08-22
18:53
Remove many type casts which are no longernecessary as a result of [Patch 3009403]: Signature of Tcl_GetHashKey, Tcl_(Create|Find)HashEntry file: [12c15fc5ed] check-in: [0ca694ea65] user: nijtmans branch: trunk, size: 138820
2010-06-07
17:36
rebranch from HEAD file: [b351d9bb6a] check-in: [f3af08f468] user: rmax branch: rmax-ipv6-branch, size: 138829
2010-05-14
13:31
merge file: [8f7fb9d925] check-in: [384f57f831] user: dgp branch: dgp-refactor, size: 139424
08:22
Correct some comments (Jos Decoster found...) file: [7510175641] check-in: [6266b667b3] user: dkf branch: trunk, size: 138824
2010-04-30
00:19
merge file: [124d8d4906] check-in: [0271b14a9b] user: dgp branch: dgp-refactor, size: 139425
2010-04-29
23:39
* generic/tclCompExpr.c: Slight change in the literal sharing * generic/tclCompile.c: mechanism to avoid shimmering of * generic/tclCompile.h: command names. * generic/tclLiteral.c: file: [aa99f7392c] check-in: [7ff9813649] user: msofer branch: trunk, size: 138828
2010-03-06
03:40
merge updates file: [0c6fcd9455] check-in: [f1f1ac161b] user: dgp branch: dgp-refactor, size: 139556
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: [74ea64cb0b] check-in: [4d8a4f639d] user: dkf branch: trunk, size: 139107
2010-02-25
21:53
merge updates from HEAD file: [596f80b5b6] check-in: [1b11388844] user: dgp branch: dgp-refactor, size: 139568
2010-02-24
10:32
Pure whitespace changes, changing to follow Engineering Manual style. file: [631f3fbb34] check-in: [c81eddebbb] user: dkf branch: trunk, size: 139119
2010-02-19
22:55
tricky merge of both whitespace and logic from HEAD file: [2c44c545f7] check-in: [2973b7aeaf] user: dgp branch: dgp-refactor, size: 139607
14:22
Small changes to align code style with Tcl Engineering Manual file: [a993f099f5] check-in: [06e96addfd] user: dkf branch: trunk, size: 139158
2010-02-17
16:02
merge updates from HEAD file: [cd16ae8d16] check-in: [7810d29dcb] user: dgp branch: dgp-refactor, size: 139811
15:59
Fix error in stack depth calculation for [dict update], correct misleading comment in description of opcode. file: [abcf4d50b4] check-in: [852f2c93e6] user: dkf branch: trunk, size: 139418
2010-02-11
19:51
* generic/tclCompile.c: [Bug 2949302]: Fixed leak of support structures for [info frame] which occured when bytecode compilation fails. file: [3d882aa97a] check-in: [b8c0cb7e13] user: andreas_kupries branch: core-8-4-branch, size: 127160
2010-02-02
20:51
* generic/tclCompile.c: [Bug 2933089]: A literal sharing problem with * generic/tclCompile.h: 'info frame' affects not only 8.6 but 8.5 as * generic/tclExecute.h: well. Backported the fix done in 8.6, without * tests/info.test: changes. New testcase info-39.1. file: [b81f7b3ecd] check-in: [ffce3e0a77] user: andreas_kupries branch: core-8-5-branch, size: 130649
2010-02-01
15:34
merge updates from HEAD file: [35487b3274] check-in: [cdb2a26e74] user: dgp branch: dgp-refactor, size: 139795
2010-01-30
16:33
Make the [unset] command be bytecode compiled. file: [d99b0f969b] check-in: [211541cc9e] user: dkf branch: trunk, size: 139402
2009-11-19
16:51
merge updates from HEAD file: [fb2d67db27] check-in: [7aa1b44845] user: dgp branch: dgp-refactor, size: 139019
2009-11-18
21:59
Eliminate various gcc warnings (in -Wextra mode) file: [d1cc14ca54] check-in: [8780faf488] user: nijtmans branch: trunk, size: 138631
2009-09-24
17:21
merge updates from HEAD file: [9f1d03f00c] check-in: [3e8604eeed] user: dgp branch: dgp-refactor, size: 138991
17:19
TIP #356 IMPLEMENTATION * generic/tcl.decls: Promote internal routine TclNRSubstObj() * generic/tclCmdMZ.c: to public Tcl_NRSubstObj(). Still needs docs. * generic/tclCompile.c: * generic/tclInt.h: * generic/tclDecls.h: make genstubs * generic/tclStubInit.c: file: [2816c332c9] check-in: [2b4e9763d9] user: dgp branch: trunk, size: 138599
2009-09-22
01:36
merge updates from HEAD file: [ea289a91cb] check-in: [c52f6e7b6b] user: dgp branch: dgp-refactor, size: 138988
2009-09-21
16:16
* generic/tclCompile.c: Correct botch in the conversion of Tcl_SubstObj(). Thanks to Kevin Kenny for detection and report. file: [70393437de] check-in: [d1d94a1297] user: dgp branch: trunk, size: 138596
2009-09-17
18:12
merge updates from HEAD file: [ea02a0c636] check-in: [f3920a54fb] user: dgp branch: dgp-refactor, size: 138949
17:58
* generic/tclCompile.c: Re-implement Tcl_SubstObj() as a simple * generic/tclParse.c: wrapper around TclNRSubstObj(). This has * tests/basic.test: the effect of caching compiled bytecode in * tests/parse.test: the value to be substituted. Note that Tcl_SubstObj() now exists only for extensions. Tcl itself no longer makes any use of it. Note also that TclSubstTokens() is now reachable only by Tcl_EvalEx() and Tcl_ParseVar() so tests aiming to test its functioning needed adjustment to still have the intended effect. file: [6ee7c64caa] check-in: [8b27ea0197] user: dgp branch: trunk, size: 138557
2009-09-12
14:35
merge updates from HEAD file: [9c5ee0d127] check-in: [15ff1187a0] user: dgp branch: dgp-refactor, size: 138054
06:43
fix warning file: [aa9f885738] check-in: [21342c54c7] user: das branch: trunk, size: 137662
2009-09-11
20:13
* generic/tclBasic.c: Completed the NR-enabling of [subst]. * generic/tclCmdMZ.c: [Bug 2314561]. * generic/tclCompCmds.c: * generic/tclCompile.c: * generic/tclInt.h: * tests/coroutine.test: * tests/parse.test: file: [7cbfa2970a] check-in: [7748dccef5] user: dgp branch: trunk, size: 137647
2009-09-07
16:19
merge [subst] compiler from HEAD file: [2d43da3e84] check-in: [3facd89387] user: dgp branch: dgp-refactor, size: 133448
2009-09-04
17:33
* generic/tclCompCmds.c (TclCompileSubstCmd): Added a bytecode * generic/tclBasic.c: compiler routine for the [subst] command. * generic/tclCmdMZ.c: This is a partial solution to the need to * generic/tclCompile.c: NR-enable [subst] since bytecode execution is * generic/tclCompile.h: already NR-enabled. [Bug 2314561] Two new * generic/tclExecute.c: bytecode instructions, INST_NOP and * generic/tclInt.h: INST_RETURN_CODE_BRANCH were added to support * generic/tclParse.c: the new routine. INST_RETURN_CODE_BRANCH is * tests/basic.test: likely to be useful in any future effort to * tests/info.test: add a bytecode compiler routine for [try]. * tests/parse.test: file: [be29229b32] check-in: [ef0c2ac861] user: dgp branch: trunk, size: 133056
2009-08-26
05:25
merge updates from HEAD file: [9667437d79] check-in: [f7f5b9785c] user: dgp branch: dgp-refactor, size: 132743
02:26
silence compiler warnings file: [b1b7864ac5] check-in: [d7d129a6b6] user: dgp branch: core-8-5-branch, size: 130588
02:25
silence compiler warnings file: [8ab4c7d087] check-in: [063cb302a6] user: dgp branch: core-8-4-branch, size: 126479
2009-08-25
23:20
fix warnings file: [da9c263fe9] check-in: [f84de2f80a] user: das branch: trunk, size: 132128
21:03
* generic/tclBasic.c (Tcl_CreateInterp, Tcl_EvalTokensStandard, Tcl_EvalEx, TclEvalEx, TclAdvanceContinuations, TclNREvalObjEx): * generic/tclCmdMZ.c (Tcl_SwitchObjCmd, TclListLines): * generic/tclCompCmds.c (*): * generic/tclCompile.c (TclSetByteCodeFromAny, TclInitCompileEnv, TclFreeCompileEnv, TclCompileScript, TclCompileTokens): * generic/tclCompile.h (CompileEnv): * generic/tclInt.h (ContLineLoc, Interp): * generic/tclObj.c (ThreadSpecificData, ContLineLocFree, TclThreadFinalizeObjects, TclInitObjSubsystem, TclContinuationsEnter, TclContinuationsEnterDerived, TclContinuationsCopy, TclContinuationsGet, TclFreeObj): * generic/tclParse.c (TclSubstTokens, Tcl_SubstObj): * generic/tclProc.c (TclCreateProc): * generic/tclVar.c (TclPtrSetVar): * tests/info.test (info-30.0-24): Extended the parser, compiler, and execution engine with code and attendant data structures tracking the position of continuation lines which are not visible in the resulting script Tcl_Obj*'s, to properly account for them while counting lines for #280. file: [382f00a048] check-in: [9d8e49c947] user: andreas_kupries branch: trunk, size: 132133
21:01
* generic/tclBasic.c (Tcl_CreateInterp, Tcl_EvalTokensStandard, EvalTokensStandard, Tcl_EvalEx, EvalEx, TclAdvanceContinuations, TclEvalObjEx): * generic/tclCmdMZ.c (Tcl_SwitchObjCmd, TclListLines): * generic/tclCompCmds.c (*): * generic/tclCompile.c (TclSetByteCodeFromAny, TclInitCompileEnv, TclFreeCompileEnv, TclCompileScript): * generic/tclCompile.h (CompileEnv): * generic/tclInt.h (ContLineLoc, Interp): * generic/tclObj.c (ThreadSpecificData, ContLineLocFree, TclThreadFinalizeObjects, TclInitObjSubsystem, TclContinuationsEnter, TclContinuationsEnterDerived, TclContinuationsCopy, TclContinuationsGet, TclFreeObj): * generic/tclParse.c (TclSubstTokens, Tcl_SubstObj): * generic/tclProc.c (TclCreateProc): * generic/tclVar.c (TclPtrSetVar): * tests/info.test (info-30.0-24): Extended parser, compiler, and execution with code and attendant data structures tracking the positions of continuation lines which are not visible in script Tcl_Obj*'s, to properly account for them while counting lines for #280. file: [8a763063cd] check-in: [c838caae31] user: andreas_kupries branch: core-8-5-branch, size: 130593
20:59
* generic/tclBasic.c (Tcl_CreateInterp, Tcl_EvalTokensStandard, EvalTokensStandard, Tcl_EvalEx, EvalEx, TclAdvanceContinuations, TclEvalObjEx): * generic/tclCmdMZ.c (Tcl_SwitchObjCmd, ListLines): * generic/tclCompCmds.c (*): * generic/tclCompile.c (TclSetByteCodeFromAny, TclInitCompileEnv, TclFreeCompileEnv, TclCompileScript): * generic/tclCompile.h (CompileEnv): * generic/tclInt.h (ContLineLoc, Interp): * generic/tclObj.c (ThreadSpecificData, ContLineLocFree, TclThreadFinalizeObjects, TclInitObjSubsystem, TclContinuationsEnter, TclContinuationsEnterDerived, TclContinuationsCopy, TclContinuationsGet, TclFreeObj): * generic/tclProc.c (TclCreateProc): * generic/tclVar.c (TclPtrSetVar): * tests/info.test (info-30.0-22): Extended parser, compiler, and execution with code and attendant data structures tracking the positions of continuation lines which are not visible in script's, to properly account for them while counting lines for #280, during direct and compiled execution. file: [21514e196d] check-in: [9fa7a1ee78] user: andreas_kupries branch: core-8-4-branch, size: 126484
2009-07-16
21:45
merge updates from HEAD file: [10fbe08a72] check-in: [3e7e63ebaf] user: dgp branch: dgp-refactor, size: 127757
21:24
* generic/tclBinary.c: Removed unused variables. * generic/tclCmdIL.c: * generic/tclCompile.c: * generic/tclExecute.c: * generic/tclHash.c: * generic/tclIOUtil.c: * generic/tclVar.c: * generic/tclBasic.c: Silence compiler warnings about ClientData. * generic/tclProc.c: * generic/tclScan.c: Typo in ACCEPT_NAN configuration. * generic/tclStrToD.c: Set floating point control register on MIPS systems so that the gradual underflow expected by Tcl is in effect. [Bug 2819200] file: [ace0eb1d9a] check-in: [b0e94fe52c] user: dgp branch: trunk, size: 127191
20:50
* generic/tclCmdIL.c: Removed unused variables. * generic/tclCompile.c: * generic/tclVar.c: * unix/tclUnixChan.c: * generic/tclScan.c: Typo in ACCEPT_NAN configuration. * generic/tclStrToD.c: Set floating point control register on MIPS systems so that the gradual underflow expected by Tcl is in effect. [Bug 2819200] file: [1d6841e83d] check-in: [936f6911bd] user: dgp branch: core-8-5-branch, size: 125631
2009-07-15
22:27
fix 64bit int <-> ptr cast warnings file: [cf8e370a76] check-in: [e30aeb4cb6] user: das branch: core-8-5-branch, size: 125688
15:29
merge updates from HEAD file: [a62f3672ff] check-in: [b10e3653d5] user: dgp branch: dgp-refactor, size: 127757
2009-07-14
21:47
fix 64bit int <-> ptr cast warnings file: [929521b661] check-in: [97a92c47a0] user: das branch: trunk, size: 127249
18:43
merge cleanup file: [9f7423795c] check-in: [b416808950] user: dgp branch: dgp-refactor, size: 127756
18:25
merge updates from HEAD file: [30d903978f] check-in: [7b736c6ca5] user: dgp branch: dgp-refactor, size: 127888
16:34
* generic/tclCompile.c (TclInitCompileEnv, EnterCmdWordIndex, TclCleanupByteCode, TclCompileScript): * generic/tclExecute.c (TclCompileObj, TclExecuteByteCode): * tclCompile.h (ExtCmdLoc): * tclInt.h (ExtIndex, CFWordBC, CmdFrame): * tclBasic.c (DeleteInterpProc, TclArgumentBCEnter, TclArgumentBCRelease, TclArgumentGet, SAVE_CONTEXT, RESTORE_CONTEXT, NRCoroutineExitCallback, TclNRCoroutineObjCmd): * generic/tclCmdAH.c (TclNRForObjCmd, TclNRForIterCallback, ForNextCallback): * generic/tclCmdMZ.c (TclNRWhileObjCmd): Extended the bytecode compiler initialization to recognize the compilation of whole files (NRE enabled 'source' command) and switch to the counting of absolute lines in that case. Further extended the bytecode compiler to track the start line in the generated information, and modified the bytecode execution to recompile an object if the location as per the calling context doesn't match the location saved in the bytecode. This part could be optimized more by using more memory to keep all possibilities which occur around, or by just adjusting the location information instead of a total recompile. Reworked the handling of literal command arguments in bytecode to be saved (compiler) and used (execution) per command (See the TCL_INVOKE_STK* instructions), and not per the whole bytecode. This, and the previous change remove the problems with location data caused by literal sharing (across whole files, but also proc bodies). Simplified the associated datastructures (ExtIndex is gone, as is the function EnterCmdWordIndex). The last change causes the hashtable 'lineLABCPtr' to be state which has to be kept per coroutine, like the CmdFrame stack. Reworked the coroutine support code to create, delete and switch the information as needed. Further reworked the tailcall command as well, it has to pop its own arguments when run in a bytecode context to keep a proper stack in 'lineLABCPtr'. Fixed the mishandling of line information in the NRE-enabled 'for' and 'while' commands introduced when both were made to share their iteration callbacks without taking into account that the loop body is found in different words of the command. Introduced a separate data structure to hold all the callback information, as we went over the limit of 4 direct client-data values for NRE callbacks. The above fixes [Bug 1605269]. file: [7f8ed0ccf3] check-in: [7c71134801] user: andreas_kupries branch: trunk, size: 127260
16:33
* generic/tclBasic.c (DeleteInterpProc,TclArgumentBCEnter, TclArgumentBCRelease, TclArgumentGet): * generic/tclCompile.c (EnterCmdWordIndex, TclCleanupByteCode, TclInitCompileEnv, TclCompileScript): * generic/tclCompile.h (ExtCmdLoc): * generic/tclExecute.c (TclExecuteByteCode): * generic/tclInt.h (ExtIndex, CFWordBC): * tests/info.test (info-39.0): Backport of some changes made to the Tcl head, to handle literal sharing better. The code here is much simpler (trimmed down) compared to the head as the 8.5 branch is not bytecode compiling whole files, and doesn't compile eval'd code either. Reworked the handling of literal command arguments in bytecode to be saved (compiler) and used (execution) per command (See the TCL_INVOKE_STK* instructions), and not per the whole bytecode. This removes the problems with location data caused by literal sharing in proc bodies. Simplified the associated datastructures (ExtIndex is gone, as is the function EnterCmdWordIndex). file: [d7af791246] check-in: [7022410d0d] user: andreas_kupries branch: core-8-5-branch, size: 125699
16:31
* generic/tclBasic.c (DeleteInterpProc,TclArgumentBCEnter, TclArgumentBCRelease, TclArgumentGet): * generic/tclCompile.c (EnterCmdWordIndex, TclCleanupByteCode, TclInitCompileEnv, TclCompileScript): * generic/tclCompile.h (ExtCmdLoc): * generic/tclExecute.c (TclExecuteByteCode): * generic/tclInt.h (ExtIndex, CFWordBC): * tests/info.test (info-39.0): Backport of some changes made to the Tcl head, to handle literal sharing better. The code here is much simpler (trimmed down) compared to the head as the 8.4 branch is not bytecode compiling whole files, and doesn't compile eval'd code either. Reworked the handling of literal command arguments in bytecode to be saved (compiler) and used (execution) per command (See the TCL_INVOKE_STK* instructions), and not per the whole bytecode. This removes the problems with location data caused by literal sharing in proc bodies. Simplified the associated datastructures (ExtIndex is gone, as is the function EnterCmdWordIndex). file: [860477c5e6] check-in: [fabfd40ca1] user: andreas_kupries branch: core-8-4-branch, size: 121378
2009-06-13
14:38
* generic/tclCompile.c: The value stashed in iPtr->compiledProcPtr * generic/tclProc.c: when compiling a proc survives too long. We * tests/execute.test: only need it there long enough for the right TclInitCompileEnv() call to re-stash it into envPtr->procPtr. Once that is done, the CompileEnv controls. If we let the value of iPtr->compiledProcPtr linger, though, then any other bytecode compile operation that takes place will also have its CompileEnv initialized with it, and that's not correct. The value is meant to control the compile of the proc body only, not other compile tasks that happen along. Thanks to Carlos Tasada for discovering and reporting the problem. [Bug 2802881]. file: [3c866db655] check-in: [2c7022a845] user: dgp branch: core-8-4-branch, size: 122350
14:32
merge updates from HEAD file: [697b30a294] check-in: [8664cb5a74] user: dgp branch: dgp-refactor, size: 127602
14:31
* generic/tclCompile.c: The value stashed in iPtr->compiledProcPtr * generic/tclProc.c: when compiling a proc survives too long. We * tests/execute.test: only need it there long enough for the right TclInitCompileEnv() call to re-stash it into envPtr->procPtr. Once that is done, the CompileEnv controls. If we let the value of iPtr->compiledProcPtr linger, though, then any other bytecode compile operation that takes place will also have its CompileEnv initialized with it, and that's not correct. The value is meant to control the compile of the proc body only, not other compile tasks that happen along. Thanks to Carlos Tasada for discovering and reporting the problem. [Bug 2802881]. file: [2011203505] check-in: [cd62c79f0e] user: dgp branch: trunk, size: 127175
14:25
* generic/tclCompile.c: The value stashed in iPtr->compiledProcPtr * generic/tclProc.c: when compiling a proc survives too long. We * tests/execute.test: only need it there long enough for the right TclInitCompileEnv() call to re-stash it into envPtr->procPtr. Once that is done, the CompileEnv controls. If we let the value of iPtr->compiledProcPtr linger, though, then any other bytecode compile operation that takes place will also have its CompileEnv initialized with it, and that's not correct. The value is meant to control the compile of the proc body only, not other compile tasks that happen along. Thanks to Carlos Tasada for discovering and reporting the problem. [Bug 2802881]. file: [a6f5e27069] check-in: [00a700e694] user: dgp branch: core-8-5-branch, size: 126636
2009-02-10
04:00
merge updates from HEAD file: [885a0ce13c] check-in: [b56e57cae7] user: dgp branch: dgp-refactor, size: 127568
2009-02-09
22:55
fix [Bug 2555129] const compiler warning (as error) in tclCompile.c file: [64a744ecdd] check-in: [a844523f95] user: nijtmans branch: trunk, size: 127146
2009-01-22
17:13
merge updates from HEAD file: [b0913dd18c] check-in: [eab5383f18] user: dgp branch: dgp-refactor, size: 127557
06:42
CONSTify TclPrintInstruction and TclpNativeJoinPath (TIP #27) {unix win} in *.decls is equivalent to {generic} tclGetDate.y, tclDate.c: single internal const decoration file: [0f7aa09dd9] check-in: [b4d9520da5] user: nijtmans branch: trunk, size: 127135
2009-01-09
14:17
merge updates from HEAD file: [daf936b914] check-in: [02f7c5c705] user: dgp branch: dgp-refactor, size: 127539
11:21
Style fixes (unfouling whitespace, sorting comments, removing useless casts, etc.) file: [3dcce78093] check-in: [cd3c38f00a] user: dkf branch: trunk, size: 127112
2008-12-01
16:44
merge updates from HEAD file: [3c19cf3f7f] check-in: [0b028f5cf6] user: dgp branch: dgp-refactor, size: 127629
2008-11-27
08:23
Alternate fix for[Bug 2251175]: missing backslash substitution on expanded literals. file: [68e1142fda] check-in: [dc5280ff20] user: ferrieux branch: trunk, size: 127207
2008-11-24
04:43
merge updates from HEAD file: [2fbbb1bdb2] check-in: [fbcc3c2aee] user: dgp branch: dgp-refactor, size: 128369
2008-11-19
00:00
Simplification of expanded-literals handling after analysis of dead branches file: [caea9623e6] check-in: [634598c6b7] user: ferrieux branch: trunk, size: 127957
2008-11-18
20:57
merge updates from HEAD file: [97da67004c] check-in: [a3661d6d8a] user: dgp branch: dgp-refactor, size: 128369
2008-11-17
22:26
Fix [Bug 2251175]: missing backslash substitution on expanded literals. file: [928c01cc04] check-in: [92bf0067c9] user: ferrieux branch: trunk, size: 128554
2008-11-10
02:18
merge updates from HEAD file: [7d838245a6] check-in: [4a9c1325dc] user: dgp branch: dgp-refactor, size: 127629
2008-10-26
18:34
Style improvements - invoking callbacks without visual junk. file: [887b18541b] check-in: [a1a8afc25d] user: dkf branch: trunk, size: 127202
2008-10-17
20:52
merge updates from HEAD file: [4ce50f381a] check-in: [d93600ad8e] user: dgp branch: dgp-refactor, size: 127638
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: [3f4f401f14] check-in: [8fcbc25d98] user: nijtmans branch: trunk, size: 127213
2008-10-14
20:10
merge updates from HEAD file: [c200b10acf] check-in: [b58f473a75] user: dgp branch: dgp-refactor, size: 127637
2008-10-12
19:53
* generic/tclCompile.c: fix bug in srcDelta encoding within ByteCodes. The bug can only be triggered under conditions that cannot happen in Tcl, but were met during development of L. Thanks go to Robert Netzer for diagnose and fix. file: [7ceb0a13ee] check-in: [25ecba7081] user: msofer branch: trunk, size: 127210
2008-10-11
03:37
merge updates from HEAD file: [8671d251d1] check-in: [707fc4e9cf] user: dgp branch: dgp-refactor, size: 127597
2008-10-05
20:47
* generic/tclInt.decls: CONSTified the AuxDataType argument * generic/tclCompCmds.c: of TclCreateAuxData and * generic/tclCompile.c TclRegisterAuxDataType and the return * generic/tclCompile.h values of TclGetAuxDataType and * generic/tclExecute.c TclGetInstructionTable * ChangeLog * generic/tclIntDecls.h: regenerated This change complies with TIP #27 (even though it only involves internal function, so this is not even necessary). file: [f0898a0dd2] check-in: [20d2689bb9] user: nijtmans branch: trunk, size: 127172
2008-09-09
03:55
merge updates from HEAD file: [4e0e8d6b12] check-in: [7c94b36df4] user: dgp branch: dgp-refactor, size: 127531
2008-09-08
03:55
* generic/tclCompile.c (TclCompileTokens): * generic/tclExecute.c (CompileExprObj): fix a perf bug (found by Alex Ferrieux) where some variables in the LVT where not being accessed by index. Fix missing localCache management in compiled expressions found while analyzing the bug. file: [72ab9bad3b] check-in: [b78ba52c9d] user: msofer branch: trunk, size: 127104
2008-08-20
17:53
merge updates from HEAD file: [d96ea1fc16] check-in: [fa74237c68] user: dgp branch: dgp-refactor, size: 127596
15:41
Fix performance bug introduced by fix of [Bug 2037727] file: [421c81ca70] check-in: [fbf4a7e36a] user: dkf branch: trunk, size: 127166
2008-07-29
20:13
merge updates from (near) HEAD file: [84817613f7] check-in: [f51e3a3c72] user: dgp branch: dgp-refactor, size: 127537
2008-07-28
20:00
* generic/tclBasic.c: Added missing release of extended command word index when deleting an interpreter (DeleteInterpProc). Added missing ref count when creating an empty string as path (EvalEx). * generic/tclCompile.c (TclInitCompileEnv): Made same change to control flow as in TclEvalObjEx. Not needed while uplevel and siblings go through the eval-direct code path, however if that changes (like it did in 8.5+) better to have this in place instead of re-searching why certain places are without absolute locations. * tests/info.test: Added tests 38.*, exactly testing the tracking of location for uplevel scripts, and made the testsuite fully usable with and without -singleproc 1. file: [394d3554bd] check-in: [fe5f8b0525] user: andreas_kupries branch: core-8-4-branch, size: 122328
2008-07-25
22:11
* tests/info.test: Tests 38.* added, exactly testing the tracking of location for uplevel scripts. Resolved merge conflict on info-37.0, switched !singleTestInterp constraint to glob matching instead. Ditto info-22.8, removed constraint, more glob matching, and reduced the depth of the stack we check. More is coming, right now I want to commit the bug fixes. * tests/oo.test: Updated oo-22.1 for expanded location tracking. * generic/tclCompile.c (TclInitCompileEnv): Reorganized the initialization of the #280 location information to match the flow in TclEvalObjEx to get more absolute contexts. * generic/tclBasic.c (TclEvalObjEx): Added missing cleanup of extended location information. file: [f53789ff18] check-in: [5317fc0855] user: andreas_kupries branch: trunk, size: 127133
20:30
* tests/info.test: Tests 38.* added, exactly testing the tracking of location for uplevel scripts. * generic/tclCompile.c (TclInitCompileEnv): Reorganized the initialization of the #280 location information to match the flow in TclEvalObjEx to get more absolute contexts. * generic/tclBasic.c (TclEvalObjEx): Moved the pure-list optimization out of the eval-direct code path to be done always, i.e. even when a compile is requested. This way we do not loose the association between #280 location information and the list elements, if any. file: [1ba4195d1a] check-in: [8102aefa68] user: andreas_kupries branch: core-8-5-branch, size: 126614
2008-07-23
20:49
* generic/tclBasic.c: Modified TclArgumentGet to reject pure lists * generic/tclCmdIL.c: immediately, without search. Reworked setup * generic/tclCompile.c: of eoFramePtr, doesn't need the line * tests/info.test: information, more sensible to have everything on line 1 when eval'ing a pure list. Updated the users of the line information to special case this based on the frame type (i.e. TCL_LOCATION_EVAL_LIST). Added a testcase demonstrating the new behaviour. file: [74b62a6d93] check-in: [e34657a1ad] user: andreas_kupries branch: trunk, size: 127030
20:47
* generic/tclBasic.c: Modified TclArgumentGet to reject pure lists * generic/tclCmdIL.c: immediately, without search. Reworked setup * generic/tclCompile.c: of eoFramePtr, doesn't need the line * tests/info.test: information, more sensible to have everything on line 1 when eval'ing a pure list. Updated the users of the line information to special case this based on the frame type (i.e. TCL_LOCATION_EVAL_LIST). Added a testcase demonstrating the new behaviour. file: [c09bf2ae89] check-in: [222f1067e0] user: andreas_kupries branch: core-8-5-branch, size: 126524
20:45
* generic/tclBasic.c: Modified TclArgumentGet to reject pure lists * generic/tclCmdIL.c: immediately, without search. Reworked setup * generic/tclCompile.c: of eoFramePtr, doesn't need the line * tests/info.test: information, more sensible to have everything on line 1 when eval'ing a pure list. Updated the users of the line information to special case this based on the frame type (i.e. TCL_LOCATION_EVAL_LIST). Added a testcase demonstrating the new behaviour. file: [4c3f24b7c1] check-in: [4ad027ecef] user: andreas_kupries branch: core-8-4-branch, size: 122207
2008-07-22
22:30
* generic/tclCompile.c: Made the new TclEnterCmdWordIndex * generic/tclCompile.h: static. file: [8bbacdca5d] check-in: [ed0a8850b2] user: andreas_kupries branch: core-8-4-branch, size: 122121
22:26
* generic/tclCompile.c: Made the new TclEnterCmdWordIndex * generic/tclCompile.h: static, and ansified. file: [c9d3ca6e63] check-in: [306ccd50a1] user: andreas_kupries branch: core-8-5-branch, size: 126445
22:24
* generic/tclCompile.c: Made the new TclEnterCmdWordIndex * generic/tclCompile.h: static, and ansified. file: [b160f01fa8] check-in: [a640735a9f] user: andreas_kupries branch: trunk, size: 126949
21:41
* generic/tclBasic.c: Reworked the handling of bytecode literals * generic/tclCompile.c: for #280 to fix the abysmal performance * generic/tclCompile.h: for deep recursion, replaced the linear * generic/tclExecute.c: search through the whole stack with * generic/tclInt.h: another hashtable and simplified the data structure used by the compiler (array instead of hashtable). Incidentially this also fixes the memory leak reported via [Bug 2024937]. file: [0a2440122e] check-in: [0052f52da7] user: andreas_kupries branch: trunk, size: 126877
21:41
* generic/tclBasic.c: Reworked the handling of bytecode literals * generic/tclCompile.c: for #280 to fix the abysmal performance * generic/tclCompile.h: for deep recursion, replaced the linear * generic/tclExecute.c: search through the whole stack with * generic/tclInt.h: another hashtable and simplified the data structure used by the compiler (array instead of hashtable). Incidentially this also fixes the memory leak reported via [Bug 2024937]. file: [a30fb1e3d6] check-in: [a214d452fc] user: andreas_kupries branch: core-8-5-branch, size: 126372
21:40
* generic/tclBasic.c: Reworked the handling of bytecode literals * generic/tclCompile.c: for #280 to fix the abysmal performance * generic/tclCompile.h: for deep recursion, replaced the linear * generic/tclExecute.c: search through the whole stack with * generic/tclInt.h: another hashtable and simplified the data structure used by the compiler (array instead of hashtable). Incidentially this also fixes the memory leak reported via [Bug 2024937]. file: [ea51be487e] check-in: [bb509fe952] user: andreas_kupries branch: core-8-4-branch, size: 121998
2008-07-21
22:50
* generic/tclBasic.c: Extended the existing TIP #280 system (info * generic/tclCmdAH.c: frame), added the ability to track the * generic/tclCompCmds.c: absolute location of literal procedure * generic/tclCompile.c: arguments, and making this information * generic/tclCompile.h: available to uplevel, eval, and * generic/tclInterp.c: siblings. This allows proper tracking of * generic/tclInt.h: absolute location through custom (Tcl-coded) * generic/tclNamesp.c: control structures based on uplevel, etc. * generic/tclProc.c: * tests/info.test: file: [3008f12b15] check-in: [ffe14e5e73] user: andreas_kupries branch: trunk, size: 126687
19:38
* generic/tclBasic.c: Extended the existing TIP #280 system (info * generic/tclCmdAH.c: frame), added the ability to track the * generic/tclCompCmds.c: absolute location of literal procedure * generic/tclCompile.c: arguments, and making this information * generic/tclCompile.h: available to uplevel, eval, and * generic/tclInterp.c: siblings. This allows proper tracking of * generic/tclInt.h: absolute location through custom (Tcl-coded) * generic/tclNamesp.c: control structures based on uplevel, etc. * generic/tclProc.c: file: [bda4d01c7c] check-in: [40f723e2c0] user: andreas_kupries branch: core-8-5-branch, size: 126182
19:37
* generic/tclBasic.c: Extended the existing TIP #280 system (info * generic/tclCmdAH.c: frame), added the ability to track the * generic/tclCompCmds.c: absolute location of literal procedure * generic/tclCompile.c: arguments, and making this information * generic/tclCompile.h: available to uplevel, eval, and * generic/tclInterp.c: siblings. This allows proper tracking of * generic/tclInt.h: absolute location through custom (Tcl-coded) * generic/tclNamesp.c: control structures based on uplevel, etc. * generic/tclProc.c: file: [853ff10cb8] check-in: [87a9c9155a] user: andreas_kupries branch: core-8-4-branch, size: 121807
2008-06-25
15:56
merge updates from 8.5 branch file: [f4a36256a2] check-in: [affd52009d] user: dgp branch: core-stabilizer-branch, size: 124731
2008-06-16
03:17
merge updates from HEAD file: [f186b010f0] check-in: [1f1de75ebf] user: dgp branch: dgp-refactor, size: 125657
2008-06-08
03:21
* generic/tclBasic.c: Compilation of uplevel scripts, allow * generic/tclCompCmds.c: non-body compiled scripts to access the * generic/tclCompile.c: LVT (but not to extend it) and enable the * generic/tclCompile.h: canonical list opt to sidestep the * generic/tclExecute.c: compiler. This is [Patch 1973096] * generic/tclProc.c: * tests/uplevel.test: file: [234cff65f1] check-in: [302b0120aa] user: msofer branch: trunk, size: 125238
2008-05-31
21:01
merge updates from HEAD file: [7329ad8815] check-in: [6f324d01e1] user: dgp branch: dgp-refactor, size: 125072
2008-05-30
22:54
Small clarifications that code a bit nicer to read. file: [143e52d7e9] check-in: [0979177469] user: dkf branch: trunk, size: 124650
2008-05-16
15:05
merge updates from HEAD file: [6e7700f83f] check-in: [f7f755197f] user: dgp branch: dgp-refactor, size: 125148
14:27
* generic/tclCompile.c: fix crash with tcl_traceExec. Found and fixed by Alexander Pasadyn [Bug 1964803]. file: [62573a3641] check-in: [fa11d81b14] user: msofer branch: core-8-5-branch, size: 124733
14:13
* generic/tclCompile.c: fix crash with tcl_traceExec. Found and fixed by Alexander Pasadyn [Bug 1964803]. file: [487fcc1416] check-in: [7a08d942d5] user: msofer branch: trunk, size: 124729
2008-01-25
16:43
merge updates from HEAD file: [8b5f9f132b] check-in: [5cbaf690e0] user: dgp branch: core-stabilizer-branch, size: 124725
2008-01-23
21:21
Reconcile coding style issues between branches file: [ce07629532] check-in: [17f1360d99] user: dgp branch: dgp-refactor, size: 125142
21:21
Reconcile coding style issues between branches file: [096593ebe6] check-in: [dd5e7712f3] user: dgp branch: trunk, size: 124720
16:42
merge updates from HEAD file: [61ad8069a7] check-in: [013cce9562] user: dgp branch: core-stabilizer-branch, size: 124660
2008-01-22
21:21
Replace MODULE_SCOPE routine TclCompileScriptTokens() with static routine CompileScriptTokens() used only in tclCompile.c. file: [2331eedc95] check-in: [e1d4f78d4f] user: dgp branch: dgp-refactor, size: 125142
2008-01-16
21:56
merge updates from HEAD file: [3f2021095d] check-in: [b2633acb26] user: dgp branch: dgp-refactor, size: 125024
21:05
* generic/tclCompExpr.c: add an 'optimize' argument to * generic/tclCompile.c: TclCompileExpr() to profit from better * generic/tclCompile.h: literal management according to usage. * generic/tclExecute.c: file: [d0971051ea] check-in: [30b91ac574] user: msofer branch: trunk, size: 124658
2007-12-13
15:22
merge stable branch onto HEAD file: [b27f1a8aaa] check-in: [d1f7550cd9] user: dgp branch: trunk, size: 124652
2007-12-06
06:51
merge updates from HEAD file: [70b73455fd] check-in: [6f3a8a0d9e] user: dgp branch: dgp-refactor, size: 125021
2007-11-21
06:30
Merge updates from 8.5b3 release file: [af2ca32aa6] check-in: [c60ad186f4] user: dgp branch: core-stabilizer-branch, size: 124657
2007-11-18
17:48
Minor fixes (e.g. comment readability) file: [76233e3789] check-in: [33fd885f00] user: dkf branch: trunk, size: 124652
2007-11-16
14:11
Greatly improved ensemble compiler. This one now can handle any ensemble. It is usually not enabled though; only worth it when a subcommand is actually expected to undergo bytecode compilation. file: [59495c9d69] check-in: [e9c9f68390] user: dkf branch: trunk, size: 124756
08:07
merge updates from HEAD file: [7421e1a528] check-in: [4b5515a616] user: dgp branch: dgp-refactor, size: 125039
07:20
merge updates from HEAD file: [eb10b475de] check-in: [be7502a53e] user: dgp branch: core-stabilizer-branch, size: 124667
2007-11-14
23:05
Compile [info exists] into bytecode. Includes new instructions to support it. file: [63c716471b] check-in: [37ce040dfc] user: dkf branch: trunk, size: 124662
2007-11-13
21:42
Minor fixes (remove double blank lines, etc.) file: [692f199905] check-in: [bb4d91f8fa] user: dkf branch: trunk, size: 123750
21:22
Fix a bug in disassembly of INST_START_CMD instructions file: [77ce773400] check-in: [ff009caa49] user: dkf branch: trunk, size: 123744
2007-11-12
20:40
merge updates from HEAD file: [c63d0080fb] check-in: [27f428842c] user: dgp branch: dgp-refactor, size: 124129
19:18
merge updates from HEAD file: [26a76c0aca] check-in: [72c5ac9502] user: dgp branch: core-stabilizer-branch, size: 123724
02:07
* generic/tclCompCmds.c, generic/tclCompile.c, generic/tclCompile.h: * generic/tclExecute.c, generic/tclInt.decls, generic/tclIntDecls.h: * generic/tclRegexp.c, generic/tclRegexp.h: Add INST_REGEXP and fully * generic/tclStubInit.c, generic/tclUtil.c: compiled [regexp] for the * tests/regexpComp.test: [Bug 1830166] simple cases. Also added TclReToGlob function to convert RE to glob patterns and use these in the possible cases. file: [e5708bcff9] check-in: [fcf44fdfdf] user: hobbs branch: trunk, size: 123721
2007-11-11
19:32
[Patch 1830038]: Increased usage of macros to detect and take advantage of objTypes. file: [94c778e733] check-in: [11e8f31512] user: msofer branch: trunk, size: 123608
2007-10-24
12:52
merge updates from HEAD file: [634fddc60f] check-in: [59774f5601] user: dgp branch: core-stabilizer-branch, size: 123611
12:48
merge updates from HEAD file: [187a0fc029] check-in: [1fc82d3288] user: dgp branch: dgp-refactor, size: 124016
2007-10-20
02:15
* generic/tclCompile.c: Fix comments. * generic/tclExecute.c: file: [9244ac326a] check-in: [5b4437e1a2] user: msofer branch: trunk, size: 123609
2007-10-11
02:56
merge updates from HEAD file: [d435350cb0] check-in: [ab5d38c24f] user: dgp branch: dgp-refactor, size: 124007
02:54
merge updates from HEAD file: [a92b621f97] check-in: [c6a84af958] user: dgp branch: core-stabilizer-branch, size: 123602
2007-10-09
22:16
Fix my silly blunder with an undeclared variable. file: [484082a5a9] check-in: [2b10596c38] user: dkf branch: trunk, size: 123597
2007-10-02
20:11
Merge updates from HEAD, then [core-stabilizer-branch] * README: Bump version number to 8.5.0 * generic/tcl.h: * library/init.tcl: * tools/tcl.wse.in: * unix/configure.in: * unix/tcl.spec: * win/configure.in: * unix/configure: autoconf (2.59) * win/configure: file: [55729757d4] check-in: [49e28c842d] user: dgp branch: core-stabilizer-branch, size: 123573
18:29
merge updates from HEAD file: [e8921440ad] check-in: [fb51f1b51d] user: dgp branch: dgp-refactor, size: 123978
2007-09-25
20:27
Add a new command, ::tcl::unsupported::disassemble file: [f5cef59648] check-in: [2dc70640e6] user: dkf branch: trunk, size: 123568
2007-09-11
18:11
merge updates from HEAD file: [768ae6ccfe] check-in: [a5e9911136] user: dgp branch: dgp-refactor, size: 120710
17:58
merge updates from HEAD file: [f58e08c837] check-in: [f345738126] user: dgp branch: core-stabilizer-branch, size: 120314
14:47
* generic/tclCompCmds.c (TclCompileDictCmd-update): * generic/tclCompile.c (tclInstructionTable): * generic/tclExecute.c (INST_DICT_UPDATE_END): fix stack management in [dict update] [Bug 1786481]. file: [b28f0884d4] check-in: [589c793c6c] user: msofer branch: trunk, size: 120313
2007-09-10
21:47
* generic/tclCompile.c: fix tclInstructionTable entry for dictUpdateEnd * generic/tclExecute.c: remove unneeded setting of 'cleanup' variable before jumping to checkForCatch. file: [886720a510] check-in: [f1713e89ea] user: msofer branch: trunk, size: 120314
2007-09-09
17:26
merge updates from HEAD file: [d6ccc175b1] check-in: [283490f170] user: dgp branch: core-stabilizer-branch, size: 120315
17:26
merge updates from HEAD file: [c89b7f6b8d] check-in: [516d347dcc] user: dgp branch: dgp-refactor, size: 120711
17:02
Correct stack effect value in table. file: [2e719f1ccf] check-in: [5b7a60454b] user: dgp branch: trunk, size: 120311
16:51
* generic/tclCompCmds.c: Use the new INST_REVERSE instruction * tests/mathop.test: to correct the compiled versions of math operator commands. [Bug 1724437]. * generic/tclCompile.c: New bytecode instruction INST_REVERSE to * generic/tclCompile.h: reverse the order of N items at the top of * generic/tclExecute.c: stack. file: [e4cf9d497c] check-in: [d3f7597cfa] user: dgp branch: trunk, size: 120312
2007-09-07
03:15
merge updates from HEAD file: [0e9ac619b3] check-in: [2c46d786c6] user: dgp branch: dgp-refactor, size: 120590
2007-09-04
17:43
merge updates from HEAD file: [1bf90f2959] check-in: [93ee5fafc4] user: dgp branch: core-stabilizer-branch, size: 120194
2007-08-30
19:24
* generic/tclCompile.c: Added fflush() calls following all callers of * generic/tclExecute.c: TclPrintByteCodeObj() so that tcl_traceCompile output is less likely to get mangled when writes to stdout interleave with other code. file: [b36f0a3698] check-in: [2387f90c46] user: dgp branch: trunk, size: 120190
2007-08-27
19:56
* generic/tclCompExpr.c: Call TclCompileSyntaxError() when expression syntax errors are found when compiling expressions. With this in place, convert TclCompileExpr to return void, since there's no longer any need to report TCL_ERROR. * generic/tclCompile.c: Update callers. * generic/tclExecute.c: * generic/tclCompCmds.c: New routine TclCompileSyntaxError() * generic/tclCompile.h: to directly compile bytecodes that report a * generic/tclCompile.c: syntax error, rather than (ab)use a call to TclCompileReturnCmd. Also, undo the most recent commit that papered over some issues with that (ab)use. New routine produces a new opcode INST_SYNTAX, which is a minor variation of INST_RETURN_IMM. Also a bit of constification. file: [92fcf6eb24] check-in: [2eb1879aac] user: dgp branch: trunk, size: 120173
15:12
* generic/tclCompile.c: Move the deallocation of local LiteralTable * generic/tclCompExpr.c: entries into TclFreeCompileEnv(). * generic/tclExecute.c: Update callers. file: [2feb4d7aaf] check-in: [27a33626be] user: dgp branch: trunk, size: 121786
2007-08-24
11:22
* generic/tclCompile.c: replaced copy loop that tripped some compilers with memmove [Bug 1780870] file: [dbfaaafad9] check-in: [507783b0c7] user: msofer branch: trunk, size: 121824
11:22
* generic/tclCompile.c: replaced copy loop that tripped some compilers with memmove [Bug 1780870] file: [554d83fcf3] check-in: [abcd910d18] user: msofer branch: core-8-4-branch, size: 120369
2007-07-31
17:03
VarReform [Patch 1750051] *** POTENTIAL INCOMPATIBILITY *** (tclInt.h and tclCompile.h) file: [8575cfe465] check-in: [2fbb344601] user: msofer branch: trunk, size: 121863
2007-07-12
14:30
merge updates from HEAD file: [0ead0df426] check-in: [ecf40d3813] user: dgp branch: dgp-refactor, size: 122168
14:29
merge updates from HEAD file: [34e0c7ce57] check-in: [c7f2802afe] user: dgp branch: core-stabilizer-branch, size: 121792
2007-07-11
21:27
2007-07-11 Miguel Sofer <msofer@users.sf.net> * generic/tclCompCmds.c (TclCompileWhileCmd): * generic/tclCompile.c (TclCompileScript): Corrected faulty avoidance of INST_START_CMD when the first opcode in a script is within a loop (as produced by 'while 1'), so that the corresponding command is properly counted [Bug 1752146]. file: [07bae5a6d6] check-in: [c7bb9fa5b4] user: msofer branch: trunk, size: 121791
2007-06-25
18:53
merge updates from HEAD file: [da6e9d8007] check-in: [436f99c1ba] user: dgp branch: core-stabilizer-branch, size: 121432
17:39
merge updates toward HEAD file: [db477cf842] check-in: [eed0ebaa22] user: dgp branch: dgp-refactor, size: 121840
2007-06-21
18:41
* generic/tclBasic.c: Move most instances of the Tcl_Parse struct * generic/tclCompExpr.c: off the C stack and onto the Tcl stack. * generic/tclCompile.c: This is a rather large struct (> 3kB). * generic/tclParse.c: file: [79193eb42d] check-in: [707a2f7cf1] user: dgp branch: trunk, size: 121428
16:31
merge updates from HEAD file: [87a4d0ea9c] check-in: [98cb152178] user: dgp branch: dgp-refactor, size: 121611
16:04
merge updates from HEAD file: [22692062e3] check-in: [9b4cd8d23b] user: dgp branch: core-stabilizer-branch, size: 121099
12:43
Fix comments referring to {expand}. [Bug 1600859] file: [c38e1febe5] check-in: [44134272e1] user: dkf branch: trunk, size: 121095
2007-06-20
18:46
* generic/tclInt.decls: Revised the interfaces of the routines * generic/tclExecute.c: TclStackAlloc and TclStackFree to make them easier for callers to use (or more precisely, harder to misuse). TclStackFree now takes a (void *) argument which is the pointer intended to be freed. TclStackFree will panic if that's not actually the memory the call will free. TSA/TSF also now tolerate receiving (interp == NULL), in which case they simply fall back to be calls to Tcl_Alloc/Tcl_Free. * generic/tclIntDecls.h: make genstubs * generic/tclBasic.c: Updated callers * generic/tclCmdAH.c: * generic/tclCmdIL.c: * generic/tclCompCmds.c: * generic/tclCompExpr.c: * generic/tclCompile.c: * generic/tclFCmd.c: * generic/tclFileName.c: * generic/tclIOCmd.c: * generic/tclIndexObj.c: * generic/tclInterp.c: * generic/tclNamesp.c: * generic/tclProc.c: * generic/tclTrace.c: * unix/tclUnixPipe.c: file: [c82776ed95] check-in: [4ea644b0de] user: dgp branch: trunk, size: 121091
2007-06-19
13:50
merge updates from HEAD file: [5c166c77f1] check-in: [a03020999a] user: dgp branch: dgp-refactor, size: 121599
02:48
merge updates from HEAD file: [c77716915b] check-in: [20f7bae489] user: dgp branch: core-stabilizer-branch, size: 121087
2007-06-18
22:51
* generic/tclCmdIL.c (InfoFrameCmd): * generic/tclCmdMZ.c (Tcl_SwitchObjCmd): * generic/tclCompile.c (TclInitCompileEnv): * generic/tclProc.c (Tcl_ProcObjCmd, SetLambdaFromAny): Moved the CmdFrame off the C stack and onto the Tcl stack. file: [63d06c4080] check-in: [af31ea6648] user: msofer branch: trunk, size: 121086
2007-06-15
20:27
merge updates from HEAD file: [66d341847c] check-in: [dc6d061abb] user: dgp branch: dgp-refactor, size: 121454
2007-06-14
17:03
merge updates from HEAD file: [25a2ee0430] check-in: [93fc0b74de] user: dgp branch: core-stabilizer-branch, size: 120942
15:56
* generic/tclCompile.c: SetByteCodeFromAny() can no longer return * generic/tclExecute.c: any code other than TCL_OK, so remove code * generic/tclProc.c: that formerly handled exceptional codes. file: [68e3cbeb95] check-in: [1658ba8231] user: dgp branch: trunk, size: 120938
2007-05-30
22:01
merge updates from HEAD file: [fe4e129d0b] check-in: [e1767eb388] user: dgp branch: dgp-refactor, size: 121435
18:38
merge updates from HEAD file: [b988d01315] check-in: [676fb80c75] user: dgp branch: core-stabilizer-branch, size: 120923
18:12
* generic/tclBasic.c: Removed code that dealt with * generic/tclCompile.c: TCL_TOKEN_EXPAND_WORD tokens representing * generic/tclCompile.h: expanded literal words. These sections were mostly in place to enable [info frame] to discover line information in expanded literals. Since the parser now generates a token for each post-expansion word referring to the right location in the original script string, [info frame] gets all the data it needs. * generic/tclInt.h: Revised the parser so that it never produces * generic/tclParse.c: TCL_TOKEN_EXPAND_WORD tokens when parsing an * tests/parse.test: expanded literal word; that is, something like {*}{x y z}. Instead, generate the series of TCL_TOKEN_SIMPLE_WORD tokens to represent the words that expansion of the literal string produces. [RFE 1725186] file: [7b14b659f7] check-in: [1d20b5bc02] user: dgp branch: trunk, size: 120919
2007-04-24
04:49
merge updates from HEAD file: [97903a49f3] check-in: [dd0311d30f] user: dgp branch: dgp-refactor, size: 125551
2007-04-23
20:33
* generic/tclCkalloc.c: fix warnings from gcc build configured with * generic/tclCompile.c: --enable-64bit --enable-symbols=all. * generic/tclExecute.c: file: [f9cefa1891] check-in: [d021f527a3] user: das branch: trunk, size: 125078
18:01
* generic/tclCompile.c (TclFreeCompileEnv): Tip 280's new field extCmdMapPtr was not being freed [Bug 1705778, leak #1]. file: [222e4dc7c2] check-in: [2c071d41e4] user: msofer branch: trunk, size: 125131
2007-04-10
16:27
merge updates from HEAD file: [0797001a30] check-in: [c49d7b4587] user: dgp branch: dgp-refactor, size: 125523
14:47
Handle creation of Tcl_Objs from constant strings better (easier to use, more efficient). After [Patch 1529526] (afredd) file: [1c01b18b89] check-in: [4d69119aad] user: dkf branch: trunk, size: 125050
2007-04-09
13:25
Missed a commit in the merge/tag dance file: [b1e475c455] check-in: [c2d9a5ec44] user: dgp branch: dgp-refactor, size: 125504
2007-04-08
20:18
post-merge updates that stop segfaults in test suite. file: [a2bdc3bdc5] check-in: [d27125db3a] user: dgp branch: dgp-refactor, size: 125310
18:44
post-merge updates to make source code compile file: [dcba58629a] check-in: [3363329d84] user: dgp branch: dgp-refactor, size: 125281
14:58
Merge updates from HEAD; may not build file: [1575417c63] check-in: [8dc7079178] user: dgp branch: dgp-refactor, size: 125270
02:19
* generic/tclCompile (tclInstructionTable): fixed bugs in description of dict instructions file: [6596fedcdd] check-in: [d1aa131359] user: msofer branch: trunk, size: 125037
2007-04-07
22:50
* generic/tclCompile (tclInstructionTable): fixed bug in description of INST_START_COMMAND. file: [f2587b544b] check-in: [7c73b68563] user: msofer branch: trunk, size: 124843
2007-04-03
01:34
* generic/tclBasic.c: Added bytecode compilers for the * generic/tclCompCmds.c: variable linking commands: 'global', * generic/tclCompile.h: 'variable', 'upvar', 'namespace upvar' * generic/tclExecute.c: [Patch 1688593] * generic/tclInt.h: * generic/tclVar.c: file: [41045d7a17] check-in: [8fe01ff441] user: msofer branch: trunk, size: 124843
2007-04-01
00:32
Ensure that the count of commands commenced by bytecode is correct at all times even though INST_START_CMD is now issued more efficiently. Changes definition of I_S_C, but that's an 8.5 opcode so that shouldn't matter; tbcload doesn't work with 8.5 at the moment anyway. file: [443541351a] check-in: [66d379a865] user: dkf branch: trunk, size: 124267
2007-03-30
18:24
* generic/tclCompile.c: * generic/tclCompExpr.c: * generic/tclCompCmds.c: Replace arrays on the C stack and ckalloc calls with TclStackAlloc calls to use memory on Tcl's evaluation stack file: [a296313a8d] check-in: [c35cf54d2f] user: dgp branch: trunk, size: 123730
2007-03-20
03:16
* generic/tclCompile.c: Revise the various expansion routines for CompileEnv fields to use ckrealloc() where appropriate. file: [a02c3a19e3] check-in: [760575aa5e] user: dgp branch: trunk, size: 123646
2007-03-02
10:32
Added a scheme to allow aux-data to be printed out for debugging. For this to work, immediate operands referring to aux-data must be identified as such in the instruction descriptor table using OPERAND_AUX4 (all are always 4 bytes). Rewrote the compiled [dict update] so that it stores critical non-varying data in an aux-data value instead of a (shimmerable) literal. [Bug 1671001] file: [f3fc85a8a4] check-in: [a2a40e3cff] user: dkf branch: trunk, size: 123602
2007-02-20
23:24
various "const" additions, in line with TIP #27 file: [36cdc707f1] check-in: [81ea4e1335] user: nijtmans branch: trunk, size: 123137
2007-01-19
14:06
More efficient issuing of INST_START_CMD instructions. See ChangeLog for discussion file: [8a2daf773a] check-in: [dc4b774eb4] user: dkf branch: trunk, size: 123132
2007-01-18
23:17
Code style improvements file: [abe7849b4a] check-in: [8fd6e7367b] user: dkf branch: trunk, size: 123055
11:18
Minor fix to make bytecodes print out properly file: [8bd4e88b08] check-in: [38febb09a5] user: dkf branch: trunk, size: 123354
11:12
Fix [Bug 1638414] and make bytecode of expansion better file: [e997d1d948] check-in: [3c4a0d5973] user: dkf branch: trunk, size: 123353
2006-12-01
06:06
fix warnings file: [a0b13dc8d0] check-in: [e94f62e776] user: das branch: trunk, size: 123087
2006-11-28
22:20
* generic/tclBasic.c: TIP #280 implementation. * generic/tclCmdAH.c: * generic/tclCmdIL.c: * generic/tclCmdMZ.c: * generic/tclCompCmds.c: * generic/tclCompExpr.c: * generic/tclCompile.c: * generic/tclCompile.h: * generic/tclExecute.c: * generic/tclIOUtil.c: * generic/tclInt.h: * generic/tclInterp.c: * generic/tclNamesp.c: * generic/tclObj.c: * generic/tclProc.c: * tests/compile.test: * tests/info.test: * tests/platform.test: * tests/safe.test: file: [98a4d3dd6f] check-in: [d95fba8a1f] user: andreas_kupries branch: trunk, size: 123070
22:19
* generic/tclBasic.c: TIP #280 implementation, conditional on the define TCL_TIP280. * generic/tclCmdAH.c: * generic/tclCmdIL.c: * generic/tclCmdMZ.c: * generic/tclCompCmds.c: * generic/tclCompExpr.c: * generic/tclCompile.c: * generic/tclCompile.h: * generic/tclExecute.c: * generic/tclIOUtil.c: * generic/tclInt.h: * generic/tclInterp.c: * generic/tclNamesp.c: * generic/tclObj.c: * generic/tclProc.c: * tests/compile.test: * tests/info.test: * tests/platform.test: * tests/safe.test: file: [7ec81d5012] check-in: [a88d79cbf8] user: andreas_kupries branch: core-8-4-branch, size: 120417
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: [b14061f139] check-in: [c06db721dd] user: dgp branch: trunk, size: 111493
2006-11-08
13:47
Minor simplification of memcpy usage file: [6637644624] check-in: [daa47e737a] user: dkf branch: trunk, size: 111491
2006-10-23
21:01
merge updates from HEAD file: [153c747494] check-in: [1f911d4cbb] user: dgp branch: dgp-refactor, size: 112210
2006-09-30
17:56
* generic/tclCompile.c: * generic/tclHistory.c: * generic/tclInt.h: * generic/tclProc.c: made Tcl_RecordAndEvalObj not call "history" if it has been redefined to an empty proc, in order to reduce the noise when debugging [FR 1190441]. Moved TclCompileNoOp from tclProc.c to tclCompile.c file: [eec02ce98f] check-in: [639783a61c] user: msofer branch: trunk, size: 111673
2006-08-29
16:19
merge updates from HEAD file: [fd64e3088d] check-in: [e1feeec3e7] user: dgp branch: dgp-refactor, size: 110854
06:28
add casts to make gcc2 happy with previous commit [Bug 1548330] file: [11b9fb0802] check-in: [6e49a4e1e7] user: das branch: trunk, size: 110314
2006-08-28
08:47
fixed printf format warnings from gcc4 when TCL_COMPILE_STATS defined file: [a1b85777ef] check-in: [d990dffed8] user: das branch: trunk, size: 110250
2006-08-17
17:43
* generic/tclCompile.c: Revised the new set of expression * generic/tclParseExpr.c: parse error messages. file: [5c9c50b1a2] check-in: [a8c91610e6] user: dgp branch: trunk, size: 110229
2006-08-10
12:15
Various minor object file size efficiency fixes. [Bug 1530474] file: [94e178972b] check-in: [a09967381c] user: dkf branch: trunk, size: 110203
2005-12-02
18:42
merge updates from HEAD file: [8245da2f6a] check-in: [1059d34b2b] user: dgp branch: dgp-refactor, size: 110757
2005-11-30
14:59
New TEBC opcode, INST_JUMP_TABLE, for compiling the simple (and common) case of [switch] into a jump-table. Much faster for long switches. Also compiler support for generating the new instruction where appropriate. file: [863952c4a6] check-in: [fea467c20f] user: dkf branch: trunk, size: 110217
2005-11-07
15:23
Strip a few more pre-ANSI-isms file: [07fa9a3778] check-in: [55f46a3066] user: dkf branch: trunk, size: 109725
2005-10-18
20:46
merge updates from HEAD file: [971c7d7dbe] check-in: [2e8613842e] user: dgp branch: dgp-refactor, size: 110361
2005-10-13
20:15
Remove _ANSI_ARGS_ and clean up a few comments file: [7a13949ac2] check-in: [2b1f602d05] user: dkf branch: trunk, size: 109821
2005-10-10
17:59
* generic/tclExecute.c: fixing an error in INST_LNOT and INST_LYES. Interestingly, the error only appeared in debug builds, but I can't figure out how it matters. * generic/tclCompile.c (OptReduceCount): improved panic message. *** NOTE: disabling the optimiser causes a panic in normal builds, but is ok in debug builds. Something is very fishy. file: [eddb53d932] check-in: [b0515a16ba] user: msofer branch: msofer-wcodes-branch, size: 129402
2005-08-02
18:14
merge updates from HEAD file: [4ce744de99] check-in: [10feab7c07] user: dgp branch: kennykb-numerics-branch, size: 110709
2005-07-26
04:11
Merge updates from HEAD file: [50cd20782a] check-in: [8351a734a6] user: dgp branch: dgp-refactor, size: 112954
2005-07-21
21:48
Compiler for [dict] and related changes. file: [a6ec55ee1d] check-in: [9ef02c62c4] user: dkf branch: trunk, size: 110705
2005-07-14
13:41
More minor tinkering with comments and code-layout file: [23a52beba5] check-in: [08ca5567ca] user: dkf branch: trunk, size: 107786
10:50
Style improvements to tclCompile.c, plus bytecode printing enhancements. file: [15767bad72] check-in: [330dac0c81] user: dkf branch: trunk, size: 107754
2005-07-12
20:35
merged changes from HEAD file: [7f70b87580] check-in: [5316ea45e0] user: kennykb branch: kennykb-numerics-branch, size: 109574
2005-06-22
21:12
merge updates from HEAD file: [8324d7794a] check-in: [2c0cc8807c] user: dgp branch: dgp-refactor, size: 111685
2005-06-20
22:55
typo file: [ca2fc8fb17] check-in: [abcd456abe] user: dkf branch: trunk, size: 109566
21:27
Add compilation for TIP#90-style [catch] requiring a new opcode [Bug1219112] file: [2f1b04d826] check-in: [3f3cff9adc] user: dkf branch: trunk, size: 109565
2005-06-13
01:45
*** MERGE WITH HEAD *** (tag msofer-wcodes-20050611) file: [04cac0ed62] check-in: [d666b09ed5] user: msofer branch: msofer-wcodes-branch, size: 129322
2005-05-11
16:58
merge updates from HEAD file: [eb4648a1ef] check-in: [a8212110f1] user: dgp branch: dgp-refactor, size: 111586
2005-05-10
18:33
Merged kennykb-numerics-branch back to the head; TIPs 132 and 232 file: [a32955d7b3] check-in: [1cc2336920] user: kennykb branch: trunk, size: 109471
2005-05-05
17:55
Merged with HEAD file: [e263d927e4] check-in: [b77c9a87c6] user: kennykb branch: kennykb-numerics-branch, size: 109475
15:32
* generic/tclCompCmds.c: Replaced all instance of * generic/tclCompile.c: TCL_OUT_LINE_COMPILE with TCL_ERROR. * generic/tclInt.h: Now that we've eradicated the mistaken * tests/appendComp.test: notion of a "compile-time error", we can use the TCL_ERROR return code to signal any failure to produce bytecode. file: [06371e0407] check-in: [2f2f477a05] user: dgp branch: trunk, size: 109467
2005-04-29
22:39
Merge updates from HEAD file: [67c9c6286a] check-in: [ac63d218d8] user: dgp branch: dgp-refactor, size: 111597
2005-04-25
21:37
Merged with HEAD. file: [5d4ce0a455] check-in: [fcce6158ac] user: kennykb branch: kennykb-numerics-branch, size: 109577
2005-04-13
09:40
*** FROM HEAD *** * generic/tclCompile.c:Commented out the functions TclPrintInstruction(), TclPrintObject() and TclPrintSource() when not debugging the compiler, as they are never called in that case. * generic/tclCompile.c: * generic/tclExecute.c: Commented out the code to store pointers to literals in INST_PUSH: it breaks TclPrintInstruction. RESTORED in a second commit, when !defined(TCL_COMPILE_DEBUG). file: [d3094c13ba] check-in: [8b5603c892] user: msofer branch: msofer-wcodes-branch, size: 129424
09:39
* generic/tclCompile.c:Commented out the functions TclPrintInstruction(), TclPrintObject() and TclPrintSource() when not debugging the compiler, as they are never called in that case. file: [fd865bb653] check-in: [595299342a] user: msofer branch: trunk, size: 109572
02:42
* generic/tclCompile.c: * generic/tclExecute.c: Commented out the code to store pointers to literals in INST_PUSH: it breaks TclPrintInstruction. file: [5b0e76b6f2] check-in: [b361868a6a] user: msofer branch: msofer-wcodes-branch, size: 129229
2005-04-12
21:09
2005-04-12 Miguel Sofer <msofer@users.sf.net> * generic/tclCmdIL (AppendLocals): * generic/tclCompile.c: * generic/tclExecute.c: * generic/tclInt.h: * generic/tclProc.c: * generic/tclTrace.c: * generic/tclVar.c: part 4 of variable reform. Compiled local vars are half-length with respect to normal vars (missing refCount, tracePtr and searchPtr). When a trace or search is done for the first time on a compiled local, a new extension Var structure is created and the local is linked to it. New flags VAR_SHORT and VAR_EXTENDED are defined to indicate these special variable structs. file: [c9b6d430d6] check-in: [87d6c65542] user: msofer branch: msofer-wcodes-branch, size: 129226
18:23
* generic/tclCompile.c: * generic/tclExecute.c: * generic/tclProc.c: * generic/tclVar.c: fixing setting of the new flags file: [061128edae] check-in: [0fb1506e17] user: msofer branch: msofer-wcodes-branch, size: 129214
2005-04-11
00:40
* generic/tclCompCmds.c: * generic/tclCompile.c: * generic/tclExecute.c: * generic/tclInt.h: * generic/tclProc.c: * generic/tclVar.c: part 2 of variable reform. Removed the flags VAR_SCALAR and VAR_UNDEFINED. * generic/tclExecute.c: missing semicolons under TCL_COMPILE_DEBUG * generic/tclInt.h: missing macros TclAllocObjsStorage and TclFreeObjStorage, not needed under MEM_DEBUG for Tcl_Objs but required for the new Var allocation model. Thanks dgp! file: [86e18ca9a2] check-in: [eed9a6755a] user: msofer branch: msofer-wcodes-branch, size: 129190
2005-04-10
18:13
* generic/tcl.h (comments): * generic/tclCmdIL.c: * generic/tclCompile.c: * generic/tclExecute.c: * generic/tclInt.h: * generic/tclNamesp.c: * generic/tclProc.c: * generic/tclVar.c: First part of variable reform. Change Var struct so that sizeof(Var)==sizeof(Tcl_Obj), and use the special obj allocator for vars. The Var struct has been reduced from (2ints+6ptrs) to (2ints+4ptrs). *** COMPAT: breaks both binary and (trivially) source compat for extensions that access the Var struct. * generic/tclCompile.c (optimiser): * generic/tclExecute.c: storing pointers to literals instead of offsets into the literal table for INST_PUSH. This is currently implemented using NASTY CASTS (ptr->TclPSizedInt->ptr) [not used when VM_USE_PACKED] *** REQUIRES CLEANING: use a union for opnd, instead of casting. file: [fd599cf8b6] check-in: [e6953ba3cf] user: msofer branch: msofer-wcodes-branch, size: 129264
2005-04-07
17:31
merge updates from HEAD file: [1e6a781ad9] check-in: [7d5704f18c] user: dgp branch: dgp-refactor, size: 111429
2005-04-02
21:04
* generic/tclExecute.c: leak fix in INST_STORE_SCALAR file: [86f4a9daf8] check-in: [e718df4738] user: msofer branch: msofer-wcodes-branch, size: 128965
2005-03-31
18:06
* generic/tclCompile.c: restoring lost line in TclPrintInstruction, fixing yet another sign-extension file: [3d5181a07e] check-in: [3b15145268] user: msofer branch: msofer-wcodes-branch, size: 128986
17:00
* generic/tclCompile.c: * generic/tclCompile.h: * generic/tclExecute.c: removing pointer-to-pc instead of jump offsets (most of yesterday's commit): all pain, no gain. Fix for a segfault in TclPrintInstruction (reading procPtr's fields in non-proc bytecodes). file: [1fc27c3131] check-in: [488d56f367] user: msofer branch: msofer-wcodes-branch, size: 128944
2005-03-30
17:04
* generic/tclCompile.c: * generic/tclCompile.h: * generic/tclExecute.c: using pointer-to-pc instead of jump offsets (not in the packed mode), two new instructions to speed up load/store of indexed scalars, some engine tuning. file: [45201fbb3a] check-in: [f630e825c8] user: msofer branch: msofer-wcodes-branch, size: 129371
2005-03-28
22:21
A (very naive and inefficient) bytecode optimiser, version 0 file: [938dea2580] check-in: [0de9eb3000] user: msofer branch: msofer-wcodes-branch, size: 128150
2005-03-23
16:50
* generic/tclCompCmds.c: porting fix of [Bug 1165671] from HEAD * generic/tclCompile.c: small fixes, mainly in TclPrintInstruction file: [a09169285c] check-in: [bbbfc90f0a] user: msofer branch: msofer-wcodes-branch, size: 110915
06:51
* generic/tclCompile.c (OptCleanupByteCode): Operands are not ints; they are TclPSizedInts. Storing them in int type variables loses important bits. file: [d49a4f29f6] check-in: [19b1d15bfa] user: dgp branch: msofer-wcodes-branch, size: 110373
2005-03-22
23:12
First (very timid) post-compile optimisations - testing the basic infrastructure. The only real optimisation at this time is that loop exceptions are replaced with jumps were possible, and that noops (jumps of width 1, inserted arbitrarily for testing purposes) are effectively removed. Slight change in the [foreach] compilation. Fixed the bytecode debugger. file: [8ad93a18e7] check-in: [8d839cc491] user: msofer branch: msofer-wcodes-branch, size: 110364
2005-03-20
13:28
minor changes file: [6ae5f7bb50] check-in: [a1e9649c72] user: msofer branch: msofer-wcodes-branch, size: 97046
00:23
Instruction set cleanup: one instruction INST_YES (not-not) added, removal of unused instructions (66 are left), renumbering to ease the code of the optimiser. Instructions that are logical negation of each other (eg INST_LE and INST_GT) are numbered in pairs (2n)(2n+1) to permit negation by bit-flipping (^1). file: [0bd47acfab] check-in: [31797aacb7] user: msofer branch: msofer-wcodes-branch, size: 97075
2005-03-19
18:26
Massive reduction of variable-related instructions: INST_LOAD, INST_STORE and INST_INCR perform the work of the 20 previous INST_LOAD_*, INST_STORE_*, INST_APPEND_*, INST_LAPPEND_* and INST_INCR_*. Variants, indices and immediate values are packed in the operand (note that performance considerations may later cause some changes here). This is an intermediate commit: the INST numbering is still unchanged, with gaping holes for the removed instructions. Improved stack depth estimates in tclCompCmds.c. file: [02cb70a42d] check-in: [8a1bcbe1b6] user: msofer branch: msofer-wcodes-branch, size: 100396
2005-03-16
10:07
Macro reorganisation, preparing to enable the 8+24 version. file: [c9c22044c1] check-in: [11a8cb6002] user: msofer branch: msofer-wcodes-branch, size: 100088
2005-03-15
20:23
merged with HEAD file: [19c8a4a65b] check-in: [8ab4a0fc9d] user: kennykb branch: kennykb-numerics-branch, size: 109409
19:20
Attempt at fixing 64b issues; as a result, now getting plenty of warnings for formatting issues - will fix later file: [4de2145a75] check-in: [be4f65be0d] user: msofer branch: msofer-wcodes-branch, size: 100037
02:00
* generic/tclCompCmds.c: * generic/tclCompile.c: * generic/tclCompile.h: * generic/tclExecute.c: rewrite of exception return handling. [catch] does not use the ExceptionArray anymore, there are only loop exception ranges. Compiler simplification through two new functions TclBeginExceptRange and TclEndExceptRange. The proper ranges for INST_BREAK and INST_CONTINUE are detected at compile time; this info is used to *rewrite* them to INST_JUMP when first encountered (this will disappear once we have the optimiser). file: [414d8ba028] check-in: [0012ce8e69] user: msofer branch: msofer-wcodes-branch, size: 100030
2005-03-14
17:51
* generic/tclCompile.c: - fixed INST_RETURN's stack effect (-1 instead of -2). - insured that the bytecodes are aligned * generic/tclCompCmds.c: * generic/tclCompile.h: * generic/tclExecute.c: New [catch] logic - completely incompatible with the old one, big hurdle for older compiled scripts. [catch] now compiles just two instructions, the catch range is everything in between INST_BEGIN_CATCH and INST_END_CATCH. Preparation for exception range reform (next commit). file: [77dca9264f] check-in: [3b689f9b22] user: msofer branch: msofer-wcodes-branch, size: 99371
17:17
* generic/tclCompile.c: fixed INST_RETURN's stack effect in tclInstructionTable (-1 instead of -2) file: [72304cc831] check-in: [86ab20e210] user: msofer branch: trunk, size: 109404
2005-03-13
13:57
* Changed files are the usual suspects. Each (instruction+operands) takes two words; instructions that take two operands pack them into a single pointer-sized int. Unused instructions removed from tclInstructionTable. file: [9c65641cd3] check-in: [d2cf6ff28a] user: msofer branch: msofer-wcodes-branch, size: 99302
2005-03-11
19:53
First wordcode machine, instructions and operands are pointer-sized (no other changes or optimisations). Should run on all platforms. Seems slightly faster than the original on my platform. file: [7dc6e246a2] check-in: [eb9a315e3c] user: msofer branch: msofer-wcodes-branch, size: 101633
2005-03-10
22:31
use only 4B-wide operands; simplify compiler; some instruction cleanup file: [36649a621a] check-in: [5b6775e5e1] user: msofer branch: msofer-wcodes-branch, size: 102895
2005-01-12
21:35
Merge updates from HEAD file: [f8877d4757] check-in: [4f5327131e] user: dgp branch: dgp-refactor, size: 111429
2004-12-29
22:46
merge from HEAD file: [785e3baa99] check-in: [0a6d56f9eb] user: kennykb branch: kennykb-numerics-branch, size: 109409
2004-12-24
18:06
Avoid sharing cmdName literals accross namespaces, and generalise usage of the TclRegisterNewLiteral macro [Patch 1090905] file: [283d80c499] check-in: [faec68a625] user: msofer branch: trunk, size: 109404
2004-12-20
18:27
* generic/tclCompile.c: moved TclInitCompiledLocals to tclProc.c * generic/tclProc.c: new static InitCompiledLocals to allow for a single pass over the proc's arguments at proc load time (instead of two as previously). TclObjInterpProc() now allocates the compiledLocals on the tcl execution stack, using the new TclStackAlloc/Free functions. file: [3496d4aecc] check-in: [33e698fd89] user: msofer branch: trunk, size: 109375
2004-12-13
22:02
synch with kennykb-numerics-branch-20041213 file: [ce1a6fbc53] check-in: [34c9e99c86] user: kennykb branch: kennykb-numerics-branch, size: 113438
2004-12-10
13:09
optimised loops that initialise a proc's arguments and compiled local variables, removing tests from inner loops. file: [2ac254907a] check-in: [6f2a5f2a7f] user: msofer branch: trunk, size: 113433
2004-10-28
18:45
merge updates from HEAD file: [5f05aafe28] check-in: [5fdab1eb47] user: dgp branch: dgp-refactor, size: 114642
2004-10-08
15:39
Core of implementation of TIP#201 ('in' and 'ni' operators) file: [9c3e9f6ebf] check-in: [fe8bdb2e90] user: dkf branch: trunk, size: 112532
2004-10-06
09:31
Convert string to stringPtr file: [b4d322889a] check-in: [964c884f26] user: dkf branch: trunk, size: 112308
2004-09-30
00:51
merge updates from HEAD file: [320c03d3d2] check-in: [6cd7cf6875] user: dgp branch: dgp-refactor, size: 114386
2004-09-29
22:17
Factorize out the code for freeing an object's internal rep. file: [5903196395] check-in: [3890ad3c7c] user: dkf branch: trunk, size: 112276
2004-09-26
16:36
Report compilation errors at runtime, [Patch 103368] by dgp. file: [7cc9e041a4] check-in: [aaebedbc1e] user: msofer branch: trunk, size: 112390
2004-09-23
00:34
Corrected the base for the errorline calculation file: [8da0cbe582] check-in: [43c4c7ee37] user: dgp branch: trunk, size: 115098
2004-09-22
22:23
* generic/tclCmdMZ.c (TclProcessReturn): Support the -errorline * generic/tclCompile.c (TclCompileScript): option to [return]. * tests/compile.test (16.23.*): Use that capability to defer reporting * tests/misc.test (1.2): of parse errors until runtime. Updated tests to reflect change. [Bug 1032805] file: [c22fd145c8] check-in: [b9d1ceb353] user: dgp branch: trunk, size: 115090
2004-09-21
23:10
merge updates from HEAD file: [e2c428f414] check-in: [1d1ea15d54] user: dgp branch: dgp-refactor, size: 114001
22:45
* generic/tclBasic.c: Reworked management of the interp * generic/tclCompile.c: flag ERR_ALREADY_LOGGED, to reduce * generic/tclExecute.c: its exposure. Still left several * generic/tclNamesp.c: references that are just too nice on performace to do away with. These changes also resolve an inconsistency in the ::errorInfo values produced by [namespace eval x error foo bar] and [namespace eval x {error foo bar}]. * generic/tclExecute.c (TclCompEvalObj): Simplified the TclCompEvalObj routine. Much housekeeping now reliably happens elsewhere. [Patch 1031949] file: [75db528114] check-in: [0d93a42195] user: dgp branch: trunk, size: 114313
2004-09-08
23:02
Merge updates from HEAD file: [6ef698804e] check-in: [dff8728918] user: dgp branch: dgp-refactor, size: 114179
2004-07-15
17:42
* generic/tclCompile.c (TclCompileScript): * generic/tclLiteral.c (TclReleaseLiteral): fix for [Bug 467523], which resurfaced with the latest changes. The previous strategy was to have special code in TclReleaseLiteral to handle the self-references generated by empty scripts. The new approach avoids the self-reference altogether, by having empty scripts return an unshared literal. file: [7281c63df2] check-in: [639bb865de] user: msofer branch: trunk, size: 114494
2004-07-08
18:46
Modified the logic of literal table cleanup at interp deletion time, insuring that the fix of [Bug 983660] does not have a negative perf impact. file: [4799716d84] check-in: [1647401b73] user: msofer branch: trunk, size: 114125
2004-07-07
22:05
* generic/tclCompile.c (TclCompileScript): fix for [Bug 458361]. Single-word scripts are compiled with an unshared cmdName to avoid shimmering between bytecode and cmdName reps. file: [e0097ffa19] check-in: [046cee7227] user: msofer branch: trunk, size: 113895
2004-07-06
21:08
* tests/cmdMZ.test (cmdMZ-return-2.17): Added a test that a word containing backslash-quoted value is treated correctly. * generic/tclCompile.c (TclWordKnownAtCompileTime): [Bug 986196] Corrected flaw above and the flaw that caused TCL_TOKEN_SIMPLE_WORDs to have their original word value copied ( "{a b}" ) rather than the actual value ( "a b" ). Thanks to Kevin Kenny for report and tests. file: [344d80c52f] check-in: [22941dd4e1] user: dgp branch: trunk, size: 113613
2004-06-08
19:45
* generic/tclCompile.c: handle warning [Bug 969066] file: [dd983ea85b] check-in: [27198a2f13] user: msofer branch: core-8-4-branch, size: 110847
19:27
* generic/tclCompile.c: * generic/tclExecute.c: handle warning [Bug 969066] file: [2b15716a3c] check-in: [b497ca1e0c] user: msofer branch: trunk, size: 113605
2004-05-27
15:13
Merge INST_START_CMD optimization from HEAD. file: [32396af331] check-in: [69f0cb6f60] user: dgp branch: dgp-refactor, size: 113218
2004-05-17
18:42
merge updates from HEAD file: [f981703633] check-in: [5741c7bde9] user: dgp branch: dgp-refactor, size: 112857
2004-05-16
17:25
* generic/tclCompile.h: * generic/tclCompile.c: * generic/tclExecute.c: changed implementation of {expand}, last chance while in alpha as ... ***POTENTIAL INCOMPATIBILITY*** Scripts precompiled with ProComp under previous tcl8.5a versions may malfunction due to changed instruction numbers for INST_LIST_INDEX_IMM, INST_LIST_RANGE_IMM and INST_START_CMD. file: [cf6150a3e4] check-in: [73b4cc9518] user: msofer branch: trunk, size: 113507
2004-05-12
17:43
Optimisations for INST_START_CMD [Bug 926164]. * generic/tclCompile.c (TclCompileScript): avoid emitting INST_START_CMD as the first instruction in a bytecoded Tcl_Obj. It is not needed, as the checks are done before calling TEBC. * generic/tclExecute.c (TclExecuteByteCode): runtime peephole optimisation: check at INST_POP if the next instruction is INST_START_CMD, in which case we fall through. file: [f4da6fb00c] check-in: [5cb41c73c3] user: msofer branch: trunk, size: 113825
2004-05-04
17:44
Merge updates from HEAD. file: [b201037560] check-in: [de9c64200c] user: dgp branch: dgp-refactor, size: 113560
02:44
slight improvement to last commit file: [cbc8116324] check-in: [eb4fd595f3] user: msofer branch: trunk, size: 113445
02:38
* generic/tclCompile.c (TclCompileScript): setting the compilation namespace outside of the loop. file: [2a61ca26ea] check-in: [cfb70aec1f] user: msofer branch: trunk, size: 113450
2004-05-03
19:59
* generic/tclCompile.c: * generic/tclInt.h: reverted fix for [Bug 926445] of 2004-04-02, restoring TCL_ALIGN to the header file. Todd Helfter reported that the macro is required by tbcload. file: [eeb6bf5234] check-in: [6fb7967f71] user: msofer branch: trunk, size: 113454
2004-04-09
20:57
Merge updates from HEAD file: [80b2d2e19a] check-in: [5b5c8133e5] user: dgp branch: dgp-refactor, size: 114096
2004-04-02
20:07
* generic/tclCompile.c: * generic/tclInt.h: removed the macro TCL_ALIGN() from tclInt.h, replaced by the static macro ALIGN() in tclCompile.c [Bug 926445] file: [17c201a46d] check-in: [dca13b4dc1] user: msofer branch: trunk, size: 113990
2004-03-31
01:36
Merge updates from HEAD file: [8f3972e0ed] check-in: [3a26049d35] user: dgp branch: dgp-refactor, size: 113560
2004-03-30
16:22
* generic/tclCompile.c: New instruction code INST_START_CMD * generic/tclCompile.h: that allows checking the bytecode's * generic/tclExecute.c: validity [Bug 729692] and the interp's * tests/interp.test (18.9): readyness [Bug 495830] before running * tests/proc.test (7.1): the command. It also changes the * tests/rename.test (6.1): mechanics of the async tests in TEBC, doing it now at command start instead of every 16 instructions. file: [35a4b2b604] check-in: [f7f63d8e13] user: msofer branch: trunk, size: 113454
2004-03-29
21:43
merge updates from HEAD file: [4aa270d72e] check-in: [f32e7d9305] user: dgp branch: dgp-refactor, size: 113033
02:17
* generic/tclCompile.c (TclCompileScript): corrected possible segfault when a compilation returns TCL_OUTLINE_COMPILE after having grown the compile environment [Bug 925121]. file: [289bbe5787] check-in: [5302a8b135] user: msofer branch: core-8-4-branch, size: 110749
02:09
* generic/tclCompile.c (TclCompileScript): corrected possible segfault when a compilation returns TCL_OUTLINE_COMPILE after having grown the compile environment. file: [5d1f8d76ab] check-in: [6dd42cd8f5] user: msofer branch: trunk, size: 112857
2004-03-15
20:34
* generic/tclCompile.c (TclCompileScript): * tests/compile.test (compile-3.5): corrected wrong test and behaviour in the earlier fix for [Bug 705406]; Don Porter reported this as [Bug 735055], and provided the solution. Fixed in HEAD on 2003-05-09, but backport to 8-4-branch was wrongly omitted; re-reported as [Bug 916795] by Roy Terry, diagnosed by dgp. file: [e564cef3eb] check-in: [1cb6e4bcb7] user: msofer branch: core-8-4-branch, size: 110703
2004-02-18
22:30
Merge updates from HEAD. Ported support of {expand} syntax. file: [28cc6117cc] check-in: [257d73b262] user: dgp branch: dgp-refactor, size: 112995
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: [500cd6eb86] check-in: [beeeb45bbf] user: dgp branch: dgp-refactor, size: 110630
2004-01-20
15:39
Minor whitespace/capitalization fixes file: [933e8299c5] check-in: [b3c1b261c0] user: dkf branch: trunk, size: 112808
2004-01-18
16:19
Full bytecode compilation for [lassign] file: [98caa3a058] check-in: [9a1a37c9ae] user: dkf branch: trunk, size: 112817
2004-01-13
23:15
Patch 876451: restores performance of [return]. Also allows forms such as [return -code error $msg] to be bytecompiled. * generic/tclInt.h: Factored Tcl_ReturnObjCmd() into two pieces: * generic/tclCmdMZ.c: TclMergeReturnOptions(), which can parse the options to [return], check their validity, and create the corresponding return options dictionary, and TclProcessReturn(), which takes that return options dictionary and performs the [return] operation. * generic/tclCompCmds.c: Rewrote TclCompileReturnCmd() to call TclMergeReturnOptions() at compile time so the return options dictionary is computed at compile time (when it is fully known). The dictionary is pushed on the stack along with the result, and the code and level values are included in the bytecode as operands. Also supports optimized compilation of un-[catch]ed [return]s from procs with default options into the INST_DONE instruction. * generic/tclExecute.c: Rewrote INST_RETURN instruction to retrieve the code and level operands, pop the return options from the stack, and call TclProcessReturn() to perform the [return] operation. * generic/tclCompile.h: New utilities include TclEmitInt4 macro * generic/tclCompile.c: and TclWordKnownAtCompileTime(). file: [e4235c8880] check-in: [8727b42c2c] user: dgp branch: trunk, size: 112334
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: [5fff193535] check-in: [524a53e3b3] user: davygrvy branch: trunk, size: 110058
2003-11-19
22:04
Fixed Bug 845412; long commands without expansion don't get tangled with the expansion machinery now... file: [8e3bae8efb] check-in: [791e41a307] user: dkf branch: trunk, size: 109985
2003-11-17
15:23
Added cast to suppress compiler warning. file: [e7280a7384] check-in: [7882b5bc8d] user: dgp branch: trunk, size: 109975
2003-11-14
20:44
* doc/ParseCmd.3: Implementation of TIP 157. Adds recognition * doc/Tcl.n: of the new leading {expand} syntax on words. * generic/tcl.h: Parses such words as the new Tcl_Token type * generic/tclBasic.c: TCL_TOKEN_EXPAND_WORD. Updated Tcl_EvalEx * generic/tclCompile.c: and the bytecode compiler/execution engine * generic/tclCompile.h: to recognize the new token type. New opcodes * generic/tclExecute.c: INST_LIST_VERIFY and INST_INVOKE_EXP and a new * generic/tclParse.c: operand type OPERAND_ULIST1 are defined. Docs * generic/tclTest.c: and tests are included. * tests/basic.test: * tests/compile.test: * tests/parse.test: * library/auto.tcl: Replaced several [eval]s used to perform * library/package.tcl: argument expansion with the new syntax. * library/safe.tcl: In the test files lindex.test and lset.test, * tests/cmdInfo.test: replaced use of [eval] to force direct * tests/encoding.test: string evaluation with use of [testevalex] * tests/execute.test: which more directly and robustly serves the * tests/fCmd.test: same purpose. * tests/http.test: * tests/init.test: * tests/interp.test: * tests/io.test: * tests/ioUtil.test: * tests/iogt.test: * tests/lindex.test: * tests/lset.test: * tests/namespace-old.test: * tests/namespace.test: * tests/pkg.test: * tests/pkgMkIndex.test: * tests/proc.test: * tests/reg.test: * tests/trace.test: * tests/upvar.test: * tests/winConsole.test: * tests/winFCmd.test: file: [267c3365ec] check-in: [cbfb8313ba] user: dgp branch: trunk, size: 109961
2003-10-16
02:28
Merged updates from HEAD file: [d9bcc682dd] check-in: [44102608b1] user: dgp branch: dgp-refactor, size: 107269
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: [7be3bbb0dd] check-in: [3522d44090] user: dgp branch: trunk, size: 107544
2003-10-03
17:13
* generic/tclCompile.c (TclCompileScript): backport fix for crash on TCL_OUT_LINE_COMPILE mishandling. [Bug 705406, 735055] file: [7b3795f6ef] check-in: [38cdced0af] user: hobbs branch: core-8-3-1-branch, size: 106777
2003-09-12
23:55
TIP#123 Implementation based on work by Arjen Markus. [Patch 655176] file: [beee22f80a] check-in: [605f7ff911] user: dkf branch: trunk, size: 107684
2003-07-18
23:35
* generic/tclBasic.c: Corrected several instances of unsafe * generic/tclCompile.c: truncation of UTF-8 strings that might * generic/tclProc.c: break apart a multi-byte character. * library/init.tcl: [Bug 760872] * tests/init.test: file: [8a95ee3924] check-in: [d50fc18438] user: dgp branch: core-8-4-branch, size: 110576
2003-05-22
19:12
Work in progress refactoring Tcl internals, mostly the parsing and evaluation pieces. Notably new Tcl_Token types and a new Tcl_ObjType are added so that each character in a script need only be parsed once, and parse trees can be cached rather than recomputed. Also, compile time errors are removed; all errors during compile become a signal to interpret the code. file: [f853a59d29] check-in: [5614e023c2] user: dgp branch: dgp-refactor, size: 107294
2003-05-09
13:53
fixing previous patch file: [3eea4a798d] check-in: [a89f2bc7b1] user: msofer branch: trunk, size: 107572
13:42
fix for [Bug 735055] file: [cb8edb6195] check-in: [c421db8aa6] user: msofer branch: trunk, size: 107531
2003-04-18
21:54
corrected bogus comments file: [b24496af90] check-in: [23c5c3b713] user: dgp branch: trunk, size: 107445
21:54
Corrected bogus comments file: [0a388dbd6d] check-in: [9fa20f7ed7] user: dgp branch: core-8-4-branch, size: 110363
2003-03-19
22:52
* generic/tclCompile.c: * tests/compile.test: bad command count on TCL_OUT_LINE_COMPILE [Bug 705406] (Don Porter). Backport from 8.5a0 file: [6a86d2d542] check-in: [dd2df64c62] user: msofer branch: core-8-4-branch, size: 110469
22:24
* generic/tclCompile.c: * tests/compile.test: bad command count on TCL_OUT_LINE_COMPILE [Bug 705406] (Don Porter). file: [4ecb6ec364] check-in: [6847eb40b5] user: msofer branch: trunk, size: 107551
16:51
* generic/tclCompCmds.c (TclCompileReturnCmd): Alternative fix for * generic/tclCompile.c (INST_RETURN): [Bug 633204] that uses a new * generic/tclCompile.h (INST_RETURN): bytecode INST_RETURN to * generic/tclExecute.c (INST_RETURN): properly bytecode the [return] command to something that returns TCL_RETURN. file: [1821538ac4] check-in: [8153ce2774] user: dgp branch: trunk, size: 107331
2003-03-13
02:48
* generic/tclBasic.c (Tcl_EvalTokensStandard): * generic/tclCmdMZ.c (Tcl_SubstObj): * generic/tclCompCmds.c (TclCompileSwitchCmd): * generic/tclCompExpr.c (CompileSubExpr): * generic/tclCompile.c (TclSetByteCodeFromAny,TclCompileScript, TclCompileTokens,TclCompileCmdWord): * generic/tclCompile.h (TclCompileScript): * generic/tclExecute.c (TclCompEvalObj): * generic/tclInt.h (Interp,TCL_BRACKET_TERM,TclSubstTokens): * generic/tclParse.c (ParseTokens,Tcl_SubstObj,TclSubstTokens): * tests/subst.test (2.4, 8.7, 8.8, 11.4, 11.5): Substantial refactoring of Tcl_SubstObj to make use of the same parsing and substitution procedures as normal script evaluation. Tcl_SubstObj() moved to tclParse.c. New routine TclSubstTokens() created in tclParse.c which implements all substantial functioning of Tcl_EvalTokensStandard(). TclCompileScript() loses its "nested" argument, the Tcl_Interp struct loses its termOffset field and the TCL_BRACKET_TERM flag in the evalFlags field, all of which were only used (indirectly) by Tcl_SubstObj(). Tests subst-8.7,8.8,11.4,11.5 modified to accomodate the only behavior change: reporting of parse errors now takes precedence over [return] and [continue] exceptions. All other behavior should file: [90e5663a8e] check-in: [15c562285e] user: dgp branch: trunk, size: 107242
2003-02-19
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: [7e1dc72ecd] check-in: [efdc16ed56] user: msofer branch: trunk, size: 110248
2003-02-16
01:36
Don Porter's fix for bad parsing of nested scripts [Bug 681841]. file: [ed949a56ac] check-in: [13c34f1df9] user: msofer branch: trunk, size: 110271
2002-12-06
03:58
* generic/tclCompile.c (TclCleanupByteCode): when using TCL_THREAD_LITERALS, do not worry about interp != NULL when cleaning up bytecodes. file: [e527d0ca82] check-in: [8c2329a41f] user: hobbs branch: mod-8-3-4-branch, size: 109047
03:08
* generic/tclCompile.c (TclCleanupByteCode): When encountering a shared bytecode structure we have to scan the literal table in that structure for objects of type "cmdName". These objects hold references to command structures, possibly in a different interp, and interfere with the cleanup of the refered commands (they keep their refcount up). Essentially at least one interp in a set of clones has a circular reference comand -> proc -> bytecode -> bytecode data -> cmdName obj -> command which prevents the command int that interp from being freed, leaking memory. The solution employed here is to invalidate the internal representation of 'cmdName's (but keeping the string rep), driving the refcount of refered command structures down, and breaking the cycle. file: [dee64e8442] check-in: [a9a7ea8404] user: andreas_kupries branch: mod-8-3-4-branch, size: 109000
2002-11-26
19:48
* generic/tclProc.c (TclCloneProc): Helper for Tcl_CloneInterp. * generic/tclBasic.c: Line 3843ff: New Tcl_CloneInterp public API. * generic/tclProc.c (TclCloneProc): See below. New function. * generic/tclBasic.c: Tcl_Clone... functions. New. Tcl_CloneInterp is main entry into this. * Part of work on more sharing of bytecode information between structurally equivalent interpreters. * generic/tclCompile.c (EncodeCmdLocMap): Operate on ByteCodeData instead of ByteCode. (TclCleanupByteCode): Deref to ByteCodeData in numerous places. (TclInitByteCodeObj): s.a. (TclPrintByteCodeObj): s.a. (TclPrintInstruction): s.a. (RecordByteCodeStats): s.a. * generic/tclLiteral.c (TclReleaseLiteral): s.a. * generic/tclCompile.h: Split struct ByteCode into two structures. The new structure carries the shareable bytrecode information and is named 'ByteCodeData'. * generic/tclExecute.c (GetExceptRangeForPc): s.a. (TclExecuteByteCode): s.a. (PrintByteCodeInfo): s.a. (ValidatePcAndStackTop): s.a. (GetSrcInfoForPc): s.a. file: [18949dfdd3] check-in: [235d59fd34] user: andreas_kupries branch: mod-8-3-4-branch, size: 108363
2002-11-07
19:04
* generic/tclCompile.h: * generic/tclCompile.c (TclCleanupByteCode, RecordByteCodeStats): * generic/tclLiteral.c: * generic/tclInt.h: * generic/tclBasic.c (Tcl_CreateInterp, DeleteInterpProc): add TCL_THREAD_LITERALS conditional support for making global literals be thread-global instead of interp-global. This adjusts the placement and management of the LiteralTable and ByteCodeStats. file: [306c3c059e] check-in: [6aac77723f] user: hobbs branch: mod-8-3-4-branch, size: 107426
2002-09-24
12:53
Removing more CONST-related warnings. file: [01a8f04ee4] check-in: [c73933ee75] user: dkf branch: trunk, size: 108466
2002-08-20
20:25
merged with trunk at tag macosx-8-4-merge-2002-08-20-trunk file: [59600035f1] check-in: [354986d9c3] user: das branch: macosx-8-4-branch, size: 108458
2002-08-05
03:24
* doc/CmdCmplt.3: Applied Patch 585105 to fully CONST-ify * doc/Concat.3: all remaining public interfaces of Tcl. * doc/CrtCommand.3: Notably, the parser no longer writes on * doc/CrtSlave.3: the string it is parsing, so it is no * doc/CrtTrace.3: longer necessary for Tcl_Eval() to be * doc/Eval.3: given a writable string. Also, the * doc/ExprLong.3: refactoring of the Tcl_*Var* routines * doc/LinkVar.3: by Miguel Sofer is included, so that the * doc/ParseCmd.3: "part1" argument for them no longer needs * doc/SetVar.3: to be writable either. * doc/TraceVar.3: * doc/UpVar.3: Compatibility support has been enhanced so * generic/tcl.decls that a #define of USE_NON_CONST will remove * generic/tcl.h all possible source incompatibilities with * generic/tclBasic.c the 8.3 version of the header file(s). * generic/tclCmdMZ.c The new #define of USE_COMPAT_CONST now does * generic/tclCompCmds.c what USE_NON_CONST used to do -- disable * generic/tclCompExpr.c only those new CONST's that introduce * generic/tclCompile.c irreconcilable incompatibilities. * generic/tclCompile.h * generic/tclDecls.h Several bugs are also fixed by this patch. * generic/tclEnv.c [Bugs 584051,580433] [Patches 585105,582429] * generic/tclEvent.c * generic/tclInt.decls * generic/tclInt.h * generic/tclIntDecls.h * generic/tclInterp.c * generic/tclLink.c * generic/tclObj.c * generic/tclParse.c * generic/tclParseExpr.c * generic/tclProc.c * generic/tclTest.c * generic/tclUtf.c * generic/tclUtil.c * generic/tclVar.c * mac/tclMacTest.c * tests/expr-old.test * tests/parseExpr.test * unix/tclUnixTest.c * unix/tclXtTest.c * win/tclWinTest.c file: [c1fda1ed49] check-in: [e476c22fec] user: dgp branch: trunk, size: 108454
2002-07-19
12:31
Global symbols are now all either prefixed with 'tcl' (or 'Tcl' or ...) or have file-scope. file: [a96a0c8d2d] check-in: [86e27ff753] user: dkf branch: trunk, size: 108442
2002-07-11
12:39
tclCompile.c and tclProc.c: small changes in the usage of the VAR_UNDEFINED flag. file: [b3bdce7f45] check-in: [899e743aed] user: msofer branch: trunk, size: 108433
2002-06-17
22:52
* doc/CrtTrace.3: Added TIP#62 implementation of command * doc/trace.n: execution tracing [FR #462580] (lavana). * generic/tcl.h: This includes enter/leave tracing as well * generic/tclBasic.c: as inter-procedure stepping. * generic/tclCmdMZ.c: * generic/tclCompile.c: * generic/tclExecute.c: * generic/tclInt.decls: * generic/tclInt.h: * generic/tclIntDecls.h: * generic/tclStubInit.c: * generic/tclVar.c: * tests/trace.test: file: [3a9c885e91] check-in: [3da5a82795] user: hobbs branch: trunk, size: 108434
00:09
a better algorithm for the previous bug fix. file: [7914440160] check-in: [437763367e] user: msofer branch: trunk, size: 108382
2002-06-16
22:24
[Bug 569438] in the processing of dollar variables file: [b25205e6fb] check-in: [6f670a6acb] user: msofer branch: trunk, size: 108301
2002-06-11
15:42
optimised read access to local variables created at run-time file: [79d4e58625] check-in: [348eec187b] user: msofer branch: trunk, size: 107988
2002-06-10
05:33
Merging with TOT as of 06/09/2002. file: [111729ddde] check-in: [73b68fb238] user: wolfsuit branch: macosx-8-4-branch, size: 107994
2002-05-30
15:03
cleanup in [expr] compiler file: [6dbdb73ca0] check-in: [142a17fb61] user: msofer branch: trunk, size: 107988
2002-03-18
22:30
* generic/tclCompile.c (TclCompileTokens): Modified imported bugfix to use a heap variable for the message buffer instead of placing it on the stack. * Updated "mod-8-3-1-branch" to head of "core-8-3-1-branch" to get the newest fixes for tcl 8.3.4 into this branch. file: [5bd6761ad9] check-in: [d631cf3e55] user: andreas_kupries branch: mod-8-3-4-branch, size: 106963
2002-03-15
20:10
Backport of patch for [Bug 530320] file: [c5c90008d8] check-in: [7cffb43f2d] user: msofer branch: core-8-3-1-branch, size: 106436
15:39
Fixed buffer overrun reported in 530320; luckily it is not likely to be exploitable in any meaningful way, but crashing Tcl instead of triggering an error still isn't good. file: [1a5cf73b88] check-in: [33ea727db7] user: dkf branch: trunk, size: 108273
2002-02-05
02:21
Merging with the current TOT. Very few conflicts, mostly in the generated files. file: [169425829f] check-in: [f469a31a06] user: wolfsuit branch: macosx-8-4-branch, size: 108246
2002-01-25
20:40
* Updated interfaces of generic/tclEncoding, generic/tclFilename.c, generic/tclIOUtil.c, generic/tclPipe.c, generic/tclResult.c, generic/tclUtil.c, generic/tclVar.c and mac/tclMacResource.c according to TIP 27. Tcl_TranslateFileName rewritten as wrapper around VFS-aware version. Updated callers. ***POTENTIAL INCOMPATIBILITY*** Includes source incompatibilities: argv arguments of Tcl_Concat, Tcl_JoinPath, Tcl_OpenCommandChannel, Tcl_Merge; argvPtr arguments of Tcl_SplitList and Tcl_SplitPath. file: [8d3f02e907] check-in: [fceed15544] user: dgp branch: trunk, size: 108237
2001-12-11
19:45
small change in bytecode instructionsINST_LIST_INDEX_MULTI and INST_LSET_FLAT file: [6fd2fe3539] check-in: [11d55c29e7] user: msofer branch: trunk, size: 108234
2001-12-10
15:44
fixed the calculation of the maximal stack depth required by bytecodes [Bug 483611]. file: [36e0c9350b] check-in: [1a664a49d8] user: msofer branch: trunk, size: 108199
2001-12-05
18:22
* NOTES: Updated to explain the usage of the various macros upfront. The original contents remain and are declared to be the scratchpad. * tclCmdMZ.c: * tclCompCmds.c: * tclCompile.c: * tclEvent.c: * tclExecute.c: * tclNamesp.c: * tclParse.c: * tclProc.c: * tclUtil.c: More places using TCL_STRUCT_ON_HEAP. file: [8d40a0b5a2] check-in: [dfc8a95b9f] user: andreas_kupries branch: mod-8-3-4-branch, size: 106866
2001-12-04
21:52
* NOTES: * tcl.h: * tclInt.h: Moved the macros to control feature exclusion and stack manipulation into the private area of the tcl headers. Renamed the macros for TCL_STRUCT_ON_HEAP to make their names more sensible. * tclCmdAH.c: * tclCompCmds.c: * tclCompExpr.c: * tclCompile.c: * tclExecute.c: * tclIO.c: * tclParse.c: * tclParseExpr.c: * tclScan.c: * tclUnixChan.c: Adapted to changed macro names, added some more places there structures go on the heap instead of the stack. Fixed a problem with TCL_FMT_STATIC_FLOATBUFFER_SZ which caused the interp to crash when actually used to reduce the usage of the stack. file: [16be34c702] check-in: [fa28ece419] user: andreas_kupries branch: mod-8-3-4-branch, size: 106788
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: [0a8ce2ef7a] check-in: [fc43051481] user: andreas_kupries branch: mod-8-3-4-branch, size: 106798
2001-11-21
02:36
added TIP#73 patch #483500 from Kevin Kenny. This deprecates TclpGetTime in favor of new Tcl_GetTime. file: [222adc3b16] check-in: [ad0e26f63b] user: hobbs branch: trunk, size: 108632
2001-11-14
23:17
Reference implementation of TIP's #22, #33 and #45. Adds the ability of the [lindex] command to have multiple index arguments, and adds the [lset] command. Both commands are byte-code compiled. [Patch #471874] (work by Kenny, commited by Hobbs) file: [bdf4e4e982] check-in: [8e0db83abc] user: hobbs branch: trunk, size: 108632
2001-10-15
20:27
* generic/tclInt.decls (TclExpandCodeArray,TclGetInstructionTable): Added to internal stubs table. Tclcompiler (Tclpro project) needs them if used as loadable package under Windows. Changed signatures. We don't want to describe compiler internal structures in "tclInt.h". * generic/tclCompile.h: S.a. Removed function declarations. * generic/tclCompile.c: S.a. Adapted to changed signatures. file: [0015b7e54f] check-in: [054c240e9d] user: andreas_kupries branch: core-8-3-1-branch, size: 106409
20:26
* generic/tclInt.decls (TclExpandCodeArray,TclGetInstructionTable): Added to internal stubs table. Tclcompiler (Tclpro project) needs them if used as loadable package under Windows. Changed signatures. We don't want to describe compiler internal structures in "tclInt.h". * generic/tclCompile.h: S.a. Removed function declarations. * generic/tclCompile.c: S.a. Adapted to changed signatures. file: [d8a061d56a] check-in: [57a57c136d] user: andreas_kupries branch: trunk, size: 107838
2001-09-27
13:46
Backing out unwise changes. file: [a03c876feb] check-in: [2f9179ed81] user: dkf branch: dkf-64bit-support-branch, size: 107685
2001-09-26
14:23
Now builds on Solaris8/SPARC with both SunPro CC *and* GCC. file: [b3c2030162] check-in: [4850711173] user: dkf branch: dkf-64bit-support-branch, size: 107781
2001-09-25
16:49
Woo hoo! Builds on one platform (Solaris8/SPARC with SunPro CC) file: [feda693a6d] check-in: [dd2d80954c] user: dkf branch: dkf-64bit-support-branch, size: 107707
2001-09-19
18:18
* generic/tclExecute.c (TclExecuteByteCode): * generic/tclCompile.c (instructionTable): * generic/tclCompCmds.c (TclCompileStringCmd): INST_STR_MATCH - Updated to Int1 instruction type and added special case to use INST_STR_EQ instead when no glob chars are specified in a static string. file: [25c1f54a91] check-in: [c21e0bf2e1] user: hobbs branch: trunk, size: 107683
2001-09-17
11:51
Disabled all compile and execution tracing functionality in standard builds [Bug 451858]. file: [9c7e5a5228] check-in: [dfdf785de5] user: msofer branch: trunk, size: 107681
2001-09-04
11:54
fixed incorrect opreands for INST_LIST [Bug: 458241] file: [60d9c52d75] check-in: [74b6e03b25] user: msofer branch: trunk, size: 107586
2001-05-19
16:11
Update to head -> S4-0-2 file: [b193da59e9] check-in: [1b2b2b84cf] user: msofer branch: msofer-bcEngine, size: 107589
2001-05-17
02:13
* generic/tclBasic.c: added new CompileProc invocations to basic command initialization. * generic/tclCompCmds.c: added new compile commands for append, lappend, lindex and llength. Refactored set and incr compile commands to use new TclPushVarName function for handling the varname component during compilation (also used by append and lappend). Changed string compile command to compile toplevel code as well (when possible). * generic/tclCompile.c: added new instruction enums * generic/tclCompile.h: added debug info for new instructions * generic/tclExecute.c (TclExecuteByteCode): moved elemPtr to toplevel var (oft-used). Added definitions for new bytecode instructions INST_LIST_INDEX, INST_LIST_LENGTH, INST_APPEND_SCALAR1, INST_APPEND_SCALAR4, INST_APPEND_ARRAY1, INST_APPEND_ARRAY4, INST_APPEND_ARRAY_STK, INST_APPEND_STK, INST_LAPPEND_SCALAR1, INST_LAPPEND_SCALAR4, INST_LAPPEND_ARRAY1, INST_LAPPEND_ARRAY4, INST_LAPPEND_ARRAY_STK, INST_LAPPEND_STK. Refactored repititious code for reuse with INST_LOAD_STK (same as INST_LOAD_SCALAR_STK), INST_STORE_STK (same as INST_STORE_SCALAR_STK). Updated INST_STR_CMP with style of fix of 2001-04-06 Fellows [Bug #219201] as that fix only affected the runtime eval'ed "string" (string compare is normally byte-compiled now). We may want to back these out for speed in the future, noting the problems with \x00 comparisons in the docs. * generic/tclInt.h: declarations for new compile commands. * generic/tclVar.c: change TclGetIndexedScalar, TclGetElementOfIndexedArray, TclSetElementOfIndexedArray and TclSetIndexedScalar to use flags. The Set functions now support TCL_APPEND_ELEMENT and TCL_LIST_ELEMENT as well. * generic/tclInt.decls: * generic/tclIntDecls.h: minor signature changes for above. file: [2a48668bb5] check-in: [a63c0633e9] user: hobbs branch: trunk, size: 107584
2001-05-15
20:07
refactored varname pushing code and some of the bytecode instructions file: [3d55201c8a] check-in: [73ab621f59] user: hobbs branch: dev-hobbs-branch, size: 107588
2001-05-11
20:47
new byte-compiled commands, Tcl_GetUnicodeFromObj and string comparison changes file: [f9ccf2e86c] check-in: [bbd0c14230] user: hobbs branch: dev-hobbs-branch, size: 107820
2000-05-26
08:53
* generic/tclCompExpr.c: changed INST_STREQ -> INST_STR_EQ, INST_STRNEQ -> INST_STR_NEQ * generic/tclCompile.c: added streq, strneq, strcmp, strlen & strmatch to the compiled stats instructionTable * generic/tclCompile.h: added instructions INST_STR_CMP, INST_STR_INDEX, INST_STR_MATCH * generic/tclCompCmds.c: added byte compiler support for [string compare|match|index]. * generic/tclExecute.c: Changed INST_STR_(N)EQ to return an Int object and not bother trying to reuse the top stack object. Added INST_STR_CMP, INST_STR_INDEX, INST_STR_MATCH bytecode ops. Extended evalstats output info with Tcl_IsShared stat info. file: [b550e854e5] check-in: [42d08624f2] user: hobbs branch: trunk, size: 105858
2000-03-30
04:36
* generic/tclCompile.c (TclCleanupByteCode): made ByteCode cleanup more aware of TCL_BYTECODE_PRECOMPILED flagged structs (gen'd by tbcload), to correctly clean them up. * generic/tclClock.c (FormatClock): moved check for empty format earlier, commented 0 result return value file: [8dfb9e1622] check-in: [95a7cc2831] user: hobbs branch: trunk, size: 106251
1999-12-12
02:26
* tests/var.test: * generic/tclCompile.c: fixed problem where setting to {} array would intermittently not work. (Fontaine) [Bug: 3339] * generic/tclCmdMZ.c: * generic/tclExecute.c: optimized INST_TRY_CVT_TO_NUMERIC to recognize boolean objects. (Spjuth) [Bug: 2815] * tests/info.test: * tests/parseOld.test: * generic/tclCmdAH.c: * generic/tclProc.c: changed Tcl_UplevelObjCmd (uplevel) and Tcl_EvalObjCmd (eval) to use TCL_EVAL_DIRECT in the single arg case as well, to take advantage of potential pure list input optimization. This means that it won't get byte compiled though, which should be acceptable. * generic/tclBasic.c: made Tcl_EvalObjEx pure list object aware in the TCL_EVAL_DIRECT case for efficiency. * generic/tclUtil.c: made Tcl_ConcatObj pure list object aware, and return a list object in that case [Bug: 2098 2257] * generic/tclMain.c: changed Tcl_Main to not constantly reuse the commandPtr object (interactive case) as it could be shared. (Fellows) file: [75939542aa] check-in: [a887ecceee] user: hobbs branch: trunk, size: 105665
1999-12-08
05:49
* generic/tclUtil.c: fixed Tcl_ScanCountedElement to not step beyond the end of the counted string [Bug: 3336] * generic/tclCompile.c: fixed 'bad code length' error for 'expr + {[incr]}' case, with new test case [Bug: 3736] and seg fault on 'expr + {[error]}' (different cause) that was caused by a correct optimization that didn't correctly track how it was modifying the source string in the opt. The optimization was removed, which means that: expr 1 + {[string length abc]} will be not be compiled inline as before, but this should be written: expr {1 + [string length abc]} which will be compiled inline for speed. This prevents expr 1 + {[mindless error]} from seg faulting, and only affects optimizations for degenerate cases [Bug: 3737] file: [40e570f8be] check-in: [d339070a4e] user: hobbs branch: core-8-2-1-branch, size: 105715
1999-12-04
06:15
* tests/expr-old.test: * tests/parseExpr.test: * tests/string.test: * generic/tclGet.c: * generic/tclInt.h: * generic/tclObj.c: * generic/tclParseExpr.c: * generic/tclUtil.c: * generic/tclExecute.c: added TclCheckBadOctal routine to enhance error message checking for when users use invalid octal numbers (like 08), as well as replumbed the Expr*Funcs with a new VerifyExprObjType to simplify type handling. * tests/expr.test: * generic/tclCompile.c: fixed 'bad code length' error for 'expr + {[incr]}' case, with new test case [Bug: 3736] and seg fault on 'expr + {[error]}' (different cause) that was caused by a correct optimization that didn't correctly track how it was modifying the source string in the opt. The optimization was removed, which means that: expr 1 + {[string length abc]} will be not be compiled inline as before, but this should be written: expr {1 + [string length abc]} which will be compiled inline for speed. This prevents expr 1 + {[mindless error]} from seg faulting, and only affects optimizations for degenerate cases [Bug: 3737] file: [b216898704] check-in: [bc2b85b9c2] user: hobbs branch: trunk, size: 105711
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: [86bdc55034] check-in: [be0c860183] user: hobbs branch: core-8-2-1-branch, size: 109801
1999-10-21
02:16
* unix/tclUnixNotfy.c: fixed event/io threading problems by making triggerPipe non-blocking * library/tcltest1.0/tcltest.tcl: * generic/tclThreadTest.c: fixed mem leaks in threads * generic/tclResult.c: fixed Tcl_AppendResultVA so it only iterates once over the va_list (avoiding a memcpy of it, which is not portable). * generic/regc_color.c: fixed mem leak and assertion, from HS * generic/tclCompile.c: removed savedChar trick that appeared to be causing a segv when the literal table was released * tests/string.test: * generic/tclCmdMZ.c: fixed [string index] to return ByteArrayObj when indexing into one (test case string-5.16) [Bug: 2871] file: [acf947a070] check-in: [1a3cca95e4] user: hobbs branch: trunk, size: 109797
1999-09-22
04:12
1999-09-21 Jeff Hobbs <hobbs@scriptics.com> * 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: [0d86560cc7] check-in: [ab656050a9] user: hobbs branch: core-8-2-1-branch, size: 109904
1999-08-19
02:59
1999-08-18 Jeff Hobbs <hobbs@scriptics.com> * doc/OpenFileChnl.3: * doc/file.n: * tests/cmdAH.test: * tclIO.c: * tclCmdAH.c: added "file channels ?pattern?" tcl command, with associated Tcl_GetChannelNames and Tcl_GetChannelNamesEx public C APIs (added to tcl.decls as well), with docs and tests. * 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. file: [e481e817bf] check-in: [fb64d24b32] user: hobbs branch: trunk, size: 109902
1999-04-22
22:57
* generic/tclInt.h: * generic/tclInt.decls: * generic/tclCompile.c: Added TclSetByteCodeFromAny that takes a hook procedure to invoke after compilation but before the byte codes are emitted. This makes it possible to do postprocessing on the compiled byte codes before the ByteCode is generated. * generic/tclLiteral.c: Added TclHideLiteral and TclAddLiteralObj to make it possible to create local unshared literal objects. file: [fc02a9bcdc] check-in: [18e0420795] user: stanton branch: trunk, size: 109857
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: [206e1473e5] check-in: [f3b32fb71c] user: stanton branch: trunk, size: 108280
1999-03-24
01:42
Fixed initialization bug [Bug ID: 647] file: [1eb0c53b4d] check-in: [1aebc74e85] user: surles branch: core-8-1-branch-old, size: 108283
1999-03-11
19:28
Deleted: Add documentation for Tcl_GetVersion() check-in: [940e47cf48] user: redman branch: scriptics-tclpro-1-2, size: 0
1999-02-10
23:31
* unix/mkLinks: * doc/SetVar.3: * generic/tcl.h: * generic/tclVar.c: Restored Tcl_ObjGetVar2 and Tcl_ObjSetVar2 from 8.0. Renamed Tcl_Get/SetObjVar2 to Tcl_GetVar2Ex and Tcl_SetVar2Ex. * Merged 8.0.5b2 patches file: [473ccdec24] check-in: [b403ad5f28] user: stanton branch: core-8-1-branch-old, size: 108309
1999-02-03
00:55
* generic/tclProc.c: * generic/tclNamesp.c: * generic/tclInt.h: * generic/tclCmdIL.c: * generic/tclBasic.c: * generic/tclVar.c: Applied patch from Viktor Dukhovni to rationalize TCL_LEAVE_ERR_MSG behavior when creating variables. * generic/tclVar.c: Fixed bug in namespace tail computation. Fixed bug where upvar could resurrect a namespace variable whose namespace had been deleted. * generic/tclCompile.c (TclCompileExprCmd): Eliminated yet another bogus optimization in expression compilation. * generic/tclCompile.c (CompileExprWord): Fixed exception stack overflow bug caused by missing statement. [Bug: 928] * generic/tclIOCmd.c: * generic/tclBasic.c: Objectified the "open" command. [Bug: 1113] file: [936ce60947] check-in: [8da7bff5d5] user: stanton branch: trunk, size: 262925
1999-02-02
22:26
* generic/tclCompile.c (CompileExprWord): Fixed exception stack overflow bug caused by missing statement. [Bug: 928] file: [c29f42ed18] check-in: [2819702950] user: stanton branch: trunk, size: 262913
1998-12-12
01:36
Minor change to Lock Declarations to use TCL_DECLARE_MUTEX macro, published in tcl.h. file: [ed6ba776a5] check-in: [c778c9ef5e] user: lfb branch: core-8-1-branch-old, size: 108261
1998-12-10
21:21
* Fixed lots of files that used TCL_THREAD instead of TCL_THREADS. * generic/tclEncoding.c (Tcl_FreeEncoding): Moved most of the code into a static FreeEncoding routine that does not grab the encodingMutex to avoid deadlocks/races when called from other routines that already have the mutex. file: [bd0fe35761] check-in: [09f356baa2] user: stanton branch: core-8-1-branch-old, size: 108290
1998-11-11
04:54
lots of lint wrapped mutex declarations in ifdefs to avoid compiler warnings file: [5c1ad3ad0c] check-in: [9535a849c1] user: stanton branch: core-8-1-branch-old, size: 108289
00:15
fixed bug in initialization order, caught by Purify file: [9c5a0ec3d8] check-in: [abca73d1c3] user: stanton branch: core-8-1-branch-old, size: 108263
1998-10-06
00:35
* tclCompile.c (TclCompileScript): changed to avoid modifying the input string in place because name lookup operations could have arbitrary side effects file: [2c0914c76d] check-in: [78ce452bce] user: stanton branch: core-8-1-branch-old, size: 108263
1998-09-30
20:46
more cleanup of 8.0.3 merges into 8.1 file: [5fcba3eb59] check-in: [920c75be13] user: stanton branch: core-8-1-branch-old, size: 107888
1998-09-24
23:58
merging changes from 8.0.3 into 8.1a2 file: [6f5bb218ba] check-in: [1c3c1ab19f] user: stanton branch: core-8-1-branch-old, size: 107914
1998-09-21
23:39
Added contents of Tcl 8.1a2 file: [d4358e4b1c] check-in: [8c56dc8868] user: stanton branch: core-8-1-branch-old, size: 99637
1998-09-14
18:39
Replaced SCCS strings, fixed binary files file: [079fb80637] check-in: [196f92fd17] user: stanton branch: trunk, size: 262780
1998-08-07
11:46
added TclInitCompiledLocals deferred resolver caching code to procedure invocation time file: [3b12d663fc] check-in: [50346b7568] user: stanton branch: trunk, size: 262781
1998-07-24
15:50
lint file: [29dc2fb579] check-in: [272d05a416] user: stanton branch: trunk, size: 261890
13:49
Updated core w/ Micheals latest changes. file: [b22988f2c0] check-in: [dff1740f40] user: surles branch: trunk, size: 261884
1998-07-06
14:54
Merged changes between child workspace "/home/welch/ws/tcl8.0.3i" and parent workspace "/home/welch/ws/tcl8.0.3". file: [1b3cadb805] check-in: [0b7608a07e] user: welch branch: trunk, size: 261689
1998-07-01
19:08
Merged changes between child workspace "/home/escoffon/ws/tcl8.0" and parent workspace "/ws/tcl8.0". file: [cc2ecf66db] check-in: [8be93cc284] user: escoffon branch: trunk, size: 258981
1998-06-29
16:41
Fixed IsLocalScalar file: [056bcec2fc] check-in: [cc18b55815] user: welch branch: trunk, size: 255269
1998-06-25
16:12
catch didn't compile non-local variables correctly file: [9dc24aed73] check-in: [e80ff7bcb2] user: stanton branch: trunk, size: 255042
1998-06-18
18:24
added fix for foreach compile proc so it handles non-local names correctly fixed compile procs so they no longer corrupt the exception stack don't inline expressions when it is unsafe to do so file: [a99b0d26f8] check-in: [9691867ba6] user: stanton branch: trunk, size: 254719
1998-06-10
12:12
- Added initialization of the flags field in ByteCode - Added the TclGetInstructionTable procedure so that the table can be accessed file: [426432ebd2] check-in: [89bd94d5cb] user: escoffon branch: trunk, size: 253998
1998-03-26
14:45
Added: Initial revision file: [f6a8d70006] check-in: [cacdd0f329] user: rjohnson branch: trunk, size: 253378