summaryrefslogtreecommitdiffstats
path: root/generic
Commit message (Collapse)AuthorAgeFilesLines
* * generic/tclRegexp.c (Tcl_RegExpExecObj): added use ofhobbs2001-05-211-3/+2
| | | | Tcl_GetUnicodeFromObj.
* * Note that "tclbench" (see project "tcllib") was extended withandreas_kupries2001-05-191-22/+172
| | | | | | | | | | | | | | | | | | performance benchmarks for [fcopy] too. * doc/fcopy.n: Updated to reflect the extended behaviour of 'fcopy'. * tests/io.test: Added tests 'io-52.9', 'io-52.10' and 'io-52.11' to test the handling of encodings by 'fcopy' / 'TclCopychannel' [Bug #209210]. * generic/tclIO.c: Split of both 'Tcl_ReadChars' and 'Tcl_WriteChars' into a public error checking and an internal working part. The public functions now use the new internal ones. The new functions are 'DoReadChars' and 'DoWriteChars'. Extended 'CopyData' to use the new functions 'DoXChars' when required by the encodings on the input and output channels [Bug #209210].
* * generic/tclBasic.c: added new CompileProc invocations to basichobbs2001-05-179-650/+1471
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* generic/tclCmdMZ.c: made use of new Tcl_GetUnicodeFromObjhobbs2001-05-171-62/+60
|
* * generic/tcl.decls:hobbs2001-05-154-4/+76
| | | | | | | * generic/tclDecls.h: * generic/tclStubInit.c: * generic/tclStringObj.c (Tcl_GetUnicodeFromObj): new function to parallel Tcl_GetStringFromObj (fix of an API oversight).
* * generic/tclFileName.c (ExtractWinRoot): corrected ABR errorhobbs2001-05-151-12/+11
|
* Patch from [Bug: 231259]Miguel Sofer2001-05-152-7/+20
|
* Negative start index to [string first] caused offset return value (Bug 423581)dkf2001-05-141-1/+7
|
* rand() gets != seeds in != threads [Bug 416643]Miguel Sofer2001-05-071-2/+8
|
* Patch for bug #420507Miguel Sofer2001-05-031-2/+2
|
* Added several missing CONSTs in calls to TclGetNamespaceForQualNameKevin B Kenny2001-04-276-19/+24
|
* Added a bunch of missing CONST declarations to stop warnings aboutdkf2001-04-252-11/+15
| | | | using TclGetNamespaceForQualName from the (Solaris8) SUNWspro cc.
* (TIP #27) Another round of CONST changes, thisKevin B Kenny2001-04-249-111/+119
| | | | | | | | | time adding CONST to the API's exported from tclBasic.c. [Patch #415179] ***POTENTIAL INCOMPATIBILITY*** from 8.4a2, in which Vince Darley's changes to command tracing were added. A const has been added to the type signature of one of the parameters to Tcl_CommandTraceProc.
* Recognise the non-numeric boolean literals (true,false,yes,no,on,off.)dkf2001-04-091-3/+47
| | | | [Bug #217777]
* Avoid panic when there are extra items in the tcl stackMiguel Sofer2001-04-071-3/+7
| | | | [Bug #406709, Patch #414470]
* Corrected behaviour of [namespace code] (bug #219385, patch #403530)Miguel Sofer2001-04-071-4/+8
|
* Fixed problem with [string compare \x00 \x01] and hopefully sped thedkf2001-04-062-34/+108
| | | | | command up in a few cases too (notably byte arrays and UNICODE objects.) [Bug #219201]
* Fixed so tclCmdMZ.c will compile with K&R compilers [Patch #413844]dkf2001-04-051-3/+3
|
* Restore support for pre-ANSI compilers.dgp2001-04-041-2/+3
|
* 2001-04-04 Andreas Kupries <andreas_kupries@users.sourceforge.net>andreas_kupries2001-04-041-1/+39
| | | | | | | * generic/tclTest.c: * tests/io.tests: TIP #10 followup correcting a problem with the original patch because of the lack of 'testthread id' for a non-threaded compilation.
* (TIP#27) Changed a number of Tcl API's to accept "CONST char*"Kevin B Kenny2001-04-0410-207/+224
| | | | in place of simple "char*". (kennykb) [Patch #404026]
* * generic/tclListObj.c (Tcl_SetListObj): set objPtr->length = 0 inhobbs2001-04-041-1/+2
| | | | | empty object case to maintain sanctity of Tcl_Obj bytes/length pairing. (porter) [Patch #405998]
* Typo in commentdgp2001-04-041-2/+2
|
* * generic/tcl.h:hobbs2001-04-021-3/+3
| | | | | | | | | * tools/tcl.wse.in: * win/configure.in (VER): * win/configure: * unix/configure: * unix/configure.in (VER): * unix/tcl.spec: updated patchlevel information to 8.4a3
* * generic/tclCkalloc.c (TclFinalizeMemorySubsystem): set curTagPtrhobbs2001-03-312-3/+5
| | | | | | | | to NULL to allow for reuse. * generic/tclEvent.c (Tcl_Finalize): moved the tsdPtr initialization inside the subsystemsInitialized check to prevent it potentially getting called twice during finalization. (wu) [Patch #403532, Bug #219391]
* * generic/tclThreadTest.c (Tcl_ThreadObjCmd): cast fixeshobbs2001-03-311-3/+3
|
* * generic/tclTest.c (TestChannelCmd): added cast to mollifyhobbs2001-03-311-2/+2
| | | | Windows debug build.
* 2001-03-30 Andreas Kupries <andreas_kupries@users.sourceforge.net>andreas_kupries2001-03-306-6/+74
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * All of the changes below belong to TIP #10 [Tcl I/O Enhancement: Thread-Aware Channels]. See also [Patch #403358] at SF. * generic/tclIO.h (struct ChannelState, line 236f): Extended the structure with a new field of type 'Tcl_ThreadId' to hold the id of the thread currently managing all channels with this state. Note: This structure is shared by all channels in a stack of transformations. * generic/tclIO.c (Tcl_CreateChannel, lines 1058-1065): Modified to store the Id of the current thread in the 'ChannelState' of the new channel. * generic/tclIO.c (Tcl_SpliceChannel, lines 2265-2270): Modified in the same manner as 'Tcl_CreateChannel' as the channel will be managed by the current thread afterward. * generic/tclIO.c (Tcl_GetChannelThread, lines 1478-1503): * generic/tcl.decls (Tcl_GetChannelThread, lines 1504-1506): New API function to retrieve the Id of the managing thread from a channel. Implementation and declaration. * generic/tclTest.c (TestChannelCmd, lines 4520-4532): Added subcommand 'mthread' to query a channel about its managing thread.
* * tests/regexp.test (regexp-19.1):hobbs2001-03-281-3/+4
| | | | | * generic/tclCmdMZ.c (Tcl_RegsubObjCmd): fixed handling of nulls in subspec value.
* Correction to patch from 2001-01-18dgp2001-03-261-3/+3
| | | | tclDecls.h was not generated using 'make genstubs'. Typos in case.
* * generic/tclNamesp.c (Tcl_Import): Correctly freed a DString.hobbs2001-03-241-1/+3
| | | | (lavana) [Patch #403755]
* * generic/tclVar.c (Tcl_ArrayObjCmd): Corrected retrieval ofhobbs2001-03-241-2/+9
| | | | resultPtr to prevent possible corruption.
* Made [unset] command behave as documented when no arguments present.dkf2001-03-131-2/+8
|
* A missing return was causing memory corruption in [string map].dkf2001-03-131-1/+2
|
* Added some casts to ClientData that are apparently needed on somedkf2001-03-131-5/+5
| | | | architectures for a clean compile.
* Fixed two faults with [unset -nocomplain]; one with a possible overrundkf2001-03-061-11/+17
| | | | of the argument array, and another with the documentation.
* Fixed bug that could leave saved data for [info level] pointing intodkf2001-03-021-10/+34
| | | | unallocated memory.
* [split $string ""] now shares character strings in the resulting list,dkf2001-02-161-2/+21
| | | | | giving better performance for smallish strings, and *much* better performance for large (especially multi-megabyte) ones.
* 2000-01-30 Don Porter <dgp@users.sourceforge.net>dgp2001-01-301-11/+14
| | | | | | | | | | * generic/tclIO.c (CopyData): Moved code that updates the count of how many bytes are left to copy. Corrects bug that when writing occurs in the background, the copy loop could be escaped without updating the count, causing CopyData() to try to copy more bytes than the toRead value originally passed to TclCopyChannel(), leading to hangs and misreporting of number of bytes copied. [Bug 118203, Patch 103432]
* 2000-01-18 Andreas Kupries <a.kupries@westend.com>andreas_kupries2001-01-186-21/+25
| | | | | | | | | | | | | | | | | | | | | | | | | * Everything below belongs together, it fixes bug #123153. * generic/tcl.h (line 342): A bit more explanation about the default value for TCL_PRESERVE_BINARY_COMPATABILITY. * generic/tcl.h (line 1208): Removed the macro 'Tcl_InitHashTable' as it kills binary compatibility to 8.3 and earlier versions. This is the main part of the patch/change. * generic/tcl.decls (line 1469): * generic/tclHash.c (Tcl_InitHashTable): * generic/tclHash.c (Tcl_InitHashTableEx): * generic/tclObj.c (Tcl_InitObjHashTable): Changed 'Tcl_InitHashTableEx' to 'Tcl_InitCustomHashTable'. This change is more of an estethical nature, replacing the ubiquitous 'Ex' suffix with a more meaningful name. The introduced binary incompatibility is deemed acceptable as it is between alpha versions. Updated callers. * doc/Hash.3: * unix/mkLinks: Changed 'Tcl_InitHashTableEx' to 'Tcl_InitCustomHashTable'.
* 2000-12-14 Don Porter <dgp@users.sourceforge.net>dgp2000-12-141-21/+33
| | | | | | | | | | * generic/tclExecute.c: * tests/expr-old.test: Re-wrote Tcl's [expr rand()] and [expr srand($seed)] implementations, fixing a range error on some 64-bit platforms. Added tests that detect the bug. The rewrite changes the seed -> sequence map on 64-bit platforms, only for seed >= 2^31, a slight incompatibility. [Bug 121072, Patch 102781]
* * docs/scan.n:hobbs2000-12-101-3/+3
| | | | | | | * tests/scan.test: * generic/tclScan.c (Tcl_ScanObjCmd): changed %o and %x to use strtoul instead of strtol to correctly preserve scan<>format conversion of large integers. [Patch #102663, Bug #124600]
* * docs/scan.n:hobbs2000-12-101-10/+12
| | | | | | | * tests/scan.test: * generic/tclScan.c (Tcl_ScanObjCmd): changed %o and %x to use strtoul instead of strtol to correctly preserve scan<>format conversion of large integers. [Patch #102663, Bug #124600]
* Fixing bug #119417 using patch #102496.andreas_kupries2000-12-081-10/+26
|
* * generic/tcl.h (attemptckalloc): Fixed typo for #define ofericm2000-12-082-3/+124
| | | | | | | | | attemptckalloc (was defined to Tcl_AttempDbCkalloc, should have been Tcl_AttemptDbCkalloc). [Bug: 124384] * generic/tclCkalloc.c: Added TCL_MEM_DEBUG versions of Tcl_AttemptDbCkrealloc and Tcl_AttemptDbCkalloc. [Bug: 124384].
* * generic/tcl.h: added note about need to updatedhobbs2000-12-071-2/+3
| | | | library/dde/pkgIndex.tcl with minor version increment.
* Logical negation "!" can now handle string booleans, provided thosedkf2000-11-241-1/+7
| | | | | values are placed in variables. Resolves bug #119153 as most people will experience it.
* Now correctly test for (and fix) Bug #119082.dkf2000-11-243-10/+78
|
* Fixed memory leak from Bug #119398dkf2000-11-231-5/+2
|
* Finally fixed bug 119192. This was a real nasty that was hidden bydkf2000-11-171-24/+15
| | | | | | | the fact that it never caused a crash and was blocked most of the time from coming into play by the way the compiler handles array variable references. (Yes, the test suite does pass now on this machine at least...)