summaryrefslogtreecommitdiffstats
path: root/generic/tclBasic.c
Commit message (Collapse)AuthorAgeFilesLines
* fix gcc 64-bit warnings: cast from pointer to integer of different sizenijtmans2010-12-011-2/+2
| | | | fix gcc(-4.5.2) warning: 'static' is not at beginning of declaration
* Patch by Miguel, providing a [::tcl::unsupported::inject coroname command ↵ferrieux2010-11-291-2/+51
| | | | args], which prepends ("injects") arbitrary code to a suspented coro's future resumption. Neat for debugging complex coros without heavy instrumentation.
* * doc/interp.n: [3081184] TIP #378.andreas_kupries2010-11-151-1/+10
| | | | | | | | | | * doc/tclvars.n: Performance fix for TIP #280. * generic/tclBasic.c: * generic/tclExecute.c: * generic/tclInt.h: * generic/tclInterp.c: * tests/info.test: * tests/interp.test:
* [Patch 2995655] Report inner contexts in [info errorstack]ferrieux2010-10-201-1/+7
|
* * generic/tclBasic.c, generic/tclClock.c, generic/tclEncoding.c,dkf2010-10-011-4/+4
| | | | | | | | * generic/tclEnv.c, generic/tclLoad.c, generic/tclNamesp.c, * generic/tclObj.c, generic/tclRegexp.c, generic/tclResolve.c, * generic/tclResult.c, generic/tclUtil.c, macosx/tclMacOSXFCmd.c: More purging of strcpy() from locations where we already know the length of the data being copied.
* * generic/tclBasic.c: [Patch 3072080] (minus the itclMiguel Sofer2010-09-271-191/+136
| | | | | | | | | | | | | | * generic/tclCmdIL.c: update): a saner NRE. * generic/tclCompExpr.c: * generic/tclCompile.c: This makes TclNRExecuteByteCode * generic/tclCompile.h: (ex TEBC) to be a normal NRE * generic/tclExecute.c: citizen: it loses its special status. * generic/tclInt.decls: The logic flow within the BC engine is * generic/tclInt.h: simplified considerably. * generic/tclIntDecls.h: * generic/tclObj.c: * generic/tclProc.c: * generic/tclTest.c:
* [Patch 2997642] many type casts needed when using Tcl_Pkg* API. Remaining part.nijtmans2010-08-311-3/+2
| | | | Typo in rules.vc
* * generic/tclBasic.c: New implementation for [tailcall]:Miguel Sofer2010-08-301-101/+40
| | | | | | | | | * generic/tclCmdAH.c: it now schedules the command and returns * generic/tclCmdMZ.c: TCL_RETURN. This fixes all issues with * generic/tclExecute.c: [catch] and [try] - [Bug 3046594], * generic/tclInt.h: [Bug 3047235] and [Bug 3048771]. Thanks * generic/tclNamesp.c: dgp for exploring the dark corners. * tests/tailcall.test: More thorough testing is required.
* Remove many type casts which are no longernecessary as a result of [Patch ↵nijtmans2010-08-221-5/+5
| | | | 3009403]: Signature of Tcl_GetHashKey, Tcl_(Create|Find)HashEntry
* * generic/tclBasic.c: New redesign of [tailcall]: findMiguel Sofer2010-08-181-46/+88
| | | | | | * generic/tclExecute.c: errors early on, so that errorInfo * generic/tclInt.h: contains the proper info [Bug 3047235] * generic/tclNamesp.c:
* * generic/tclBasic.c: Redesign of [tailcall] toMiguel Sofer2010-08-181-20/+27
| | | | | | | | | * generic/tclCmdAH.c: (a) fix #3047235 * generic/tclCompile.h: (b) enable fix for #3046594 * generic/tclExecute.c: (c) enable recursive tailcalls * generic/tclInt.h: * generic/tclNamesp.c: * tests/tailcall.test:
* * generic/tclBasic.c (TclNRYieldToObjCmd): fixed bad copypastaMiguel Sofer2010-08-111-2/+2
| | | | snafu. Thanks to Andy Goth for finding the bug.
* From [Bug 3030870] make itcl 3.x built with pre-8.6 work in 8.6: Relax the ↵nijtmans2010-07-241-3/+3
| | | | relation between Tcl_CallFrame and CallFrame.
* * generic/tclBasic.c: Added more errorCode setting.dkf2010-07-161-8/+28
|
* * generic/tclBasic.c: Fix for #3008307: make callerPtr chainsMiguel Sofer2010-06-051-10/+27
| | | | | | | | | * generic/tclExecute.c: be traversable accross coro boundaries. Add the special coroutine CallFrame (partially reverting commit of 2009-12-10), as it is needed for coroutines that do not push a CF - eg, those with [eval] as command. Thanks to Colin McCormack (coldstore) and Alexandre Ferrieux for the hard work on this.
* CONSTify various useful internal functionsnijtmans2010-05-031-3/+2
| | | | | (TclBignumToDouble, TclCeil, TclFloor), and related tommath functions.
* Fix the problems I introduced inadvertently:dkf2010-04-301-13/+23
| | | | | | * generic/tclBasic.c (NRInterpCoroutine): Corrected handling of * tests/coroutine.test (coroutine-6.4): arguments to deal with trickier cases.
* * generic/tclBasic.c (TclNRYieldObjCmd, TclNRYieldmObjCmd)dkf2010-04-301-16/+33
| | | | | | (NRInterpCoroutine): Replace magic values for formal argument counts for coroutine command implementations with #defines, for an increase in readability.
* If tclInt.h or tclPort.h is alreadynijtmans2010-04-271-4/+2
| | | | | | | included, don't include <limits.h> again. Follow-up to [Bug 2991415]: tclport.h #included before limits.h See comments in [Bug 2991415]
* * generic/tclBasic.c: add unsupported [yieldm] command.Miguel Sofer2010-04-251-23/+43
| | | | * generic/tclInt.h:
* * generic/tclBasic.test: modify api of TclSpliceTailcall()Miguel Sofer2010-04-241-7/+7
| | | | | | * generic/tclExecute.c: to fix yieldTo, which had not survived * generic/tclInt.h: the latest mods to tailcall. Thanks kbk for detecting the problem.
* TIP #348 IMPLEMENTATION - Substituted error stackferrieux2010-04-051-1/+14
|
* Compile the [throw] command.dkf2010-03-191-2/+2
|
* Code Audit results:dkf2010-03-051-70/+74
| | | | | | | | * 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
* More tidying up (whitespace, spelling, useless parentheses, useless casts)dkf2010-02-241-9/+9
|
* Follow-up to Fix [Bug 2954959] expr abs(0.0) is -0.0nijtmans2010-02-211-19/+34
| | | | | | Some more tests, showing that the LONG implementation was not quite correct too, and a fix for that. Some more internal "const" additions
* Fix [Bug 2954959] expr abs(0.0) is -0.0nijtmans2010-02-211-3/+7
| | | | and added test cases for it.
* reverted earlier rename from tcl*Stubs tonijtmans2010-02-151-4/+4
| | | | | | | | tcl*ConstStubs, it's not necessary at all. tclEnsemble.c: Fix signed-unsigned mismatch make tclWinProcs "const" Add first part of mslu support, See [Feature Request #2819611]
* Compilation of [try] now enabled!dkf2010-02-091-2/+2
|
* Added basic compilation of [error] (the most common case only).dkf2010-02-051-2/+2
|
* Follow-up to earlier commit today:nijtmans2010-02-051-4/+4
| | | | | | Eliminate the need for an extra Stubs Pointer for adressing a static stub table: Just change the exported table from static to MODULE_SCOPE.
* Turned the [array] command into a true ensemble. Test changes indicate somedkf2010-02-021-5/+5
| | | | alteration to error messages, otherwise no change.
* Make the [unset] command be bytecode compiled.dkf2010-01-301-2/+2
|
* * generic/tclBasic.c: Fix lerak of coroutines on namespaceMiguel Sofer2010-01-031-3/+2
| | | | | | | * generic/tclCompile.h: deletion, [Bug 2724403]. Added a test * generic/tclNamesp.c: for this leak, and also a test for * tests/coroutine.test: leaks on namespace deletion. * tests/namespace.test:
* Move declarations to the top of the file, add boilerplate comments to somedkf2009-12-241-190/+203
| | | | functions
* * generic/tclBasic.c: Fix for bad cmd resolution by coroutinesMiguel Sofer2009-12-191-1/+2
| | | | | * tests/coroutine.test: [Bug #2917627]. Thanks to schelte for finding it.
* fix commentMiguel Sofer2009-12-131-7/+5
|
* remove accidentally committed c++ style temp commentsMiguel Sofer2009-12-131-3/+1
|
* * generic/tclBasic.c: Release TclPopCallFrame() from itsMiguel Sofer2009-12-131-7/+13
| | | | | * generic/tclExecute.c: tailcall-management duties * generic/tclNamesp.c:
* * generic/tclBasic.c: Moving TclBCArgumentRelease callMiguel Sofer2009-12-131-11/+1
| | | | | * generic/tclExecute.c: from TclNRTailcallObjCmd to TEBC, so that the pairing of the Enter and Release calls is clearer.
* fix commentMiguel Sofer2009-12-111-4/+3
|
* simplify the coroutine BP-chain monkey-patching; tclBasic does not need toMiguel Sofer2009-12-111-3/+1
| | | | know about bottomPtr, tebc does not need to behave differently on exit for coros
* * generic/tclBasic.c: Full nre-enabling of coroutinesMiguel Sofer2009-12-101-11/+2
| | | | * generic/tclExecute.c: [Bug 2806407]
* * generic/tclBasic.c: small cleanupMiguel Sofer2009-12-101-24/+23
|
* reorganization and better comments in TclNRCoroutineObjCmd()Miguel Sofer2009-12-101-49/+46
|
* * generic/tclBasic.c: Reducing the # of moving parts forMiguel Sofer2009-12-101-24/+3
| | | | | * generic/tclExecute.c: coroutines by delegating more to tebc; eliminate the special coroutine CallFrame.
* * generic/tclBasic.c: Reducing the # of moving parts forMiguel Sofer2009-12-101-23/+1
| | | | * generic/tclExecute.c: coroutines
* remove accidentally committed C++ style commentsMiguel Sofer2009-12-091-3/+1
|
* * generic/tclBasic.c: Insure correct lifetime of varFrame'sMiguel Sofer2009-12-091-7/+15
| | | | | | (objc,objv)for coroutines. * generic/tclExecute.c: Code regrouping
* Add missing Tcl_SetErrorCode calls.dkf2009-12-091-24/+35
|