summaryrefslogtreecommitdiffstats
path: root/generic/tclBasic.c
Commit message (Collapse)AuthorAgeFilesLines
* * generic/tclBasic.c: Modified TclArgumentGet to reject pure listsandreas_kupries2008-07-231-23/+24
| | | | | | | | | | * 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/tclBasic.c (GetCommandSource): added comment withMiguel Sofer2008-07-231-1/+9
| | | | explanation and warning for waintainers.
* Added missing function comments.andreas_kupries2008-07-221-1/+41
|
* fix warning; formattingdas2008-07-221-46/+52
|
* * generic/tclBasic.c: Ansified the new functions.andreas_kupries2008-07-221-9/+11
|
* * generic/tclBasic.c: Reworked the handling of bytecode literalsandreas_kupries2008-07-221-38/+102
| | | | | | | | | | * generic/tclCompile.c: for #280 to fix the abysmal performance * generic/tclCompile.h: for deep recursion, replaced the linear * generic/tclExecute.c: search through the whole stack with * generic/tclInt.h: another hashtable and simplified the data structure used by the compiler (array instead of hashtable). Incidentially this also fixes the memory leak reported via [Bug 2024937].
* * generic/tclBasic.c: Added numLevels field to CommandFrame,Miguel Sofer2008-07-221-2/+4
| | | | | * generic/tclExecute.c: let GetCommandSource use it. This solves * generic/tclInt.h: [Bug 2017146]. Thx dgp for the analysis.
* fix warning, formatting, whitespacedas2008-07-211-68/+80
|
* * generic/tclBasic.c: Extended the existing TIP #280 system (infoandreas_kupries2008-07-211-44/+256
| | | | | | | | | | | | * generic/tclCmdAH.c: frame), added the ability to track the * generic/tclCompCmds.c: absolute location of literal procedure * generic/tclCompile.c: arguments, and making this information * generic/tclCompile.h: available to uplevel, eval, and * generic/tclInterp.c: siblings. This allows proper tracking of * generic/tclInt.h: absolute location through custom (Tcl-coded) * generic/tclNamesp.c: control structures based on uplevel, etc. * generic/tclProc.c: * tests/info.test:
* whitespacedas2008-07-211-22/+22
|
* use TclEvalObjv instead of Tcl_EvalObjv at selected spotsMiguel Sofer2008-07-211-3/+3
|
* * generic/tcl.decls: Changed the implementation ofMiguel Sofer2008-07-211-37/+61
| | | | | | | | | | * generic/tclBasic.c: [namespace import]; removed * generic/tclDecls.h: Tcl_NRObjProc, replaced with * generic/tclExecute.c: Tcl_NRCmdSwap (proposed public * generic/tclInt.h: NRE API). This should fix * generic/tclNRE.h: [Bug 582506]. * generic/tclNamesp.c: * generic/tclStubInit.c:
* fix uninited and unused var warningsMiguel Sofer2008-07-211-3/+2
|
* * generic/tclBasic.c: NRE: enabled calling NR commandsMiguel Sofer2008-07-211-99/+220
| | | | | | | | * generic/tclExecute.c: from the callbacks. Completely * generic/tclInt.h: redone tailcall implementation * generic/tclNRE.h: using the new feature. * generic/tclProc.c: * tests/NRE.test:
* new TclNRAddCallback macro for internal use instead of the publicMiguel Sofer2008-07-181-23/+9
| | | | Tcl_NRAddCallback
* * generic/tcl.decls: Change the public api prefix fromMiguel Sofer2008-07-181-26/+26
| | | | | | | | | | | | | | | | | * 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:
* Minor fixes (clearer panic messages, formatting of comments)dkf2008-07-181-55/+50
|
* * generic/tclDictObj.c (DictWithCmd, DictUpdateCmd): fixMiguel Sofer2008-07-181-16/+15
| | | | | | | refcounting bugs that caused crashes [Bug 2017857]. * generic/tclBasic.c (TclNREvalObjEx): streamline the management of the command frame (opt).
* Fix [Bug 2018603]dkf2008-07-151-33/+24
|
* Tidy up code for clarity.dkf2008-07-141-388/+382
|
* Store ClientDatas in NRE callback storage as an array; that's how they aredkf2008-07-141-7/+7
| | | | referred to in callback implementations anyway.
* * generic/tclBasic.c.: Embedded Tcl_Canceled() calls intoMiguel Sofer2008-07-141-9/+5
| | | | | * generic/tclExecute.c: TclInterpReady(). * generic/tclParse.c:
* * generic/tclBasic.c.: NRE left too many calls toMiguel Sofer2008-07-141-4/+1
| | | | | | * generic/tclExecute.c: TclResetCancellation lying around: it * generic/tclProc.c: only needs to be called prior to any iPtr->numLevels++. Thanks mistachkin.
* * generic/tclBasic.c: TclResetCancellation() calls were misplacedMiguel Sofer2008-07-131-6/+3
| | | | (merge mishap); stray //. Thanks patthoyts.
* whitespacedas2008-07-131-174/+174
|
* remove leftover DTRACE macro causing buid failuredas2008-07-131-5/+1
|
* NRE implementation [Patch 2017110]Miguel Sofer2008-07-131-576/+1304
|
* fix warningdas2008-06-131-2/+2
|
* TIP 285 ImplementationJoe Mistachkin2008-06-131-5/+445
|
* * generic/tclBasic.c: Compilation of uplevel scripts, allowMiguel Sofer2008-06-081-74/+74
| | | | | | | | | * generic/tclCompCmds.c: non-body compiled scripts to access the * generic/tclCompile.c: LVT (but not to extend it) and enable the * generic/tclCompile.h: canonical list opt to sidestep the * generic/tclExecute.c: compiler. This is [Patch 1973096] * generic/tclProc.c: * tests/uplevel.test:
* Make things build (cleanly) on Win32. Thanks to Joe Mistachkin. [Patch 1980861]dkf2008-05-311-1/+2
|
* Implementation of TIP #257. Incomplete due to missing Win build support.dkf2008-05-311-1/+5
|
* Converted the [binary] command into an ensemble.patthoyts2008-05-021-5/+5
|
* * generic/tclInt.h: make stubs tables 'static const' anddas2008-04-161-4/+5
| | | | | | | | * generic/tclStubInit.c: export only module-scope pointers to * generic/tclStubLib.c: the main stubs tables (for package * tools/genStubs.tcl: initialization). [Patch 1938497] * generic/tclBasic.c (Tcl_CreateInterp): * generic/tclTomMathInterface.c (TclTommath_Init):
* * README: Bump version number to 8.6a0dgp2008-04-011-6/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * generic/tcl.h: * library/init.tcl: * macosx/Tcl-Common.xcconfig: * macosx/Tcl.pbproj/default.pbxuser: * macosx/Tcl.pbproj/project.pbxproj: * tools/tcl.wse.in: * unix/configure.in: * unix/tcl.spec: * win/README: * win/configure.in: * win/makefile.bc: * win/tcl.m4: * unix/configure: autoconf-2.59 * win/configure: * generic/tclBasic.c: Revised stubs-generation tool and interp * tools/genStubs.tcl: creation so that "tclStubsPtr" is not present * unix/Makefile.in: in libtcl.so, but is present only in libtclstub.a. This tightens up the rules for users of the stubs interfaces. [Bug 1819422] * generic/tclDecls.h: make genstubs * generic/tclIntDecls.h: * generic/tclIntPlatDecls.h: * generic/tclPlatDecls.h: * generic/tclTomMathDecls.h:
* * generic/tclBasic.c (OldMathFuncProc): Same workaround protectiondgp2008-03-141-7/+6
| | | | from bad TclStackAlloc() alignment. Thanks George Peter Staplin.
* * generic/tclBasic.c (ExprAbsFunc): Revised so that the abs()dgp2008-03-101-3/+3
| | | | | | * tests/expr.test: function and the [::tcl::mathfunc::abs] command do not return the value of -0, or equivalent values with more alarming string reps like -1e-350. [Bug 1893815].
* * generic/tclBasic.c (Tcl_AppendObjToErrorInfo): Revised thedgp2008-02-291-1/+2
| | | | | | | | | | refcount management of Tcl_AppendObjToErrorInfo to become that of a conventional Consumer routine. This preserves the ease of use for the overwhelming common callers who pass in a 0-count value, but makes the proper call with a non-0-count value less surprising. * generic/tclEvent.c (TclDefaultBgErrorHandlerObjCmd): Revised the one caller within Tcl itself which passes a non-0-count value to Tcl_AppendObjToErrorInfo().
* * generic/tclBasic.c (TclEvalObjvInternal): Plug memory leak whendgp2008-02-281-1/+4
| | | | | | an enter trace deletes or changes the command, prompting a reparsing. Don't let the second pass lose commandPtr value allocated during the first pass.
* Reconcile coding style issues between branchesdgp2008-01-231-5/+4
|
* * generic/tclBasic.c: Replacing 'operator' by 'op' in the defMiguel Sofer2008-01-151-2/+2
| | | | | * generic/tclCompExpr.c: of struct TclOpCmdClientData to * generic/tclCompile.h: accomodate C++ compilers [Bug 1855644]
* merge stable branch onto HEADdgp2007-12-131-1/+1
|
* Match docs and reality. [Bug 1662436]dkf2007-12-081-2/+2
|
* Simplify code for setting up the [chan] ensemble now that we can leveragedkf2007-12-061-333/+313
| | | | TclMakeEnsemble to do most of the work.
* * generic/tclBasic.c: remove unneeded call in Tcl_CreateInterp,Miguel Sofer2007-11-281-8/+6
| | | | add comments
* * generic/tclBasic.c:Miguel Sofer2007-11-261-1/+8
| | | | | | | | | * generic/tclInt.h: * unix/tclUnixInit.c: * unix/tclUnixThrd.c: Fix stack checking via workaround for bug in glibc's pthread_attr_get_np, patch from [Bug 1815573]. Many thanks to Sergei Golovan (aka Teo) for detecting the bug and helping diagnose and develop the fix.
* Remove #ifdef out accidentally left indkf2007-11-231-4/+1
|
* Turn the [string] command into a real compiled ensemble.dkf2007-11-231-5/+12
|
* Rebuild [dict] as a full compiled ensemble.dkf2007-11-221-2/+2
|
* RE: [Patch 1830184] TclResetResultMiguel Sofer2007-11-121-3/+2
| | | | | | THIS PATCH WAS REVERTED: initial (mis)measurements overstated the perfomance wins, which turn out to be tiny. Not worth the complication.