summaryrefslogtreecommitdiffstats
path: root/generic/tclCmdIL.c
Commit message (Collapse)AuthorAgeFilesLines
* Changed the internal representation of lists to (a) reduce the malloc/freeMiguel Sofer2005-04-021-33/+13
| | | | | | | | 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]
* changing the isProcCallFrame field of the CallFrame struct from a 0/1 fieldMiguel Sofer2004-12-141-3/+4
| | | | to flags. Should be perfectly backwards compatible.
* * generic/tclUtil.c: Updated Tcl_GetNameOfExecutable() todgp2004-12-011-9/+2
| | | | | | | | | | | | | | | | | | | | | | | | * generic/tclEncoding.c: make use of a ProcessGlobalValue for * generic/tclEvent.c: storing the executable name. Added internal routines Tcl(Get|Set)ObjNameOfExecutable() to access that storage in Tcl_Obj, rather than string format. * unix/tclUnixFile.c: Rewrote TclpFindExecutable() to use * win/tclWinFile.c: TclSetObjNameOfExecutable to store the executable name it computes. * generic/tclInt.h: Added internal stub entries for * generic/tclInt.decls: TclpFindExecutable and Tcl(Get|Set)ObjNameOfExecutable. * generic/tclIntDecls.h: make genstubs * generic/tclStubInit.c: * generic/tclCmdIL.c: Retrieve executable name in Tcl_Obj form * win/tclWinPipe.c: instead of string form. * unix/tclUnixTest.c: Update [testfindexecutable] command to use new internal interfaces.
* * generic/tclCmdIL.c (InfoVarsCmd): Corrected segfault in newdgp2004-11-241-6/+8
| | | | * tests/info.test (info-19.6): trivial matching branch [Bug 1072654]
* Make [info globals ::foo] work. [Bug 1057461]dkf2004-10-311-1/+9
|
* defined new macros to get/set the flags of variables.Miguel Sofer2004-10-251-5/+5
|
* TIP#217 implementationdkf2004-10-141-12/+32
|
* Speed up [info <thing> <simplePattern>]dkf2004-10-141-47/+158
|
* Convert to using the TclGetString macro; slightly faster...dkf2004-10-061-27/+27
|
* * generic/tclBasic.c:dgp2004-10-061-64/+52
| | | | | | | | | | | | * generic/tclBinary.c: * generic/tclCmdAH.c: * generic/tclCmdIL.c: It is a poor practice to directly set or append to the value of the objResult of an interp, because that value might be shared, and in that circumstance a Tcl_Panic() will be the result. Searched for example of this practice and replaced with safer alternatives, often using the Tcl_AppendResult() routine that dkf just rehabilitated.
* 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):
* Fix a shimmering bugdkf2004-01-171-1/+9
|
* Minor fixes and update of UNIX documentation installerdkf2004-01-171-1/+2
|
* Basic implementation of TIP#57 - TclX's [lassign] command into Tcl coredkf2004-01-171-1/+97
| | | | | | | Not a direct copy * Better use of Tcl object API * More extensive test suite * More extensive documentation
* All uses of 'panic' (the macro) changeddavygrvy2003-12-241-2/+2
| | | | | | | to 'Tcl_Panic' (the function). The #define of panic in tcl.h clearly states it is deprecated in the comments. [Patch 865264]
* remove warningvincentdarley2003-11-031-2/+2
|
* Increased robustness and speed for [lrepeat] with help of new list constructordkf2003-11-011-13/+40
|
* Fixed bug 823768 by pre-parsing the index listdkf2003-10-151-240/+225
|
* whitespace policedkf2003-10-141-131/+116
|
* TIP#127 Implementation. Thanks to Michael Schlenker for his implementation workdkf2003-10-141-155/+443
|
* TIP#136 IMPLEMENTATION. We now have an [lrepeat] command!dkf2003-08-111-1/+89
|
* Fixed error message to be less confusing [Bug 771539]dkf2003-07-151-2/+2
|
* suppress compiler warning about uninitialized variables.dgp2003-04-291-7/+4
|
* Made [incr] able to accept and work with wide increments [Bug 728838]dkf2003-04-281-186/+193
|
* * generic/tcl.h Made changes so that the "wideInt" Tcl_ObjTypedgp2003-04-161-5/+2
| | | | | | | | | | | | | | | | | | | | | | * generic/tclObj.c is defined on all platforms, even those where * generic/tclPort.h TCL_WIDE_INT_IS_LONG is defined. Also made the Tcl_Value struct have a wideValue field on all platforms. This is a ***POTENTIAL INCOMPATIBILITY*** for TCL_WIDE_INT_IS_LONG platforms because that struct changes size. This is the same TIP 72 incompatibility that was seen on other platforms at the 8.4.0 release, when this change should have happened as well. [Bug 713562] * generic/tclInt.h: New internal macros TclGetWide() and TclGetLongFromWide() to deal with both forms of the "wideInt" Tcl_ObjType, so that conditional TCL_WIDE_INT_IS_LONG code is confined to the header file. * generic/tclCmdAH.c: Replaced most coding that was conditional * generic/tclCmdIL.c: on TCL_WIDE_INT_IS_LONG with code that * generic/tclExecute.c: works across platforms, sometimes using * generic/tclTest.c: the new macros above to do it. * generic/tclUtil.c: * generic/tclVar.c:
* Stop [lsearch -start 0 {} x] from crashing. [Bug #694232]dkf2003-02-271-3/+4
|
* lint init regexphobbs2003-02-111-2/+2
|
* * tests/lsearch.test:hobbs2003-02-111-2/+19
| | | | | * generic/tclCmdIL.c (Tcl_LsearchObjCmd): protect against the case that lsearch -regepx list and pattern objects are equal.
* Fix for [info locals] bug #567386; added compile functions forMiguel Sofer2002-06-111-2/+3
| | | | [global], [upvar] and [variable].
* Fixed Bug #545644; [info body] always gives a proper string now!dkf2002-04-181-1/+8
|
* TIP#81 implementation, tests and docsdkf2002-03-061-142/+252
|
* TIP#72 implementation. See ChangeLog for details.dkf2002-02-151-1/+27
| | | | | This version builds clean on Solaris/SPARC, with GCC and CC, both with and without threads and both in 32-bit and 64-bit mode.
* * Sought out and eliminated instances of CONST-casting that are nodgp2002-01-261-2/+2
| | | | longer needed after the TIP 27 effort.
* * Updated interfaces of generic/tclEncoding, generic/tclFilename.c,dgp2002-01-251-4/+4
| | | | | | | | | | | generic/tclIOUtil.c, generic/tclPipe.c, generic/tclResult.c, generic/tclUtil.c, generic/tclVar.c and mac/tclMacResource.c according to TIP 27. Tcl_TranslateFileName rewritten as wrapper around VFS-aware version. Updated callers. ***POTENTIAL INCOMPATIBILITY*** Includes source incompatibilities: argv arguments of Tcl_Concat, Tcl_JoinPath, Tcl_OpenCommandChannel, Tcl_Merge; argvPtr arguments of Tcl_SplitList and Tcl_SplitPath.
* * Updated socket interfaces according to TIP 27. Updated callers.dgp2002-01-231-2/+2
|
* * More TIP 27 updates in tclIOUtil.c and tclIndexObj.c that weredgp2002-01-171-4/+4
| | | | | | | overlooked before. Updated callers. ***POTENTIAL INCOMPATIBILITY*** Includes a source incompatibility in the tablePtr arguments of the Tcl_GetIndexFromObj* routines.
* Reference implementation of TIP's #22, #33 and #45. Adds thehobbs2001-11-141-30/+384
| | | | | | ability of the [lindex] command to have multiple index arguments, and adds the [lset] command. Both commands are byte-code compiled. [Patch #471874] (work by Kenny, commited by Hobbs)
* removed unnecessary inclusions of tclCompile.h [Patch 466823]Miguel Sofer2001-10-011-16/+9
|
* Fixed Bug #465674 reported by me. [lsort -index end-1] now behaves sensibly...dkf2001-09-281-11/+18
|
* Changes from TIP#17 "Redo Tcl's filesystem"vincentdarley2001-07-311-8/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The following files were impacted. * doc/Access.3: * doc/FileSystem.3: * doc/OpenFileChnl.3: * doc/file.n: * doc/glob.n: * generic/tcl.decls: * generic/tcl.h: * generic/tclCmdAH.c: * generic/tclCmdIL.c: * generic/tclCmdMZ.c: * generic/tclDate.c: * generic/tclDecls.h: * generic/tclEncoding.c: * generic/tclFCmd.c: * generic/tclFileName.c: * generic/tclGetDate.y: * generic/tclIO.c: * generic/tclIOCmd.c: * generic/tclIOUtil.c: * generic/tclInt.decls: * generic/tclInt.h: * generic/tclIntDecls.h: * generic/tclLoad.c: * generic/tclStubInit.c: * generic/tclTest.c: * generic/tclUtil.c: * library/init.tcl: * mac/tclMacFCmd.c: * mac/tclMacFile.c: * mac/tclMacInit.c: * mac/tclMacPort.h: * mac/tclMacResource.c: * mac/tclMacTime.c: * tests/cmdAH.test: * tests/event.test: * tests/fCmd.test: * tests/fileName.test: * tests/io.test: * tests/ioCmd.test: * tests/proc-old.test: * tests/registry.test: * tests/unixFCmd.test: * tests/winDde.test: * tests/winFCmd.test: * unix/mkLinks: * unix/tclUnixFCmd.c: * unix/tclUnixFile.c: * unix/tclUnixInit.c: * unix/tclUnixPipe.c: * win/tclWinFCmd.c: * win/tclWinFile.c: * win/tclWinInit.c: * win/tclWinPipe.c
* * generic/tclCmdIL.c (InfoProcsCmd): fixed potential mem leak inhobbs2001-06-281-9/+9
| | | | info procs that created objects without using them.
* Changes from TIP#15 "Functions to List and Detail Math Functions"dkf2001-05-301-3/+57
|
* Added several missing CONSTs in calls to TclGetNamespaceForQualNameKevin B Kenny2001-04-271-6/+9
|
* Fixed memory leak from Bug #119398dkf2000-11-231-5/+2
|
* * tests/cmdIL.test: Added a test for fix for [Bug: 6212].ericm2000-09-171-2/+1
| | | | | * generic/tclCmdIL.c (Tcl_LsortObjCmd): Applied patch from [Bug: 6212], which corrected an error in the handling of the -index option.
* * tests/info.test:hobbs2000-05-271-5/+18
| | | | | | | | * doc/info.n: * generic/tclIOUtil.c (Tcl_EvalFile): * generic/tclCmdIL.c (InfoScriptCmd): added ability to set the info script return value [info script ?newFileName?]. This will be beneficial for virtual file system programs. [Bug: 4225]
* * tests/lsearch.test:ericm2000-05-091-31/+218
| | | | | | * doc/lsearch.n: * generic/tclCmdIL.c (Tcl_LsearchObjCmd): Extended [lsearch] to support sorted list searching and typed list searching. [RFE: 4098].
* * generic/tclCmdIL.c (Tcl_LinsertObjCmd): made use ofhobbs2000-05-081-75/+56
| | | | | | | | Tcl_DuplicateObj where code was otherwise duplicated. Made special case of inserting one element at the end work again (where index == len). (Tcl_LreplaceObjCmd): moved Tcl_DuplicateObj call lower and cleaned up use of other arguments.
* * generic/tclCmdIL.c (InfoVarsCmd): checked for non-NULL procPtrhobbs2000-04-041-2/+2
| | | | to prevent itcl info override crash [Bug: 4064]
* * generic/tclClock.c (FormatClock): inlined resultPtr, as ithobbs2000-01-261-4/+8
| | | | | | | | | | conflicted with var creation for HAVE_TZSET #def [Bug: 4063] * generic/tclCmdIL.c (Tcl_LsortObjCmd): fixed potential leak when calling lsort -command with bad command [Bug: 4067] * generic/tclFileName.c (Tcl_JoinPath): added support for special QNX node id prefixes in pathnames [Bug: 4053]