summaryrefslogtreecommitdiffstats
path: root/generic/tclLiteral.c
Commit message (Collapse)AuthorAgeFilesLines
* Adjust ckalloc/ckfree macros to greatly reduce number of explicit casts indkf2011-03-121-14/+12
| | | rest of Tcl source code. No ABI change. API change *should* be harmless.
* MINOR: Formatting fixes, mainly to comments, so code better fits the style indkf2011-03-101-2/+1
| | | the Engineering Manual.
* 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.
| * | * generic/tclLiteral.c: Backport fix for [Bug 2888044].dgp2009-10-281-1/+2
| | |
* | | * generic/tclCompExpr.c: Slight change in the literal sharingMiguel Sofer2010-04-291-10/+14
| | | | | | | | | | | | | | | | | | * generic/tclCompile.c: mechanism to avoid shimmering of * generic/tclCompile.h: command names. * generic/tclLiteral.c:
* | | [ tcl-Feature Requests-2958832 ] Furthernijtmans2010-02-251-6/+10
| | | | | | | | | | | | | | | | | | speed-up of ouster-hash function. Eliminate various unnecessary (ClientData) type casts.
* | | Pure whitespace changes, changing to follow Engineering Manual style.dkf2010-02-241-2/+2
| | |
* | | Return to using the classic hash function. Now with *extensive* notes in thedkf2010-02-171-13/+29
| | | | | | | | | | | | comments about why this function is preferred.
* | | missing commadgp2010-02-171-2/+2
| | |
* | | Update literal table to use FNV hash function.dkf2010-02-161-63/+69
| | |
* | | * generic/tclLiteral.c: Fixed 2 bugs reported in [Bug 2888044].dgp2009-10-281-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * tests/info.test: First, as noted in the comments of the TclCleanupLiteralTable routine, since the teardown of the intrep of one Tcl_Obj can cause the teardown of others in the same table, the full table cleanup must be done with care, but the code did not contain the same care demanded in the comment. Second, recent additions to the info.test file had poor hygiene, leaving an array variable ::a lying around, which breaks later interp.test tests during a -singleproc 1 run of the test suite.
* | | * macosx/tclMacOSXFCmd.c: CONST -> constnijtmans2009-07-221-4/+4
| | | | | | | | | | | | | | | | | | * generic/tclGetDate.y: * generic/tclDate.c: * generic/tclLiteral.c: (char *) cast in ckfree call
* | | - eliminate some unnessary type castsnijtmans2009-02-101-8/+8
| | | | | | | | | | | | | | | - some internal const decorations - spacing
* | | Style fixes (unfouling whitespace, sorting comments, removing useless casts, ↵dkf2009-01-091-15/+16
|/ / | | | | | | etc.)
* | 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-5/+5
| | | | | | | | objTypes.
* | VarReform [Patch 1750051]Miguel Sofer2007-07-311-104/+166
| | | | | | | | *** POTENTIAL INCOMPATIBILITY *** (tclInt.h and tclCompile.h)
* | * generic/tclExecute.c: More ckalloc -> ckrealloc conversions.dgp2007-03-211-27/+28
| | | | | | | | * generic/tclLiteral.c:
* | various "const" additions, in line with TIP #27nijtmans2007-02-201-4/+4
| |
* | Various minor object file size efficiency fixes. [Bug 1530474]dkf2006-08-101-2/+2
| |
* | ANSIfy. Also converted some deeply nested code to a less nested form for ↵dkf2005-11-011-98/+92
| | | | | | | | easier reading.
* | * generic/tclClock.c: Removed some dead code.dgp2005-10-191-20/+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:
* | Getting more systematic about styledkf2005-07-191-251/+249
| |
* | Merged kennykb-numerics-branch back to the head; TIPs 132 and 232Kevin B Kenny2005-05-101-1/+1
| |
* | silence compiler warningsdgp2005-04-251-3/+3
| |
* | * generic/tclLiteral.c: Disabled the code that forces some literalsdgp2005-04-211-1/+3
| | | | | | | | | | | | into the "int" Tcl_ObjType during registration. We can re-enable it if this change causes trouble, but it seems more sensible to let Tcl's "on-demand" shimmering rule, and not try to pre-guess things.
* | Avoid sharing cmdName literals accross namespaces, and generalise usage ofMiguel Sofer2004-12-241-16/+33
| | | | | | | | the TclRegisterNewLiteral macro [Patch 1090905]
* | * generic/tclLiteral.c (TclCleanupLiteralTable): Correcteddgp2004-08-021-21/+42
| | | | | | | | | | | | * tests/compile.test (compile-12.4): flawed deletion of literal internal reps that could lead to accessing of freed memory. Thanks to Kevin Kenny for test case and fix [Bug 1001997].
* | 2004-07-21 Kevin Kenny <kennykb@acm.org>Kevin B Kenny2004-07-211-1/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | * generic/tclBasic.c (DeleteInterpProc): * generic/tclLiteral.c (TclCleanupLiteralTable): * generic/tclInt.h: added a TclCleanupLiteralTable function, called from DeleteInterpProc, that frees internal representations of shared literals early when an interpreter is being deleted. This change corrects a number of memory mismanagement issues in the cases where the internal representation of one literal contains a reference to another, and avoids conditions such as resolved variable names referring to procedure and namespace contexts that no longer exist. [Bug 994838]
* | * generic/tclLiteral.c (TclReleaseLiteral): Removed unusedKevin B Kenny2004-07-151-2/+1
| | | | | | | | variable 'codePtr' to silence a message from VC++.
* | * generic/tclCompile.c (TclCompileScript):Miguel Sofer2004-07-151-17/+1
| | | | | | | | | | | | | | | | | | * 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.
* | Modified the logic of literal table cleanup at interp deletion time,Miguel Sofer2004-07-081-15/+25
| | | | | | | | | | insuring that the fix of [Bug 983660] does not have a negative perf impact.
* | * generic/tclBasic.c (DeleteInterpProc): fix for [Bug 983660],Miguel Sofer2004-07-051-17/+17
| | | | | | | | | | | | | | | | | | found by pspjuth. Tear down the global namespace before freeing the interp handle, to allow the bytecodes to free their non-shared literals. * generic/tclLiteral.c (TclReleaseLiteral): moved special code for self-ref so that it is also used for non-shared literals. Possible bug found by inspection.
* | Patch 922727 committed. Implements three changes:dgp2004-04-061-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * generic/tclInt.h: Reworked the Tcl header files into a clean * unix/tclUnixPort.h: hierarchy where tcl.h < tclPort.h < tclInt.h * win/tclWinInt.h: and every C source file should #include * win/tclWinPort.h: at most one of those files to satisfy its declaration needs. tclWinInt.h and tclWinPort.h also better organized so that tclWinPort.h includes the Windows implementation of cross-platform declarations, while tclWinInt.h makes declarations that are available on Windows only. * generic/tclBinary.c (TCL_NO_MATH): Deleted the generic/tclMath.h * generic/tclMath.h (removed): header file. The internal Tcl * macosx/Makefile (PRIVATE_HEADERS): header, tclInt.h, has a * win/tcl.dsp: #include <math.h> directly, and file external to Tcl needing libm should do the same. * win/Makefile.in (WIN_OBJS): Deleted the win/tclWinMtherr.c file. * win/makefile.bc (TCLOBJS): It's a vestige from matherr() days * win/makefile.vc (TCLOBJS): gone by. * win/tcl.dsp: * win/tclWinMtherr.c (removed):
* | More hash function cleaning up.dkf2004-03-301-3/+3
| |
* | All uses of 'panic' (the macro) changeddavygrvy2003-12-241-15/+15
|/ | | | | | | to 'Tcl_Panic' (the function). The #define of panic in tcl.h clearly states it is deprecated in the comments. [Patch 865264]
* generic/tclLiteral.c: (TclReleaseLiteral) insured thatMiguel Sofer2001-10-111-32/+24
| | | | | self-referential bytecodes are properly cleaned up on interpreter deletion [Bug 467523]
* generic/tclLiteral.c: (TclReleaseLiteral) reverted previous patch for [Bug ↵Miguel Sofer2001-10-091-11/+1
| | | | 467523] - cure is worse than the illness.
* insured that self-referential bytecodes are properly cleaned up onMiguel Sofer2001-10-061-1/+11
| | | | interpreter deletion [Bug 467523]
* 1999-08-18 Jeff Hobbs <hobbs@scriptics.com>hobbs1999-08-191-4/+1
| | | | | | | | | | | | | | * 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.
* 1999-08-05 Jeff Hobbs <hobbs@scriptics.com>hobbs1999-08-051-3/+6
| | | | | * generic/tclLiteral.c: fixed reference to bytes that might not be null terminated (using objPtr->bytes, which is) [Bug: 2496]
* ran dos2unix on this file--Irix couldn't build Tcl because it detected strangehershey1999-05-061-1062/+1062
| | | | chars at the end of each line.
* fixed memory leaksurles1999-05-051-1048/+1062
|
* * generic/tclLiteral.c (TclHideLiteral): Fixed so hidden literalsstanton1999-04-281-6/+10
| | | | | get duplicated to avoid accidental sharing in the global object table.
* * generic/tclInt.h:stanton1999-04-221-18/+133
| | | | | | | | | | | * 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.
* merged tcl 8.1 branch back into the main trunkstanton1999-04-161-0/+929