Welcome to the C Runtime In Tcl (CriTcl for short) version 3.1.13.
This is a system to build C extension packages for Tcl on the fly, from C code embedded within Tcl scripts, for all who wish to make their code go faster.
Merged PR #43. Fixed bug loading adjunct Tcl sources.
Fixes in documentation and generated code of package
critcl::enum. Bumped to version 1.0.1.
Fixes in documentation of package
critcl::emap. In essence a variant or cross of
critcl::bitmap with behaviour like
Merged PR #49. Fixed documentation typo.
Merged PR #46. Fixed documentation typo.
Merged PR #47. Fixes to test results to match the accumulated code changes. Also made portable across Tcl versions (varying error syntax).
New predefined argument- and result-type
New predefined argument-type
bytes mapping to tuple of
byte-array data and length.
Note: The existing type
bytearray (and its aliases)
was left untouched, to keep backward compatibility.
Modified the internal interface between the Tcl shim and C
critcl::cproc with respect to the
handling of optional arguments. An optional argument
induces the use of two C arguments,
has_X is of
type. It is set to
X is set, and set to
X has the default value. C code which
cares about knowing if the argument is default or not is now
able to check that quickly, without having to code the default
Note: This change is visible in the output of the advanced
Fixed issue #50 and documented the availability of variable
C code fragments.
Note that while the old, undocumented name of the variable,
ip, is still usable, it is deprecated. It will be fully
removed in two releases, i.e. for release 3.1.15. The
variable name was changed to be consistent with other code
Fixed issue #51. Disabled the generation of
critcl::config lines 0 coming from template
files, or code generated with them before the final value of
this setting was known.
Fixed issue with handling of namespaced package names in
critcl::iassoc. Equivalent to a bug in
critcl::class fixed for critcl 3.1.1, critcl::class
bitmap do not require a fix as they are all built on top
Fixed issue 42. Clear
::errorInfo immediately after
startup to prevent leakage of irrelevant (caught) errors into
our script and confusing the usage code.
Fixed issue 40. Keep the order of libraries, and allow duplicates. Both are things which are occasionally required for proper linking.
Extended the utility package
critcl::literals to declare a
cproc result-type for a pool.
Further fixed the generated header to handle multiple inclusion.
Bumped version to 1.1.
Fixed issue with utility package
Fixed the generated header to handle multiple inclusion.
Bumped version to 1.0.1.
Created new utility package
critcl::enum for the quick and
easy setup and use of mappings between C values and Tcl
strings. Built on top of
Added examples demonstrating the use of the utility packages