summaryrefslogtreecommitdiffstats
path: root/generic/tclDictObj.c
Commit message (Collapse)AuthorAgeFilesLines
* Remove many type casts which are no longernecessary as a result of [Patch ↵nijtmans2010-08-221-11/+10
| | | | 3009403]: Signature of Tcl_GetHashKey, Tcl_(Create|Find)HashEntry
* * generic/tclExecute.c (TclExecuteByteCode): Ensure that [dict get]dkf2010-07-151-2/+4
| | | | | * generic/tclDictObj.c (DictGetCmd): always generates an errorCode on a failure to look up an entry.
* Code Audit results:dkf2010-03-051-2/+2
| | | | | | | | * 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
* Fix some nasties with handling duplicate keys in list->dict->list conversions.dkf2010-02-241-1/+9
|
* Eliminate various gcc warnings (in -Wextra mode)nijtmans2009-11-181-21/+21
|
* [Bug 2874678]: Don't leak bignums in [dict incr]...dkf2009-10-081-1/+7
|
* * 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-031-11/+10
| | | | | - some internal const decorations - spacing
* Apply resolution for [Bug 2529157]. Fix another location in tclBasic.c wheredkf2009-01-281-15/+3
| | | | only the objProc case was handled and not the nreProc case.
* Style fixes (unfouling whitespace, sorting comments, removing useless casts, ↵dkf2009-01-091-6/+6
| | | | etc.)
* Generate errorcodes for more cases.dkf2009-01-081-3/+11
|
* Corrected twiddling in internals of dictionaries so that literals can't getdkf2009-01-061-2/+3
| | | | destroyed.
* Implement TIP#341.dkf2008-12-101-24/+48
|
* TIP #336 IMPLEMENTATIONdgp2008-12-021-3/+4
| | | | | | | | | | | | | | | | | | * generic/tcl.decls: New routines Tcl_(Get|Set)ErrorLine. * generic/tcl.h: Dropped default access to interp->errorLine. * generic/tclCmdAH.c: Restore it with -DUSE_INTERP_ERRORLINE. * generic/tclCmdMZ.c: Updated callers. * generic/tclDictObj.c: * generic/tclIOUtil.c: * generic/tclNamesp.c: * generic/tclOOBasic.c: * generic/tclOODefinedCmds.c: * generic/tclOOMethod.c: * generic/tclProc.c: * generic/tclResult.c: * generic/tclDecls.h: make genstubs * generic/tclStubInit.c:
* Fix signature and implementation of Tcl_HashStats,nijtmans2008-11-171-6/+5
| | | | such that it conforms to the documentation.
* 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.
* NRE-enable the ensemble creator (add extra field!)dkf2008-08-231-72/+163
| | | | Arrange for [dict for] to be NRE-enabled when not compiled. [Bug 2017632]
* Dumped tclNRE.h's contents into tclInt.h. The file is now empty andMiguel Sofer2008-07-311-2/+1
| | | | | | unrefernced everywhere but in macosx/Tcl.xcodeproj/project.pbxproj: some knowledgeable maintainer please remove tclNRE.h after making sure it doesn't break the build on macosx
* Fix [Bug 2008248] and make dict->list->dict round trip efficient to boot.dkf2008-07-201-10/+1
|
* fix [2021443] inconsistant "wrong # args" messagesnijtmans2008-07-191-3/+3
|
* new TclNRAddCallback macro for internal use instead of the publicMiguel Sofer2008-07-181-3/+4
| | | | Tcl_NRAddCallback
* * generic/tcl.decls: Change the public api prefix fromMiguel Sofer2008-07-181-3/+3
| | | | | | | | | | | | | | | | | * generic/tcl.h: TclNR_foo to Tcl_NRfoo * generic/tclBasic.c: * generic/tclDecls.h: * generic/tclDictObj.c: * generic/tclExecute.c: * generic/tclInterp.c: * generic/tclNRE.h: * generic/tclNamesp.c: * generic/tclOO.c: * generic/tclOOBasic.c: * generic/tclOOCall.c: * generic/tclOOMethod.c: * generic/tclProc.c: * generic/tclStubInit.c:
* * generic/tclDictObj.c (DictWithCmd, DictUpdateCmd): fixMiguel Sofer2008-07-181-11/+5
| | | | | | | refcounting bugs that caused crashes [Bug 2017857]. * generic/tclBasic.c (TclNREvalObjEx): streamline the management of the command frame (opt).
* stop crash in test suite!dkf2008-07-171-1/+11
|
* NRE-ify the non-compiled version of [dict update].dkf2008-07-171-9/+40
|
* Add NRE support to [dict with].dkf2008-07-171-11/+50
|
* * generic/tclDictObj.c: Added missing initializers to the ensembleKevin B Kenny2008-06-011-2/+2
| | | | | | map to silence a compiler warning. Thanks to George Peter Staplin for the report.
* Small clarifications that code a bit nicer to read.dkf2008-05-301-3/+3
|
* merge stable branch onto HEADdgp2007-12-131-1/+1
|
* Rebuild [dict] as a full compiled ensemble.dkf2007-11-221-191/+187
|
* Rewrote the [string] and [dict] implementations to be ready for conversiondkf2007-11-221-63/+73
| | | | to ensembles.
* * generic/tclDictObj.c: Changed the underlying implementation of thedkf2007-11-201-162/+315
| | | | | | | | | hash table used in dictionaries to additionally keep all entries in the hash table in a linked list, which is only ever added to at the end. This makes iteration over all entries in the dictionary in key insertion order a trivial operation, and so cleans up a great deal of complexity relating to dictionary representation and stability of iteration order.
* improvements to commentsdkf2007-11-191-5/+13
|
* [Patch 1830038]: Increased usage of macros to detect and take advantage of ↵Miguel Sofer2007-11-111-11/+11
| | | | objTypes.
* Fix [Bug 1786481]dkf2007-09-081-1/+16
|
* Fix [Bug 1705778, leak K05]dkf2007-04-241-1/+7
|
* Fix [Bug 1705778, leak K04]dkf2007-04-241-17/+33
|
* Handle creation of Tcl_Objs from constant strings better (easier to use, moredkf2007-04-101-9/+9
| | | | efficient). After [Patch 1529526] (afredd)
* * generic/tclBasic.c: TIP #280 implementation.andreas_kupries2006-11-281-7/+13
| | | | | | | | | | | | | | | | | | | | | * 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:
* TIP#270 IMPLEMENTATIONdgp2006-11-151-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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:
* Minor simplification of memcpy usagedkf2006-11-081-2/+2
|
* * generic/tclBasic.c: Further revised TclAppendPrintToObj() anddgp2006-11-021-3/+3
| | | | | | | | | | | | | | | | | | | | | * generic/tclCkalloc.c: TclObjPrintf() routines to panic when unable * generic/tclCmdAH.c: to complete their formatting operations, rather * generic/tclCmdIL.c: than report an error message. This means an * generic/tclCmdMZ.c: interp argument for error message recording is * generic/tclDictObj.c: no longer needed, further simplifying the * generic/tclExecute.c: interface for callers. * generic/tclIORChan.c: * generic/tclIOUtil.c: * generic/tclInt.h: * generic/tclMain.c: * generic/tclNamesp.c: * generic/tclParseExpr.c: * generic/tclPkg.c: * generic/tclProc.c: * generic/tclStringObj.c: * generic/tclTimer.c: * generic/tclUtil.c: * unix/tclUnixFCmd.c:
* * generic/tclBasic.c: Refactored and renamed the routinesdgp2006-10-311-5/+5
| | | | | | | | | | | | | | | | | | | | | * generic/tclCkalloc.c: TclObjPrintf, TclFormatObj, and * generic/tclCmdAH.c: TclFormatToErrorInfo to a new set of * generic/tclCmdIL.c: routines TclAppendPrintfToObj, * generic/tclCmdMZ.c: TclAppendFormatToObj, TclObjPrintf, and * generic/tclDictObj.c: TclObjFormat, with the intent of making * generic/tclExecute.c: the latter list, plus TclAppendLimitedToObj * generic/tclIORChan.c: and TclAppendObjToErrorInfo, public via * generic/tclIOUtil.c: a revised TIP 270. * generic/tclInt.h: * generic/tclMain.c: * generic/tclNamesp.c: * generic/tclParseExpr.c: * generic/tclPkg.c: * generic/tclProc.c: * generic/tclStringObj.c: * generic/tclTimer.c: * generic/tclUtil.c: * unix/tclUnixFCmd.c:
* Various minor object file size efficiency fixes. [Bug 1530474]dkf2006-08-101-8/+8
|
* Fix silly error in error handling for uncompiled [dict for]. [Bug 1531184]dkf2006-08-091-11/+11
|
* * generic/tclBinary.c:Miguel Sofer2005-11-041-22/+6
| | | | | | | | | | | | | | | | * generic/tclCmdAH.c: * generic/tclCmdIL.c: * generic/tclCmdMZ.c: * generic/tclDictObj.c: * generic/tclExecute.c: * generic/tclIOCmd.c: * generic/tclLink.c: * generic/tclTest.c: * generic/tclVar.c: fix for [Bug 1334947]. The functions TclPtrSetVar, Tcl_ObjSetVar2 and Tcl_SetVar2Ex now always consume the newValuePtr argument - i.e., they will free a 0-refCount object if they failed to set the variable. Fixed all callers in the core.
* ANSIfy. Also converted some deeply nested code to a less nested form for ↵dkf2005-11-011-497/+552
| | | | easier reading.
* * generic/tclClock.c: Removed some dead code.dgp2005-10-191-168/+1
| | | | | | | | | | | | * generic/tclCmdIL.c: * generic/tclCompCmds.c: * generic/tclDictObj.c: * generic/tclExecute.c: * generic/tclLiteral.c: * generic/tclParseExpr.c: * generic/tclScan.c: * generic/tclUtil.c: * generic/tclVar.c:
* TIP#237 IMPLEMENTATIONdgp2005-10-081-2/+70
| | | | | | [kennykb-numerics-branch] Resynchronized with the HEAD; at this checkpoint [-rkennykb-numerics-branch-20051008], the HEAD and kennykb-numerics-branch contain identical code.
* silence compiler warningdgp2005-09-161-2/+1
|