nsf

Clone Tools
  • last updated 17 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
- change library/lib/make.xotcl to xotcl2

- xotcl 1.6.6: backport of memory fixes from xotcl 2.0

- add check for optional match arguments in tcl stub generator - fix potential memory leaks all "definitely losts" from valgrind (except 24 bytes from Tcl_PkgRequire) gone

- minor leak cleanup

- make valgrind + system malloc (instead of tcl malloc) run cleanly

- replace hash-lookup in namespace in ObjectHasChildren() by pointer lookup to reduce namespace dependency. - fix memcopy size

- xotcl 1.6.6: one more cases for the packaging, where we want to load xotcl1 not 2

    • -433
    • +0
    /library/store/XOTclSdbm/Makefile
    • -994
    • +0
    /library/store/XOTclSdbm/config.log
    • -433
    • +0
    /library/xml/TclExpat-1.1/Makefile
    • -1007
    • +0
    /library/xml/TclExpat-1.1/config.log
- xotcl 1.6.6: more cases for the regression test, where we want to load xotcl1 not 2

    • -25
    • +25
    /library/store/XOTclSdbm/config.log
    • -82
    • +82
    /library/xml/TclExpat-1.1/config.log
- xotcl 1.6.6: make sure to load always xotcl 1 versions when needed - xotcl 1.6.6: make compilation clean when compiled with assertions on

  1. … 5 more files in changeset.
- remove "buffer" from compiled var structures - remove xotcl1 dependency from aol-tcl - removed conditional var table creation by assertion - make clean compile with assertions turned on

- add verbosity for varname copying

- rename CallStackPush() to CscInit() - rename CallStackPop() to CscFinish()

- get rid of reminder of tcl 8.4 compatiblity and remove range of ifdefs, such as PRE85, FORWARD_COMPATIBLE, TCL85STACK, CANONICAL_ARGS, USE_COMPILED_VAR_RESOLVER

- removed EXPERIMENTAL_CMD_RESOLVER

- handling of minimal object systems. For example, the following three command create an object system around ::object and ::class ...

::xotcl::createobjectsystem ::object ::class

::xotcl::alias ::class + ::xotcl::cmd::Class::create

::xotcl::alias ::object - ::xotcl::cmd::Object::destroy

... where no internal message dispatch are used (e.g. no

constructor "init", and where just two methods ("+" and "-")

are used to create and destroy objects

- extended regression test

- provide prefix for internally called methods to distinguish between methods called on objects or classes

- eliminated XOTE___UNKNOWN - renamed __unknown to requireobject

- eliminated XOTE_UNKNOWN

- eliminated XOTE_RESIDUALARGS

- renamed MethodObj() to XOTclMethodObj() (it is an exported symbol) - eliminated XOTE_MOVE

- replaced hard-coded method calls for XOTE_DEFAULTMETHOD, XOTE_INIT, XOTE_OBJECTPARAMETER with MethodObj()

- created new functions: ObjectSystemFree(), ObjectSystemAdd(), ObjectSystemsCheckSystemMethod(), ObjectSystemsCleanup(), GetObjectSystem(), CallDirectly() for better separation of systems. We keep track which essential system methods are defined and which which methods are potentially overloaded.

- move refcount fixing logic for exit from higher stackframes to new function: finalObjectDeletion()

- first part of allowing arbitrary named internally called methods.

- fix last issue, with freeing objects, when exit happens from higher stack frames

- block call-stack deletes during XOTCL_EXITHANDLER_ON_SOFT_DESTROY; however, this seems to create a small leak during exit (revant for threads); so currently, debug still turned on

- replace all CanInvokeDirectly() by InvokeMethodObj()

- remove some more obsolete RCS Ids - call Tcl_Objs "Obj", not "Object"

- remove filter deactivation to a later point in time (should finally be before freeAllXOTclObjectsAndClasses())

- deactivate filters in finialize - new method InvokeMethodObj() to replace finally CanInvokeDirectly()