generic

Clone Tools
  • last updated 21 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
ease human tracing of uninitialized/NULL values

* nsf.c (NsfOUplevelMethod, NsfOUpvarMethod): Silence compiler warnings on nonnull/NULL compares.

* nsf.c (NsfOUplevelMethod, NsfOUpvarMethod, NsfCallstackFindCallingContext): Reform of uplevel and upvar methods, based on the recent feedback by Zoran. First, uplevel and upvar methods, as well as [current callinglevel] now behave consistently (re frame skipping for mixin and filter transparency). If there is no innermost enclosing proc frame, the innermost non-proc (e.g., namespace) frame is selected (rather than a "#0" as default). Second, argument handling for both uplevel (i.e., level sniffing in multi-arg case) and upvar (e.g., made silent TCL_ERROR for invalid argument arities explicit) have been fixed. * Object.man, methods.test: Added documentation for both methods (Object.man) and tests.

  1. … 5 more files in changeset.
Fix merge glitch

Leave a to-do

* nsf.c (NsfOUpvarMethod): Fix argument parsing, to reflect Tcl's upvar behaviour for different (invalid) argument arities. Added tests.

  1. … 1 more file in changeset.
cleaning up

reduce dead assignments improve indentation of variables

avoid variable name "index" in generated code since "index" shadows an outer function

  1. … 1 more file in changeset.
Fix indentation

* nsf.c, methods.test (NsfOUplevelMethod): Fix argument handling (level sniffing in the multi-arg case etc.), to match 1:1 the handling of Tcl's uplevel. Added tests.

  1. … 1 more file in changeset.
WIP; rewrite NsfCallStackFindCallingContext

  1. … 1 more file in changeset.
handle ticket #3 on sourceforge: explicit "next" call in ensemble leads to unwanted "unknown" handler call

  1. … 1 more file in changeset.
Extend up-reform to uplevel, introduce NsfCallstackFindCallingContext, added tests

  1. … 1 more file in changeset.
since we know length, we can replace strcmp by memcmp

improve type cleanness

added an additional variant of ALLOC_ON_STACK

The new version does not use alloca(), it does not use VLA

and it does not boat the stack in case huge vectors are to be processed.

It uses a plain array up to a certain size and switches to malloc()

above this size.

align behavior of "current activelevel" with "... callinglevel" in case no NSF frame is found

fix typos and make spelling more uniform

conservative fix for "current callinglevel"; probably more to come

minor cleanup: factor out common strings

improve spelling and formatting

- improved handling of object property autonamed

A call of "new" calls internally the "create" method. When the

"create" method is overloaded, we want to be able to check already

on this level, whether the object is autonamed or not. The previous

version has set the property at the end of the "new" method, which

was too late for ttrace.

  1. … 1 more file in changeset.
object property volatile: provide support for tuning volatile on/off via object property.

improve spelling

  1. … 2 more files in changeset.
improve spelling

make code assumptions clear by adding asserts.

This was triggered by a report of Ashok running into a

crash during startup on windows (Visual Studio 2017)

- improved error message "not allowed to have default": make clear, this is from a parameter specification - added object property "autonamed" (set automatically for objects created via "new") - xotcl2 volatile: improved backward compatibility with XOTcl 1 - extended regression test

  1. … 1 more file in changeset.
- added new variant of "volatile" trying to mimick the XOTcl1 volatile behavior. - added experimental feature NSF_WITH_TCL_OBJ_TYPES_AS_CONVERTER, which uses registered TclObjTypes as value checkers (currently deactivated)

  1. … 1 more file in changeset.
WIP

  1. … 1 more file in changeset.