summaryrefslogtreecommitdiffstats
path: root/generic/tclBasic.c
Commit message (Collapse)AuthorAgeFilesLines
*-. merge trunk into dogeen-assembler-branchKevin B Kenny2011-03-021-42/+28
|\ \
| | * This is [Patch 3168398], Joe Mistachkin's optimisation of Tip #285mig2011-03-011-42/+28
| |/
* | merge trunkKevin B Kenny2011-03-011-5/+12
|\ \ | |/
| * remove unused variablesmig2011-03-011-2/+0
| |
| * * generic/tclBasic.c (TclNREvalObjv): dont do the trampoline dance for ↵mig2011-03-011-1/+10
| | | | | | | | commands that do not have an nreProc, [Patch 3168229]
* | merge trunkKevin B Kenny2011-03-011-7/+7
|\ \ | |/
| * Various mismatches between Tcl_Panic format string and its arguments,nijtmans2011-01-181-4/+4
| | | | | | | | discovered thanks to [Bug 3159920]
| * * generic/tclCmdAH.c (TclInitFileCmd, TclMakeFileCommandSafe, ...):dkf2010-12-091-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Break up [file] into an ensemble. Note that the ensemble is safe in itself, but the majority of its subcommands are not. * generic/tclFCmd.c (FileCopyRename,TclFileDeleteCmd,TclFileAttrsCmd) (TclFileMakeDirsCmd): Adjust these subcommand implementations to work inside an ensemble. (TclFileLinkCmd, TclFileReadLinkCmd, TclFileTemporaryCmd): Move these subcommand implementations from tclCmdAH.c, where they didn't really belong. * generic/tclIOCmd.c (TclChannelNamesCmd): Move to more appropriate source file. * generic/tclEnsemble.c (TclMakeEnsemble): Start of code to make partially-safe ensembles. Currently does not function as expected due to various shortcomings in how safe interpreters are constructed. * tests/cmdAH.test, tests/fCmd.test, tests/interp.test: Test updates to take into account systematization of error messages.
| * 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:
* | mergeKevin B Kenny2010-12-111-5/+7
| |
* | mergeKevin B Kenny2010-12-011-3/+61
| |
* | mergeKevin B Kenny2010-10-231-1/+7
| |
* | mergeKevin B Kenny2010-10-011-4/+4
| |
* | Merged from HEAD.Kevin B Kenny2010-09-271-191/+136
| | | | | | | | Also replaced a funky NRCallTEBC with the new call TclNRExecuteByteCode.
* | initial commit of Ozgur Dogan Ugurlu's (SF user:dogeen) assembler for the ↵Kevin B Kenny2010-09-211-1/+8
|/ | | | Tcl bytecode language
* [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.