summaryrefslogtreecommitdiffstats
path: root/generic/tclListObj.c
Commit message (Collapse)AuthorAgeFilesLines
* Now that we're no longer using SCM based on RCS, the RCS Keyword linesdgp2011-03-021-2/+0
|\ | | | | cause more harm than good. Purged them (except in zlib files).
| * Now that we're no longer using SCM based on RCS, the RCS Keyword lines causedgp2011-03-021-2/+0
| |\ | | | | | | more harm than good. Purged them.
| | * Now that we're no longer using SCM based on RCS, the RCS Keyword lines causedgp2011-03-011-2/+0
| | | | | | | | | more harm than good. Purged them.
| | * Backport of fix for [Bug 1267380]dkf2005-08-251-1/+7
| | |
| | * * generic/tclListObj.c (Tcl_ListObjReplace): use memmove() insteaddas2004-11-111-12/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | of manual copy loop to shift list elements. Decreases time spent in Tcl_ListObjReplace() from 5.2% to 1.7% of overall runtime of tclbench on a ppc 7455 (i.e. 200% speed increase). [Patch 1064243] * generic/tclHash.c: hoisted some constant pointer dereferences out of loops to eliminate redundant loads that the gcc optimizer didn't deal with. Decreases time spend in Tcl_FindHashEntry() by 10% over a full run of the tcl testuite on a ppc 7455. [Patch 1064243]
| * | Backport of fix for [Bug 3004007], EIAS violation in list-dict conversions.ferrieux2010-05-191-3/+5
| | |
| * | * generic/tclListObj.c: Prevent in overflow trouble in [lreplace]dgp2010-03-181-2/+6
| | | | | | | | | | | | | | | * generic/tclTestObj.c: operations. Thanks to kbk for fix and test. * tests/listObj.test: [Bug 2971669].
| * | Fix efficiency bug detected by Kieran Elby.dkf2008-09-101-2/+11
| | |
| * | Fix [Bug 2008248] and make dict->list->dict round trip efficient to boot.dkf2008-07-201-1/+54
| | |
* | | * generic/tclListObj.c: Prevent in overflow trouble in [lreplace]dgp2010-03-181-2/+6
| | | | | | | | | | | | | | | * generic/tclTestObj.c: operations. Thanks to kbk for fix and test. * tests/listObj.test: [Bug 2971669].
* | | Fix some nasties with handling duplicate keys in list->dict->list conversions.dkf2010-02-241-3/+5
| | |
* | | * generic/tclDictObj.c: Updated freeIntRepProc routines sodgp2009-09-301-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * generic/tclExecute.c: that they set the typePtr field to * generic/tclIO.c: NULL so that the Tcl_Obj is not left * generic/tclIndexObj.c: in an inconsistent state. * generic/tclInt.h: [Bug 2857044] * generic/tclListObj.c: * generic/tclNamesp.c: * generic/tclOOCall.c: * generic/tclObj.c: * generic/tclPathObj.c: * generic/tclProc.c: * generic/tclRegexp.c: * generic/tclStringObj.c:
* | | - eliminate some unnessary type castsnijtmans2009-02-101-3/+5
| | | | | | | | | | | | | | | - some internal const decorations - spacing
* | | Generate errorcodes for more cases.dkf2009-01-081-1/+6
| | |
* | | Add "const" to many internalnijtmans2008-10-151-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | TIP #331 IMPLEMENTATIONKevin B Kenny2008-10-051-6/+19
| | | | | | | | | | | | | | | | | | | | | * generic/tclListObj.c (TclLsetFlat): * tests/lset.test: Modified the [lset] command so that it allows for an index of 'end+1', which has the effect of appending an element to the list.
* | | Fix efficiency bug detected by Kieran Elby.dkf2008-09-101-2/+11
| | |
* | | Silence some warnings.dkf2008-08-231-5/+5
| | |
* | | Fix [Bug 2008248] and make dict->list->dict round trip efficient to boot.dkf2008-07-201-2/+55
| | |
* | | Get rid of pre-C89-isms (esp. CONST vs const).dkf2008-04-271-11/+11
|/ /
* | merge stable branch onto HEADdgp2007-12-131-1/+1
| |
* | [Patch 1830038]: Increased usage of macros to detect and take advantage of ↵Miguel Sofer2007-11-111-21/+28
| | | | | | | | objTypes.
* | * tests/lindex.test (lindex-17.[01]): Added code to detect theKevin B Kenny2007-09-031-2/+9
| | | | | | | | | | | | error when a script does [lindex {} end foo]; an overaggressive optimisation caused this call to return an empty object rather than an error.
* | * generic/tclListObj.c: reverting [Patch 738900] (committed onMiguel Sofer2007-04-241-106/+56
| | | | | | | | | | | | 2007-04-20). Causes some Tk test breakage of unknown importance, but the impact of the patch itself is likely to be so small that it does not warrant investigation at this time.
* | * generic/tclListObj.c (TclLsetFlat): Fixed a bug where the newKevin B Kenny2007-04-241-2/+8
| | | | | | | | | | list under construction was leaked in the error case.[Bug 1705778, leaks K13 and K14]
* | * generic/tclListObj.c (SetListFromAny): avoid discarding internalMiguel Sofer2007-04-201-56/+106
| | | | | | | | reps of objects converted to singleton lists [Patch 738900]
* | 2007-03-20 Kevin B. Kenny <kennykb@acm.org>Kevin B Kenny2007-03-201-126/+93
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * generic/tclDate.c: Rebuilt, despite Donal Fellows's comment when committing it that no rebuild was required. * generic/tclGetDate.y: According to Donal Fellows, "Introduce modern formatting standards; no need for rebuild of tclDate.c." * library/tzdata/America/Cambridge_Bay: * library/tzdata/America/Havana: * library/tzdata/America/Inuvik: * library/tzdata/America/Iqaluit: * library/tzdata/America/Pangnirtung: * library/tzdata/America/Rankin_Inlet: * library/tzdata/America/Resolute: * library/tzdata/America/Yellowknife: * library/tzdata/Asia/Choibalsan: * library/tzdata/Asia/Dili: * library/tzdata/Asia/Hovd: * library/tzdata/Asia/Jakarta: * library/tzdata/Asia/Jayapura: * library/tzdata/Asia/Makassar: * library/tzdata/Asia/Pontianak: * library/tzdata/Asia/Ulaanbaatar: * library/tzdata/Europe/Istanbul: Upgraded to Olson's tzdata2007d. * generic/tclListObj.c (TclLsetList, TclLsetFlat): * tests/lset.test: Changes to deal with shared internal representation for lists passed to the [lset] command. Thanks to Don Porter for fixing this issue. [Bug 1677512]
* | added missing panicdgp2007-03-171-1/+4
| |
* | Tightening up declaration scopes, improving some comments with xrefs to bugDBdkf2007-03-121-44/+49
| |
* | Move 'return' in TclListObjSetElement into correct place!dkf2007-03-101-31/+27
| |
* | * generic/tclListObj.c (TclLsetList): Rewrite so that the routinedgp2007-03-081-70/+26
| | | | | | | | | | itself does not do any direct intrep surgery. Better isolates those things into the implementation of the "list" Tcl_ObjType.
* | Moved [lindex] guts to tclListObj.c, same as [lset] guts.dkf2007-03-081-1/+166
| |
* | Minor comment cleaning updkf2007-03-071-42/+41
| |
* | Added comments warning against certain optimizationsdgp2007-03-021-1/+9
| |
* | * generic/tclBasic.c: Use new interface in Tcl_EvalObjEx so thatdgp2007-02-241-1/+41
| | | | | | | | | | | | | | | | | | | | | | | | the recounting logic of the List internal rep need not be repeated there. Better encapsulation of internal details. * generic/tclInt.h: New internal routine TclListObjCopy() used * generic/tclListObj.c: to efficiently do the equivalent of [lrange $list 0 end]. After some experience with this, might be a good candidate for exposure as a public interface. It's useful for callers of Tcl_ListObjGetElements() who want to control the ongoing validity of the returned objv pointer.
* | Minor simplification of memcpy usagedkf2006-11-081-7/+5
| |
* | Various minor object file size efficiency fixes. [Bug 1530474]dkf2006-08-101-8/+8
| |
* | * generic/regc_locale.c (cclass):das2006-07-201-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | * generic/tclExecute.c (TclExecuteByteCode): * generic/tclIOCmd.c (Tcl_ExecObjCmd): * generic/tclListObj.c (NewListIntRep): * generic/tclObj.c (Tcl_GetLongFromObj, Tcl_GetWideIntFromObj, FreeBignum, Tcl_SetBignumObj): * generic/tclParseExpr.c (Tcl_ParseExpr): * generic/tclStrToD.c (TclParseNumber): * generic/tclStringObj.c (TclAppendFormattedObjs): * unix/tclUnixPipe.c (TclpCreateProcess): fix signed-with-unsigned comparison and other warnings from gcc4 -Wextra.
* | Export stubs for libtommath; fix mingw compiler warningsKevin B Kenny2005-12-131-2/+2
| |
* | * generic/tclListObj.c: Restored the SetListFromAny routine todgp2005-11-181-2/+2
| | | | | | | | | | | | | | * generic/tclObj.c: the "list" Tcl_ObjType, and restored the Tcl_RegisterObjType() call for "list". This addresses the needs of some "bridge" extensions to examine whether the Tcl_ObjType of a Tcl_Obj is that of the "list" Tcl_ObjType.
* | More bits of ANSIfyingdkf2005-11-111-115/+123
| |
* | * generic/tclListObj.c (TclLsetFlat):Miguel Sofer2005-10-201-5/+22
| | | | | | | | | | * tests/lset.test (lset-10.3): fixed handling of unshared lists with shared sublists, [Bug 1333036] reported by neuronstorm.
* | Add flag to lists so that evaluating contexts can handle them efficiently muchdkf2005-09-061-45/+63
| | | | | | | | | | of the time even when they are not pure. The flag works by keeping track of when the string rep was derived from the internal rep.
* | * unix/tclUnixSock.c (InitializeHostName): Synchronized use ofandreas_kupries2005-09-021-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | static modifier in declaration and definition of function. * unix/tclUnixChan.c (FileTruncateProc): Synchronized use of static modifier in declaration and definition of function. * generic/tclResult.c (ReleaseKeys): Synchronized use of static modifier in declaration and definition of function. * generic/tclListObj.c (NewListIntRep): Synchronized use of static modifier in declaration and definition of function. * generic/tclEncoding.c (InitializeEncodingSearchPath): Synchronized use of static modifier in declaration and definition of function. * generic/tclEncoding.c (FillEncodingFileMap): Synchronized use of static modifier in declaration and definition of function. * generic/tclIORChan.c (RcNewHandle): Synchronized use of static modifier in declaration and definition of function.
* | Better to panic sanely than to crash with a bad memory access. [Bug 1267380]dkf2005-08-251-1/+7
| |
* | Getting more systematic about styledkf2005-07-191-317/+317
| |
* | Merged kennykb-numerics-branch back to the head; TIPs 132 and 232Kevin B Kenny2005-05-101-1/+1
| |
* | * generic/tclListObj.c (Tcl_ListObjIndex): added missing NULL returndas2005-04-091-2/+3
| | | | | | | | when getting index from an empty list.
* | Changed the internal representation of lists to (a) reduce the malloc/freeMiguel Sofer2005-04-021-475/+396
| | | | | | | | | | | | | | | | calls at list creation (from 2 to 1), (b) reduce the cost of handling empty lists (we now never create a list internal rep for them), (c) allow refcounting of the list internal rep. The latter permits insuring that the pointers returned by Tcl_ListObjGetElements remain valid even if the object shimmers away from its original list type. This is [Patch 1158008]
* | * generic/tclListObj.c (Tcl_ListObjReplace): use memmove() insteaddas2004-11-111-12/+4
| | | | | | | | | | | | | | | | | | | | | | of manual copy loop to shift list elements. Decreases time spent in Tcl_ListObjReplace() from 5.2% to 1.7% of overall runtime of tclbench on a ppc 7455 (i.e. 200% speed increase). [Patch 1064243] * generic/tclHash.c: hoisted some constant pointer dereferences out of loops to eliminate redundant loads that the gcc optimizer didn't deal with. Decreases time spend in Tcl_FindHashEntry() by 10% over a full run of the tcl testuite on a ppc 7455. [Patch 1064243]