summaryrefslogtreecommitdiffstats
path: root/generic/tclBasic.c
Commit message (Collapse)AuthorAgeFilesLines
* * 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
|
* added comment confessing my puzzlementMiguel Sofer2009-12-081-1/+8
|
* minor cleanupMiguel Sofer2009-12-081-10/+7
|
* baby steps towards nre-enabling coroutine first runMiguel Sofer2009-12-081-28/+8
|
* * generic/tclBasic.c: Partial nre-enabling of coroutines.Miguel Sofer2009-12-081-38/+49
| | | | | | * generic/tclExecute.c: The initial call still requires its * generic/tclInt.h: own instance of tebc, but on resume coros can execute in the caller's tebc.
* Small corrections (enforcing ANSI style declarations, etc.)dkf2009-12-081-133/+145
|