summaryrefslogtreecommitdiffstats
path: root/generic/tclNamesp.c
Commit message (Collapse)AuthorAgeFilesLines
* Code Audit results:dkf2010-03-051-7/+6
| | | | | | | | * 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-8/+8
|
* Fix [Bug 2950259] so that deleting an object by killing its namespace willdkf2010-02-151-1/+22
| | | | reliably call the object's destructor.
* Corrected a comment.dkf2010-02-141-3/+2
|
* Hive off the ensemble code into its own file.dkf2010-02-131-2809/+90
| | | | Split the [switch] compiler for sanity's sake.
* * generic/tclBasic.c: Fix lerak of coroutines on namespaceMiguel Sofer2010-01-031-1/+25
| | | | | | | * 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:
* * generic/tclBasic.c: Release TclPopCallFrame() from itsMiguel Sofer2009-12-131-6/+1
| | | | | * generic/tclExecute.c: tailcall-management duties * generic/tclNamesp.c:
* factoring TclSpliceTailcall out of TclPopStackFrameMiguel Sofer2009-12-061-45/+2
|
* * generic/tclBasic.c: Fixed things so that you can tailcallMiguel Sofer2009-12-051-1/+24
| | | | | | | | * generic/tclNamesp.c: properly out of a coroutine. * tests/tailcall.test: * generic/tclInterp.c: Fixed tailcalls for same-interp aliases (no test)
* Revert mistaken commitdgp2009-11-161-34/+2
|
* (forward port) Fix [Bug 2891556] and improve test to detect similar ↵ferrieux2009-11-161-2/+34
| | | | manifestations in the future. Add tcltest support for finalization.
* * generic/tclDictObj.c: Updated freeIntRepProc routines sodgp2009-09-301-1/+3
| | | | | | | | | | | | | | | * generic/tclExecute.c: that they set the typePtr field to * generic/tclIO.c: NULL so that the Tcl_Obj is not left * generic/tclIndexObj.c: in an inconsistent state. * generic/tclInt.h: [Bug 2857044] * generic/tclListObj.c: * generic/tclNamesp.c: * generic/tclOOCall.c: * generic/tclObj.c: * generic/tclPathObj.c: * generic/tclProc.c: * generic/tclRegexp.c: * generic/tclStringObj.c:
* Added code to save space in namespaces. Currently #ifdef'ed out for compat.dkf2009-07-151-25/+232
| | | | Also added code from itcl-ng for better separation of concerns.
* * generic/tclBasic.c: fixed "leaks" in aliases, imports andMiguel Sofer2009-03-211-1/+4
| | | | | | | * generic/tclInt.h: ensembles. Only remaining known leak * generic/tclInterp.c: is in ensemble unknown dispatch (as it * generic/tclNamesp.c: not NR-enabled) * tests/tailcall.test:
* * generic/tcl.h:Miguel Sofer2009-03-191-2/+29
| | | | | | | | | | | | | | * generic/tclInt.h: * generic/tclBasic.c: * generic/tclExecute.c: * generic/tclNamesp.c (Tcl_PopCallFrame): Rewritten tailcall implementation, ::unsupported::atProcExit is (temporarily?) gone. The new approach is much simpler, and also closer to being correct. This commit fixes [Bug 2649975] and [Bug 2695587]. * tests/coroutine.test: Moved the tests to their own files, * tests/tailcall.test: removed the unsupported.test. Added * tests/unsupported.test: tests for the fixed bugs.
* - eliminate some unnessary type castsnijtmans2009-02-101-18/+18
| | | | | - some internal const decorations - spacing
* Fix [Bug 2519474]dkf2009-01-291-2/+3
|
* Fix [Bug 2529117]dkf2009-01-291-21/+40
|
* Apply resolution for [Bug 2529157]. Fix another location in tclBasic.c wheredkf2009-01-281-10/+10
| | | | only the objProc case was handled and not the nreProc case.
* Fix [Bug 1558654]dkf2009-01-091-1/+9
|
* Style fixes (unfouling whitespace, sorting comments, removing useless casts, ↵dkf2009-01-091-8/+8
| | | | etc.)
* TIP #336 IMPLEMENTATIONdgp2008-12-021-2/+2
| | | | | | | | | | | | | | | | | | * generic/tcl.decls: New routines Tcl_(Get|Set)ErrorLine. * generic/tcl.h: Dropped default access to interp->errorLine. * generic/tclCmdAH.c: Restore it with -DUSE_INTERP_ERRORLINE. * generic/tclCmdMZ.c: Updated callers. * generic/tclDictObj.c: * generic/tclIOUtil.c: * generic/tclNamesp.c: * generic/tclOOBasic.c: * generic/tclOODefinedCmds.c: * generic/tclOOMethod.c: * generic/tclProc.c: * generic/tclResult.c: * generic/tclDecls.h: make genstubs * generic/tclStubInit.c:
* Eliminate warning: passing arg 4 of `Tcl_SplitList' fromnijtmans2008-11-111-6/+6
| | | | | | incompatible pointer type reverted change from 2008-11-06 (was under the impression that "-Wno-implicit-int" added an extra warning)
* patch #2215022: clean up the binary ensemble initialization codepatthoyts2008-11-071-33/+69
| | | | | Applied a patch from Duoas which extends the TclMakeEnsemble command to handle sub-ensembles from tables. Cleaned up the original patch a bit.
* Style improvements - invoking callbacks without visual junk.dkf2008-10-261-4/+4
|
* Add "const" to many internalnijtmans2008-10-151-33/+33
| | | | | | | | const tables, so those will be put by the C-compiler in the TEXT segment in stead of the DATA segment. This makes those table sharable in shared libraries.
* Implement TIP 314. [Patch 1901783]dkf2008-09-281-38/+247
|
* TIP #323 IMPLEMENTATION (partial)dgp2008-09-261-3/+3
| | | | | | * doc/namespace.n: Revise [namespace upvar] to accept zero * generic/tclNamesp.c: variable names. * tests/upvar.test:
* NRE-enable the ensemble creator (add extra field!)dkf2008-08-231-2/+3
| | | | Arrange for [dict for] to be NRE-enabled when not compiled. [Bug 2017632]
* Fix performance bug introduced by fix of [Bug 2037727]dkf2008-08-201-1/+11
|
* * generic/tclBasic.c: new unsupported command atProcExitMiguel Sofer2008-08-031-5/+3
| | | | | | | | | * generic/tclCompile.h: that shares the implementation with * generic/tclExecute.c: tailcall. Fixed a segfault in * generic/tclInt.h: tailcalls. Tests added. * generic/tclInterp.c: * generic/tclNamesp.c: * tests/unsupported.test:
* Dumped tclNRE.h's contents into tclInt.h. The file is now empty andMiguel Sofer2008-07-311-2/+1
| | | | | | unrefernced everywhere but in macosx/Tcl.xcodeproj/project.pbxproj: some knowledgeable maintainer please remove tclNRE.h after making sure it doesn't break the build on macosx
* Completely revamped NRE implementation, with (almost) unchanged API.Miguel Sofer2008-07-291-5/+7
|
* * generic/tclBasic.c: Extended the existing TIP #280 system (infoandreas_kupries2008-07-211-4/+15
| | | | | | | | | | | | * 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:
* * generic/tcl.decls: Changed the implementation ofMiguel Sofer2008-07-211-12/+6
| | | | | | | | | | * 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 [2021443] inconsistant "wrong # args" messagesnijtmans2008-07-191-3/+3
|
* new TclNRAddCallback macro for internal use instead of the publicMiguel Sofer2008-07-181-4/+5
| | | | Tcl_NRAddCallback
* * generic/tcl.decls: Change the public api prefix fromMiguel Sofer2008-07-181-9/+9
| | | | | | | | | | | | | | | | | * 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:
* Factor the ensemble code a bit more.dkf2008-07-151-168/+236
|
* NRE implementation [Patch 2017110]Miguel Sofer2008-07-131-82/+131
|
* * generic/tclNamesp.c (Tcl_LogCommandInfo): Restored ability todgp2008-05-221-1/+4
| | | | | handle the argument value length = -1. Thanks to Chris Darroch for discovering the bug and providing the fix. [Bug 1968245].
* Correct logic for handling error cases when setting the namespace unknown ↵dkf2008-05-201-24/+37
| | | | handler.
* * generic/tclNamesp.c (GetNamespaceFromObj): spoil the intrep ofMiguel Sofer2008-03-021-6/+8
| | | | | an nsNameType obj when the reference crosses interpreter boundaries.
* merge stable branch onto HEADdgp2007-12-131-1/+1
|
* Fix [Bug 1845320] and [Bug 1845397]dkf2007-12-061-1/+2
|
* * generic/tclNamesp.c (Tcl_SetEnsembleMappingDict): Added checksdgp2007-11-281-2/+24
| | | | | that the dict value passed in is in the format required to make the internals of ensembles work.
* Factor out the core compiled-ensemble builder for simplicity.dkf2007-11-211-1/+75
|
* Reduce cast count.dkf2007-11-191-118/+116
|
* Simplification+comments for ensemble dispatch enginedkf2007-11-181-128/+175
|
* Greatly improved ensemble compiler. This one now can handle any ensemble.dkf2007-11-161-9/+27
| | | | | It is usually not enabled though; only worth it when a subcommand is actually expected to undergo bytecode compilation.