diff options
author | hobbs <hobbs> | 2000-05-26 08:54:08 (GMT) |
---|---|---|
committer | hobbs <hobbs> | 2000-05-26 08:54:08 (GMT) |
commit | f57fe67295145c6b28d1f4e3536eb0408a0fd410 (patch) | |
tree | 4b18c6d6a357caf05cb8f6c820edbc0393184dcd | |
parent | a14ef5dc21d5fb63776b7d6be34b84ecfd368aad (diff) | |
download | tcl-f57fe67295145c6b28d1f4e3536eb0408a0fd410.zip tcl-f57fe67295145c6b28d1f4e3536eb0408a0fd410.tar.gz tcl-f57fe67295145c6b28d1f4e3536eb0408a0fd410.tar.bz2 |
new compiled commands, reworked string commands for unicode
-rw-r--r-- | ChangeLog | 46 |
1 files changed, 39 insertions, 7 deletions
@@ -1,3 +1,40 @@ +2000-05-26 Jeff Hobbs <hobbs@scriptics.com> + + * generic/tclCmdMZ.c (Tcl_RegsubObjCmd): reworked to operate in + Unicode, tweaked for performance. + (Tcl_StringObjCmd) changed STR_FIRST/STR_LAST error message to + something more understandable, reworked STR_FIRST, STR_LAST, + STR_MAP, STR_MATCH, STR_RANGE, STR_REPLACE to operate in Unicode. + Removed inneffectual STR_RANGE "special" ByteArray support. + Optimized STR_MAP algorithm, especially optimized for one-pair case. + Fixed possible mem overrun in STR_INDEX bytearray case. + + * 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. + + * generic/tclInt.h: + * generic/tclObj.c (Tcl_DbIsShared): added support for checking + result of Tcl_IsShared in evalstats (TCL_COMPILE_STATS). + + * generic/tclStringObj.c (Tcl_AppendUnicodeToObj): removed dead code. + (AppendUnicodeToUnicodeRep) removed overallocation by extra + sizeof(Tcl_UniChar) multiplier. + + * tests/string.test: added string map tests for the one-pair case, + corrected tests to reflect improved error messages in first/last. + Added tests against mem overrun in string index bytearray case. + 2000-05-23 Eric Melski <ericm@scriptics.com> * generic/tclInt.h: Added function prototypes for @@ -16,7 +53,7 @@ (TclCompileStringCmd): Basic implementation of byte-compiled [string] command. Not all subcommands are implemented; those that are not an out-line compiled. - + (TclCompileReturnCmd): Byte-compiled implementation of [return] command. Only "simple" returns are byte-compiled; in particular, if the -code, -errorinfo or -errorcode flags are used, the command @@ -32,11 +69,6 @@ * win/tclWinSerial.c: cast cleanup [Bug: 5626] * win/tclWinFCmd.c: cast cleanup [Bug: 5627] -2000-05-20 Jeff Hobbs <hobbs@scriptics.com> - - * generic/tclStringObj.c (AppendUnicodeToUnicodeRep): removed - overallocation by extra sizeof(Tcl_UniChar) multiplication. - 2000-05-19 Jeff Hobbs <hobbs@scriptics.com> * generic/tclTest.c: @@ -2570,7 +2602,7 @@ * generic/tclCmdMZ.c: * tests/string.test: Fixed bug where string map failed on null - strings. + strings. * generic/regexec.c: * unix/tclUnixNotfy.c: lint |