Welcome to the C Runtime In Tcl (CriTcl for short) version 3.1.17.
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.
See
The changes for version 3.1.17:
Extension: Allow duplicate arg- and result-type definitions if they are fully identical.
Bugfix. The application mishandled the possibility of
  identical-named critcl::tsources. Possible because
  critcl::tsources can be in subdirectories, a structure which
  is not retained in the assembled package, causing such files
  to overwrite each other and at least one lost. Fixed by adding a
  serial number to the file names in the assembled package.
Bugfix in the static scanner which made it loose requirement information. Further added code to generally cleanup results at the end (removal of duplicates, mainly).
Bugfix: Fixed issue #76.
  Support installation directories which are not in the
  auto_path.  Without the patch the installed critcl will not
  find its own packages and fail.
  Thanks to Simon Bachmann for the
  report and patch, and then his patience with me to getting to
  actually apply it.
Bugfix: Fixed issue #75.
  Extended critcl::include to now take multiple paths.
Added new compatibility package lmap84.
Fixed typos in various documentation files.
Fixed bug introduced by commit 86f415dd30 (3.1.16 release). The
  separation of critcl::ccode into user and work layers means
  that location retrieval has to go one more level up to find the
  user location.
New supporting package critcl::cutil. Provides common C level
  facilities useful to packages (assertions, tracing, memory
  allocation shorthands).
Modified package critcl to make use of the new tracing
  facilities to provide tracing of arguments and results for
  critcl::ccommand and critcl::cproc invokations.
Modified packages critcl and critcl::class to provide better
  function names for (class) method tracing.  Bumped package
  critcl::class to version 1.0.7.
Extended the support package critcl::literals with limited
  configurability. It is now able to generate code for C-level
  access to the pool without Tcl types (Mode c).  The previously
  existing functionality is accesssible under mode tcl, which
  also is the default. Both modes can be used together.
Extended the support package critcl::emap with limited
  configurability. It is now able to generate code for C-level
  access to the mapping without Tcl types (Mode c). The
  previously existing functionality is accessible under mode
  tcl, which also is the default. Both modes can be used
  together.
Happy Tcling.