summaryrefslogtreecommitdiffstats
path: root/generic/tclCmdIL.c
Commit message (Collapse)AuthorAgeFilesLines
* Limits on list length were too strict. Revised panics to errors where possible.dgp2011-04-211-12/+5
|
* Use ListRepPtr(.) and other cleanup.dgp2011-04-181-23/+11
|
* 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/tclBasic.c: Modified TclArgumentGet to reject pure listsandreas_kupries2008-07-231-2/+2
| | | | | | | | | | | | | | | | | | | | * generic/tclCmdIL.c: immediately, without search. Reworked setup * generic/tclCompile.c: of eoFramePtr, doesn't need the line * tests/info.test: information, more sensible to have everything on line 1 when eval'ing a pure list. Updated the users of the line information to special case this based on the frame type (i.e. TCL_LOCATION_EVAL_LIST). Added a testcase demonstrating the new behaviour.
| * * generic/tclCmdIL.c (InfoFrameCmd): Fixed unsafe idiom of settingandreas_kupries2008-07-071-2/+2
| | | | | | | | the interp result found by Don Porter.
| * * generic/tclCmdIL.c (InfoFrameCmd): Backport of fix made on theandreas_kupries2008-06-161-26/+30
| | | | | | | | | | | | | | | | | | * tests/info.test: head branch :: Moved the code looking up the information for key 'proc' out of the TCL_LOCATION_BC branch to after the switch, this is common to all frame types. Updated the testsuite to match. This was exposed by the 2008-06-08 commit (Miguel), switching uplevel from direct eval to compilation. Fixes [Bug 1987851].
| * * generic/tclCmdIL.c (InfoFrameCmd): TIP #280 conditionalandreas_kupries2008-06-121-9/+18
| | | | | | | | | | | | feature. Added checks to validate HashEntry and HashTable information gotten from Command structures. This seems to be needed to handle structures managed by Itcl.
| * Prevent shimmering crash in [lsearch] when -exact and -integer/-real aredkf2007-12-051-1/+3
| | | | | | | | mixed. [Bug 1844789]
| * Fix [Bug 1675116] in a way suitable for 8.4.dkf2007-03-101-1/+13
| |
| * * generic/tclBasic.c: TIP #280 implementation, conditional on the define ↵andreas_kupries2006-11-281-6/+291
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | TCL_TIP280. * 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:
| * Fix [Bug 1374778]dkf2005-12-091-2/+13
| |
| * Fix [Bug 1366683]dkf2005-11-291-3/+18
| |
| * * generic/tclBasic.c:Miguel Sofer2005-10-231-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * generic/tclBinary.c: * generic/tclCmdAH.c: * generic/tclCmdIL.c: * generic/tclCmdMZ.c: * generic/tclExecute.c: * generic/tclLink.c: * generic/tclMain.c: * generic/tclProc.c: * generic/tclScan.c: * generic/tclTest.c: * generic/tclVar.c: * mac/tclMacInit.c: * unix/tclUnixInit.c: * win/tclWinInit.c: Insure that the core never calls TclPtrSetVar, Tcl_SetVar2Ex, Tcl_ObjSetVar2 or Tcl_SetObjErrorCode with a 0-ref new value. It is not possible to handle error returns correctly in that case [Bug 1334947], one has the choice of leaking the object in some cases, or else risk crashing in some others.
| * Take care with globals that have an entry in the var table but "don't exist"dkf2005-07-291-3/+6
| |
| * * 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-2/+10
| |
| * Speed up [info <thing> <simplePattern>]dkf2004-10-141-51/+163
| |
| * Fixed confusing error message. [Bug 771539]dkf2003-07-151-2/+2
| |
| * * 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:
* | * generic/tclCmdIL.c (Tcl_LsetObjCmd): [Bug 3019351]: Corrected wrongdkf2010-06-221-2/+2
| | | | | | | | args message.
* | Backport of memory leak plug.dkf2009-08-201-1/+4
| |
* | * generic/tclCmdIL.c: Removed unused variables.dgp2009-07-161-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | * generic/tclCompile.c: * generic/tclVar.c: * unix/tclUnixChan.c: * generic/tclScan.c: Typo in ACCEPT_NAN configuration. * generic/tclStrToD.c: Set floating point control register on MIPS systems so that the gradual underflow expected by Tcl is in effect. [Bug 2819200]
* | Missed a (minor) change.dkf2008-09-271-2/+2
| |
* | Fix [Bug 2130992].dkf2008-09-271-2/+18
| |
* | * generic/tclCmdIL.c (TclInfoFrame): check fPtr->line beforedas2008-08-141-2/+4
| | | | | | | | | | | | dereferencing as line info may not exists when TclInfoFrame() is called from a DTrace probe.
* | * generic/tclBasic.c: Modified TclArgumentGet to reject pure listsandreas_kupries2008-07-231-2/+2
| | | | | | | | | | | | | | | | | | | | * generic/tclCmdIL.c: immediately, without search. Reworked setup * generic/tclCompile.c: of eoFramePtr, doesn't need the line * tests/info.test: information, more sensible to have everything on line 1 when eval'ing a pure list. Updated the users of the line information to special case this based on the frame type (i.e. TCL_LOCATION_EVAL_LIST). Added a testcase demonstrating the new behaviour.
* | * generic/tclCmdIL.c (InfoFrameCmd): Fixed unsafe idiom of settingandreas_kupries2008-07-071-2/+2
| | | | | | | | the interp result found by Don Porter.
* | * generic/tclCmdIL.c (TclInfoFrame): Backport of fix made on theandreas_kupries2008-06-161-41/+46
| | | | | | | | | | | | | | | | | | * tests/info.test: head branch :: Moved the code looking up the information for key 'proc' out of the TCL_LOCATION_BC branch to after the switch, this is common to all frame types. Updated the testsuite to match. This was exposed by the 2008-06-08 commit (Miguel), switching uplevel from direct eval to compilation. Fixes [Bug 1987851].
* | * generic/tclCmdIL.c (Tcl_LsortObjCmd): Use ckalloc() to allocatedgp2008-03-141-4/+3
| | | | | | | | | | SortElement arrays instead of TclStackAlloc() which isn't getting alignment right. Workaround for [Bug 1914503].
* | * generic/tclCmdIl.c (Tcl_LreverseObjCmd):Miguel Sofer2008-01-221-1/+10
| | | | | | | | | | * tests/cmdIL.test (cmdIL-7.7): fix crash on reversing an empty list [Bug 1876793].
* | * generic/tclCmdIL.c: more [lsort] data handling streamlines. TheMiguel Sofer2007-12-261-137/+108
| | | | | | | | | | | | | | | | function MergeSort is gone, essentially inlined into Tcl_LsortObjCmd. It is not a straight inlining, two loops over all lists elements where merged in the process: the linked list elements are now built and merged into the temporary sublists in the same pass.
* | * generic/tclCmdIL.c: more [lsort] data handling streamlines.Miguel Sofer2007-12-251-51/+63
| | | | | | | | | | | | Extra mem reqs of latest patches removed, restored to previous mem profile. Improved -unique handling, now eliminating repeated elems immediately instead of marking them to avoid reinsertion at the end.
* | * generic/tclCmdIL.c: speed patch for lsort [Patch 1856994].Miguel Sofer2007-12-231-41/+109
| |
* | * generic/tclCmdIL.c (Tcl_LsortObjCmd, Tcl_LsearchObjCmd): avoidMiguel Sofer2007-12-221-23/+36
| | | | | | | | calling SelectObjFromSublist when there are no sublists.
* | * generic/tclCmdIL.c (Tcl_LsortObjCmd): preallocate a listObj ofMiguel Sofer2007-12-221-12/+24
| | | | | | | | | | | | sufficient length for the sorted list instead of growing it. Second commit replaces calls to Tcl_ListObjAppenElement with direct access to the internal rep.
* | * generic/tclCmdIL.c (Tcl_LsortObjCmd): preallocate a listObj ofMiguel Sofer2007-12-221-2/+2
| | | | | | | | sufficient length for the sorted list instead of growing it.
* | merge stable branch onto HEADdgp2007-12-131-1/+1
| |
* | Prevent shimmering crash in [lsearch] when -exact and -integer/-real are mixed.dkf2007-12-051-1/+15
| | | | | | | | [Bug 1844789]
* | Factor out the core compiled-ensemble builder for simplicity.dkf2007-11-211-42/+3
| |
* | Greatly improved ensemble compiler. This one now can handle any ensemble.dkf2007-11-161-34/+36
| | | | | | | | | | It is usually not enabled though; only worth it when a subcommand is actually expected to undergo bytecode compilation.
* | Compile [info exists] into bytecode. Includes new instructions to support it.dkf2007-11-141-7/+12
| |
* | [Patch 1830038]: Increased usage of macros to detect and take advantage of ↵Miguel Sofer2007-11-111-36/+36
| | | | | | | | objTypes.
* | * generic/tclCmdIL.c: factor our core of InfoFrameCmd() into internaldas2007-09-131-14/+41
| | | | | | | | TclInfoFrame() for use by DTrace probes.
* | VarReform [Patch 1750051]Miguel Sofer2007-07-311-449/+6
| | | | | | | | *** POTENTIAL INCOMPATIBILITY *** (tclInt.h and tclCompile.h)
* | fix typo ... donal broke the buildMiguel Sofer2007-07-011-2/+2
| |
* | Plug a memory leak caused by a missing Tcl_DecrRefCount on an error path. ↵dkf2007-06-301-9/+11
| | | | | | | | [Bug 1717186]
* | * generic/tclCmdIL.c: More conversions to use TclStackAlloc.dgp2007-06-221-3/+5
| | | | | | | | * generic/tclScan.c:
* | * generic/tclInt.decls: Revised the interfaces of the routinesdgp2007-06-201-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * generic/tclExecute.c: TclStackAlloc and TclStackFree to make them easier for callers to use (or more precisely, harder to misuse). TclStackFree now takes a (void *) argument which is the pointer intended to be freed. TclStackFree will panic if that's not actually the memory the call will free. TSA/TSF also now tolerate receiving (interp == NULL), in which case they simply fall back to be calls to Tcl_Alloc/Tcl_Free. * generic/tclIntDecls.h: make genstubs * generic/tclBasic.c: Updated callers * generic/tclCmdAH.c: * generic/tclCmdIL.c: * generic/tclCompCmds.c: * generic/tclCompExpr.c: * generic/tclCompile.c: * generic/tclFCmd.c: * generic/tclFileName.c: * generic/tclIOCmd.c: * generic/tclIndexObj.c: * generic/tclInterp.c: * generic/tclNamesp.c: * generic/tclProc.c: * generic/tclTrace.c: * unix/tclUnixPipe.c:
* | * generic/tclCmdIL.c (InfoFrameCmd):Miguel Sofer2007-06-181-10/+15
| | | | | | | | | | | | | | * generic/tclCmdMZ.c (Tcl_SwitchObjCmd): * generic/tclCompile.c (TclInitCompileEnv): * generic/tclProc.c (Tcl_ProcObjCmd, SetLambdaFromAny): Moved the CmdFrame off the C stack and onto the Tcl stack.