nsf.c

Clone Tools
  • last updated 16 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
remove shadowing variable

reduce implicit conversions

transitional fix for tcl87a2 problem

delete pre-existing commands explicitly

  1. … 1 more file in changeset.
- provide fully qualified names to Tcl_ProcObjCmd() to avoid potential problems in newer Tcl versions

Preserve changes to monitor the interaction between MakeProc and e76a04e48fb1b850

  1. … 2 more files in changeset.
- make it possible to use error code for cmd result comparison - add some NSF specifc error code

  1. … 3 more files in changeset.
provide error hint for "invalid value constraints" errors

  1. … 2 more files in changeset.
add error message, when present

Reduce number of strlen() operations

whitespace changes

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.