summaryrefslogtreecommitdiffstats
path: root/generic/tclBasic.c
Commit message (Collapse)AuthorAgeFilesLines
* [Patch 2997642] many type casts needed when using Tcl_Pkg* API. Remaining part.nijtmans2010-08-311-3/+2
| | | | | | Typo in rules.vc FossilOrigin-Name: ea7f85f0787c4b9b90454119cf4147a01074a7d1
* * generic/tclBasic.c: New implementation for [tailcall]:msofer2010-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. FossilOrigin-Name: c263c556adf1dd0e756a39cc73c0cbd7a80715e0
* 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 FossilOrigin-Name: 0ca694ea6522833fe5c429c99b8a6b4c0e554589
* * generic/tclBasic.c: New redesign of [tailcall]: findmsofer2010-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: FossilOrigin-Name: c73d12f03c2dbb54b55d46741d87aaf1444a59ef
* * generic/tclBasic.c: Redesign of [tailcall] tomsofer2010-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: FossilOrigin-Name: beb3af88b5e286758fed136d9747338d89d5009d
* * generic/tclBasic.c (TclNRYieldToObjCmd): fixed bad copypastamsofer2010-08-111-2/+2
| | | | | | snafu. Thanks to Andy Goth for finding the bug. FossilOrigin-Name: 0b27a4ca4e516fb51282fbbc7637f3820314dfbf
* 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. FossilOrigin-Name: 4f9c4da675e4a100fc97e11dd82f737fe69cb424
* * generic/tclBasic.c: Added more errorCode setting.dkf2010-07-161-8/+28
| | | FossilOrigin-Name: 9c9702d4cb693a167116663002e26fa38385aeb6
* * generic/tclBasic.c: Fix for #3008307: make callerPtr chainsmsofer2010-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. FossilOrigin-Name: 1d3c73fdbbbc4ded62f5b505c4f19f2659e67cb3
* CONSTify various useful internal functionsnijtmans2010-05-031-3/+2
| | | | | | | (TclBignumToDouble, TclCeil, TclFloor), and related tommath functions. FossilOrigin-Name: 729ffb738f1c793649d95c386f783e837dcd3711
* 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. FossilOrigin-Name: a822ad9b51af948ab27d55cec82b95864f3f53ba
* * 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. FossilOrigin-Name: 7222a46970ea97bb14b40f368f839e5342e655ef
* 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] FossilOrigin-Name: b7c55dd4bff714c0d799cc3972956b79eee2a6ff
* * generic/tclBasic.c: add unsupported [yieldm] command.msofer2010-04-251-23/+43
| | | | | | * generic/tclInt.h: FossilOrigin-Name: 0d7e0c672251211ee4daedcc14f896b15bd932ba
* * generic/tclBasic.test: modify api of TclSpliceTailcall()msofer2010-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. FossilOrigin-Name: e70f57dc66e6adbbdcd0fe1840c6b27693b220c2
* TIP #348 IMPLEMENTATION - Substituted error stackferrieux2010-04-051-1/+14
| | | FossilOrigin-Name: 43fe3048397d3a082c8a3c34f0cd6875f4350dd3
* Compile the [throw] command.dkf2010-03-191-2/+2
| | | FossilOrigin-Name: 7f27b697b73ed54f22c363abe49e293e9799f8ac
* 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 FossilOrigin-Name: 4d8a4f639d28df5b5dfabd407be8efbb44454601
* More tidying up (whitespace, spelling, useless parentheses, useless casts)dkf2010-02-241-9/+9
| | | FossilOrigin-Name: 511d94dd873e4ace6252b896eeb821f03023f00f
* 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 FossilOrigin-Name: 4a0630650d0b3a477b4fd01121b715e40d2201b7
* Fix [Bug 2954959] expr abs(0.0) is -0.0nijtmans2010-02-211-3/+7
| | | | | | and added test cases for it. FossilOrigin-Name: 67fb2f3118caf891b80317f38d22210fb1b0b119
* 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] FossilOrigin-Name: 0d29245dd5206eba5211a17216e65982d0be8923
* Compilation of [try] now enabled!dkf2010-02-091-2/+2
| | | FossilOrigin-Name: f2617b69aa7b76a63a06444769939de4d39984e9
* Added basic compilation of [error] (the most common case only).dkf2010-02-051-2/+2
| | | FossilOrigin-Name: d3fc864505b95002aec20fa49a2ed613810211a1
* 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. FossilOrigin-Name: b809fb2cbc1d415f61219d9c1b019d552efde765
* Turned the [array] command into a true ensemble. Test changes indicate somedkf2010-02-021-5/+5
| | | | | | alteration to error messages, otherwise no change. FossilOrigin-Name: dfb143ff5e023cd86daf07ef4447464d0e539c49
* Make the [unset] command be bytecode compiled.dkf2010-01-301-2/+2
| | | FossilOrigin-Name: 211541cc9ec23f38b93e7343a5cfefa2b9412cf7
* * generic/tclBasic.c: Fix lerak of coroutines on namespacemsofer2010-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: FossilOrigin-Name: 213483b4eb86cec7d3d7e93c9410eb484c05968d
* Move declarations to the top of the file, add boilerplate comments to somedkf2009-12-241-190/+203
| | | | | | functions FossilOrigin-Name: 07da01e0542708886056b6b86ea77cbfd641443e
* * generic/tclBasic.c: Fix for bad cmd resolution by coroutinesmsofer2009-12-191-1/+2
| | | | | | | * tests/coroutine.test: [Bug #2917627]. Thanks to schelte for finding it. FossilOrigin-Name: 28c837c3c8a0577a5378c73fc31c34a644f6d471
* fix commentmsofer2009-12-131-7/+5
| | | FossilOrigin-Name: c07dfe3d13f3adca4c2b34f79fe2ed82f859e3f6
* remove accidentally committed c++ style temp commentsmsofer2009-12-131-3/+1
| | | FossilOrigin-Name: 3960ba39cfd66c789be0b6f9b309c0c5ebd98def
* * generic/tclBasic.c: Release TclPopCallFrame() from itsmsofer2009-12-131-7/+13
| | | | | | | * generic/tclExecute.c: tailcall-management duties * generic/tclNamesp.c: FossilOrigin-Name: 20752ce195ff3e69af9573ddaa6b111cf2c74f64
* * generic/tclBasic.c: Moving TclBCArgumentRelease callmsofer2009-12-131-11/+1
| | | | | | | * generic/tclExecute.c: from TclNRTailcallObjCmd to TEBC, so that the pairing of the Enter and Release calls is clearer. FossilOrigin-Name: d4a353ca175fe64fe8b3a45e467e1907de4c5fab
* fix commentmsofer2009-12-111-4/+3
| | | FossilOrigin-Name: 72629e543a2ee1bae7ea391e81423cab40e11da7
* simplify the coroutine BP-chain monkey-patching; tclBasic does not need tomsofer2009-12-111-3/+1
| | | | | | know about bottomPtr, tebc does not need to behave differently on exit for coros FossilOrigin-Name: 76cabdcc5cdf64143f4e892b2e52b3fffd7c7f52
* * generic/tclBasic.c: Full nre-enabling of coroutinesmsofer2009-12-101-11/+2
| | | | | | * generic/tclExecute.c: [Bug 2806407] FossilOrigin-Name: 9995f661beb404599f850e8fb305997219eb900b
* * generic/tclBasic.c: small cleanupmsofer2009-12-101-24/+23
| | | FossilOrigin-Name: d2ad5bb002679c5b99e3095f9d246d808f8b844e
* reorganization and better comments in TclNRCoroutineObjCmd()msofer2009-12-101-49/+46
| | | FossilOrigin-Name: c363632e174948d7b5a98540f046b64deb6b9c02
* * generic/tclBasic.c: Reducing the # of moving parts formsofer2009-12-101-24/+3
| | | | | | | * generic/tclExecute.c: coroutines by delegating more to tebc; eliminate the special coroutine CallFrame. FossilOrigin-Name: fd0eaa36ea6ffbe50c5d0a1260476bfee22c9c1b
* * generic/tclBasic.c: Reducing the # of moving parts formsofer2009-12-101-23/+1
| | | | | | * generic/tclExecute.c: coroutines FossilOrigin-Name: a00ff915ee158ea2d0566643eabcc7eaa1449c89
* remove accidentally committed C++ style commentsmsofer2009-12-091-3/+1
| | | FossilOrigin-Name: badb19da85ffac0f9329947a3d0c8d422404d4ec
* * generic/tclBasic.c: Insure correct lifetime of varFrame'smsofer2009-12-091-7/+15
| | | | | | | | (objc,objv)for coroutines. * generic/tclExecute.c: Code regrouping FossilOrigin-Name: dc303ea50b8768f242d61cac4bd98e3bdee98108
* Add missing Tcl_SetErrorCode calls.dkf2009-12-091-24/+35
| | | FossilOrigin-Name: 5016f7451bf1c09744bff367048da55cf558bd1d
* added comment confessing my puzzlementmsofer2009-12-081-1/+8
| | | FossilOrigin-Name: 0c446f44c30e8f1a8548cba4fa2b2178dfdfc999
* minor cleanupmsofer2009-12-081-10/+7
| | | FossilOrigin-Name: 2f6acb6df9a17ab9956bdfa3a38e5b28027dd11d
* baby steps towards nre-enabling coroutine first runmsofer2009-12-081-28/+8
| | | FossilOrigin-Name: f5462f26a9a2be8f2ec5f418ffdcbcfc835f9ac2
* * generic/tclBasic.c: Partial nre-enabling of coroutines.msofer2009-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. FossilOrigin-Name: 3bf4f4aa021bf5af224e8aaf662c681269631b80
* Small corrections (enforcing ANSI style declarations, etc.)dkf2009-12-081-133/+145
| | | FossilOrigin-Name: 139608bd783986527e46a4f8f0d4a3c4a85c99ed
* * generic/tclBasic.c: arrange for [tailcall] to be created withmsofer2009-12-071-8/+2
| | | | | | | the other builtins: was being created in a separate call, leftover from pre-tip days. FossilOrigin-Name: 90e69c9120e1026c384f7f068f99a40a1ca52729