nsf.c

Clone Tools
  • last updated 2 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Fold "substdefault" and "substdefaultoptions" into a single parameter option "substdefault"

  1. … 4 more files in changeset.
* nsf.c (ParamOptionParse): Fixed typo in error msg.

* nsf.c (NSCheckNamespace): Simplify resource management of a DString.

* nsf.c (ParamSetFromAny2): Fix inline comment.

* nsf.c (ParamOptionParse, ParamDefinitionParse, ParamDefsParse), parameters.test: Small "type=" converterArg reform. Provided additional parameter in param-parser machinery, to communicate a (namespace) qualifier into ParamOptionParse. This way, the unqualified type=* values are now expanded to qualified names (definition scope): method parameters, nsf::is, nsf::parseargs, setter methods. Type=* in object parameters are currently expanded at the slot level, could also be added. New tests were added, existing ones adjusted to reflect the new behaviour.

  1. … 2 more files in changeset.
Fix collateral in ParseParamOptions

Fix subtle bug

Done with test cases; some cleaning up

- new command "tnsf::definitionnamespace" - experiment with command in regression test

  1. … 3 more files in changeset.
fix typo in comment

- implement substdefaultoptions (for now, just providing the bitmask) - add substdefault.test - rename static function ParamParse() to ParamDefinitionParse() - break overlong lines

  1. … 4 more files in changeset.
Added missing tests, and cases; WIP (two to-dos, and cleanup pending)

Silence gcc8

Use snprintf() instead of sprintf() to protect better against potential buffer overflows

  1. … 8 more files in changeset.
Remove old-style CompiledColonLocalsLookup and use colonLocalVarCache variant instead.

Improve portability (restict length of literal strings <= 4095)

Adress literal limitaton in ISO C99, that requires compilers to support

only strings up to 4095 bytes. As a consequence, we have to split

the compiled-in literal commands into two parts.

  1. … 7 more files in changeset.
prefer boolean test, remove commented-out code

* nsf.c (ParamParse): Fix crash when ParamParse is called with an empty-string argument, e.g. nsf::parameter::info type "". Tests provided.

  1. … 1 more file in changeset.
* nsf.c (NsfParseArgsCmd): Fix another edge case (empty spec and/or empty argv), added more tests. See also TODO.

  1. … 1 more file in changeset.
WIP, still

* nsf.c (NsfParseArgsCmd): Fix nsf::parseargs for the case of Tcl-only params, otherwise, it crashes due to an uninitialized params structure. Added some tests.

  1. … 1 more file in changeset.
WIP

* nsf.c (ParamDefsParse): Fix small typo "allowedOptinons" -> "allowedOptions"

* nsfDebug.c (NsfInitPkgConfig): Provide NSF configuration data via the TIP 59 interface (::nsf::pkgconfig).

  1. … 5 more files in changeset.
Add some tests, to be continued

  1. … 1 more file in changeset.
Instrument code a little, with a working version; but I am not satisfied

Remove unneeded function

Don't allow bytearrays as name of non-pos args

We try to address the problem, that the argument parser might add string reps to Tcl_Objs

without string reps. This is in particular nasty for pure byte arrays in Tcl 8.6, which

are defined as having no string. We do not want to change purtiy just by passing

such values in arguments,

  1. … 1 more file in changeset.
Adjust print format to recent changes

nsf.c, nsfInt.h, nsfObj.c: Make epoch counters unsigned ints, so doubling the number of possible epochs.

  1. … 2 more files in changeset.