<pre style='margin:0'>
Ryan Carsten Schmidt (ryandesign) pushed a commit to branch master
in repository macports-base.

</pre>
<p><a href="https://github.com/macports/macports-base/commit/3b1d6ac38da7f8e0a5e4b722131fa4668bbf3a00">https://github.com/macports/macports-base/commit/3b1d6ac38da7f8e0a5e4b722131fa4668bbf3a00</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 3b1d6ac38da7f8e0a5e4b722131fa4668bbf3a00
</span>Author: Christopher Chavez <chrischavez@gmx.us>
AuthorDate: Wed Feb 14 07:59:05 2024 -0600

<span style='display:block; white-space:pre;color:#404040;'>    tclx: update to 8.6.3
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Drop patch superseded by update
</span>---
 vendor/patches/tclx/configure-regenerate.patch     |  76 --------------
 vendor/tclx                                        |   2 +-
 .../.github/workflows/linux-ci.yml                 |   7 +-
 .../.github/workflows/mac-ci.yml                   |   1 +
 vendor/{tclx-8.6.2 => tclx-8.6.3}/.gitignore       |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/CHANGES          |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/ChangeLog        |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/Makefile.in      |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/README.FreeBSD   |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/README.md        |   4 +-
 vendor/{tclx-8.6.2 => tclx-8.6.3}/aclocal.m4       |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/compat/getopt.c  |   8 +-
 vendor/{tclx-8.6.2 => tclx-8.6.3}/compat/random.c  |  15 ++-
 vendor/{tclx-8.6.2 => tclx-8.6.3}/compat/rename.c  |   5 +-
 vendor/{tclx-8.6.2 => tclx-8.6.3}/configure        |  25 ++++-
 vendor/{tclx-8.6.2 => tclx-8.6.3}/configure.in     |   2 +-
 .../doc/CONVERSION-NOTES                           |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/doc/CmdWrite.3   |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/doc/Handles.3    |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/doc/Keylist.3    |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/doc/ObjCmdWrite.3   |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/doc/TclX.n       |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/doc/TclXInit.3   |   0
 .../generic/tclExtdInt.h                           |   2 +-
 .../{tclx-8.6.2 => tclx-8.6.3}/generic/tclExtend.h |  18 ++--
 .../generic/tclXbsearch.c                          |   4 +-
 .../{tclx-8.6.2 => tclx-8.6.3}/generic/tclXchmod.c |  12 +--
 .../generic/tclXcmdloop.c                          |   4 +-
 .../generic/tclXcoalesce.c                         |   2 +-
 .../{tclx-8.6.2 => tclx-8.6.3}/generic/tclXdebug.c |   4 +-
 .../{tclx-8.6.2 => tclx-8.6.3}/generic/tclXdup.c   |   4 +-
 .../{tclx-8.6.2 => tclx-8.6.3}/generic/tclXfcntl.c |   4 +-
 .../generic/tclXfilecmds.c                         |  12 +--
 .../generic/tclXfilescan.c                         |  12 +--
 .../{tclx-8.6.2 => tclx-8.6.3}/generic/tclXflock.c |  12 +--
 .../{tclx-8.6.2 => tclx-8.6.3}/generic/tclXfstat.c |   4 +-
 .../generic/tclXgeneral.c                          |  16 +--
 .../generic/tclXhandles.c                          |  12 +--
 .../{tclx-8.6.2 => tclx-8.6.3}/generic/tclXinit.c  |   0
 .../generic/tclXkeylist.c                          |  20 ++--
 .../{tclx-8.6.2 => tclx-8.6.3}/generic/tclXlgets.c |   4 +-
 .../{tclx-8.6.2 => tclx-8.6.3}/generic/tclXlib.c   |  12 +--
 .../{tclx-8.6.2 => tclx-8.6.3}/generic/tclXlist.c  |  28 +++---
 .../{tclx-8.6.2 => tclx-8.6.3}/generic/tclXmath.c  |  12 +--
 .../generic/tclXmsgcat.c                           |  16 +--
 .../generic/tclXoscmds.c                           |  28 +++---
 .../generic/tclXprocess.c                          |  12 +--
 .../generic/tclXprofile.c                          |  13 ++-
 .../generic/tclXselect.c                           |   6 +-
 .../generic/tclXsignal.c                           |  18 ++--
 .../generic/tclXsocket.c                           |  10 +-
 .../generic/tclXstring.c                           |  40 ++++----
 .../{tclx-8.6.2 => tclx-8.6.3}/generic/tclXtest.c  |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/generic/tclXutil.c  |  18 ++--
 .../library/arrayprocs.tcl                         |   0
 .../library/autoload.tcl                           |   0
 .../library/buildhelp.tcl                          |   0
 .../library/buildidx.tcl                           |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/library/compat.tcl  |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/library/convlib.tcl |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/library/edprocs.tcl |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/library/events.tcl  |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/library/fmath.tcl   |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/library/forfile.tcl |   0
 .../library/globrecur.tcl                          |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/library/help.tcl |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/library/profrep.tcl |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/library/pushd.tcl   |   0
 .../library/setfuncs.tcl                           |   0
 .../library/showproc.tcl                           |   0
 .../library/stringfile.tcl                         |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/library/tcllib.tcl  |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/library/tclx.tcl |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/license.terms    |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/tclconfig/ChangeLog |   0
 .../tclconfig/README.txt                           |   0
 .../tclconfig/install-sh                           |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/tclconfig/tcl.m4 |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/tests/all.tcl    |   0
 .../tests/arrayproc.test                           |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/tests/bsearch.test  |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/tests/chartype.test |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/tests/chmod.test |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/tests/chroot.test   |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/tests/cmdloop.test  |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/tests/cmdtrace.test |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/tests/coalesce.test |   0
 .../tests/compat/clock.test                        |   0
 .../tests/compat/copyfile.test                     |   0
 .../tests/compat/file.test                         |   0
 .../tests/compat/server.test                       |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/tests/convlib.test  |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/tests/dup.test   |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/tests/fcntl.test |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/tests/filescan.test |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/tests/flock.test |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/tests/fmath.test |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/tests/forfile.test  |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/tests/fstat.test |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/tests/ftrunc.test   |   0
 .../tests/globrecur.test                           |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/tests/help.test  |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/tests/id.test    |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/tests/init.test  |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/tests/keylist.test  |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/tests/lassign.test  |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/tests/lgets.test |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/tests/list.test  |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/tests/lmatch.test   |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/tests/loop.test  |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/tests/math.test  |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/tests/msgcat.test   |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/tests/nice.test  |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/tests/pipe.test  |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/tests/process.test  |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/tests/profile.test  |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/tests/pushd.test |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/tests/readdir.test  |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/tests/select.test   |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/tests/setfuncs.test |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/tests/showproc.test |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/tests/signal.test   |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/tests/socket.test   |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/tests/string.test   |   0
 .../tests/stringfil.test                           |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/tests/sync.test  |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/tests/tcllib.test   |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/tests/testlib.tcl   |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/tests/tryeval.test  |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/tests/unixcmds.test |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/unix/INSTALL     |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/unix/tclXAppInit.c  |   0
 .../unix/tclXchannelfd.c                           |   2 +-
 .../{tclx-8.6.2 => tclx-8.6.3}/unix/tclXunixCmds.c |  11 +--
 .../{tclx-8.6.2 => tclx-8.6.3}/unix/tclXunixDup.c  |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/unix/tclXunixId.c   |  44 ++++-----
 .../{tclx-8.6.2 => tclx-8.6.3}/unix/tclXunixOS.c   |  19 +---
 .../{tclx-8.6.2 => tclx-8.6.3}/unix/tclXunixPort.h |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/unix/tclXunixSock.c |   2 +-
 .../{tclx-8.6.2 => tclx-8.6.3}/unix/tclXunixTest.c |   0
 .../unix/tools/Makefile.in                         |   0
 .../unix/tools/bldmanhelp.tcl                      |   0
 .../unix/tools/buildutil.tcl                       |   0
 .../unix/tools/checkup.tcl                         |   0
 .../unix/tools/cphelpdir.sh                        |   0
 .../unix/tools/cpmanpages.tcl                      |   0
 .../unix/tools/genindex.tcl                        |   0
 .../unix/tools/instcopy.tcl                        |   0
 .../unix/tools/libconvert.tcl                      |   0
 .../unix/tools/runbuildhelp.tcl                    |   0
 .../unix/tools/tclmanpages                         |   0
 .../unix/tools/tkmanpages                          |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/win/INSTALL.txt  |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/win/cattcl.c     |   5 +-
 vendor/{tclx-8.6.2 => tclx-8.6.3}/win/makefile.vc  |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/win/nmakehlp.c   |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/win/pkgIndex.tcl.in |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/win/rules.vc     |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/win/tclXAppInit.c   |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/win/tclXwinCmds.c   |  11 +--
 vendor/{tclx-8.6.2 => tclx-8.6.3}/win/tclXwinDup.c |  14 ++-
 vendor/{tclx-8.6.2 => tclx-8.6.3}/win/tclXwinId.c  |  32 +++---
 vendor/{tclx-8.6.2 => tclx-8.6.3}/win/tclXwinOS.c  | 109 +++++++++------------
 .../{tclx-8.6.2 => tclx-8.6.3}/win/tclXwinPort.h   |   0
 .../{tclx-8.6.2 => tclx-8.6.3}/win/tclXwinTest.c   |   0
 vendor/{tclx-8.6.2 => tclx-8.6.3}/win/tclx.rc      |   0
 166 files changed, 331 insertions(+), 422 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/patches/tclx/configure-regenerate.patch b/vendor/patches/tclx/configure-regenerate.patch
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index a3ebc2a88..000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/patches/tclx/configure-regenerate.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,76 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Upstream-Status: Submitted [https://github.com/flightaware/tclx/pull/24]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/vendor/tclx-8.6.2/configure b/vendor/tclx-8.6.2/configure
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 53b3e3a..e892c03 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/vendor/tclx-8.6.2/configure
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/vendor/tclx-8.6.2/configure
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -2342,7 +2342,7 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ac_compiler_gnu=$ac_cv_c_compiler_gnu
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--FULL_VERSION="8.6.1"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+FULL_VERSION="8.6.2"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     # TEA extensions pass this us the version of TEA they think they
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -9075,7 +9075,8 @@ else
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* end confdefs.h.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#include <time.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#include <stdlib.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            #include <time.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- int
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- main ()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -9111,7 +9112,8 @@ else
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* end confdefs.h.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#include <time.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#include <stdlib.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+                #include <time.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- int
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- main ()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -9196,10 +9198,11 @@ else
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* end confdefs.h.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#include <stdlib.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #include <sys/types.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #include <sys/times.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #include <unistd.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--main() {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+int main(void) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     struct tms cpu;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     times(&cpu);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     sleep(2);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -9462,6 +9465,17 @@ else
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- fi
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    for ac_func in rresvport
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+do :
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  ac_fn_c_check_func "$LINENO" "rresvport" "ac_cv_func_rresvport"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+if test "x$ac_cv_func_rresvport" = xyes; then :
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  cat >>confdefs.h <<_ACEOF
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#define HAVE_RRESVPORT 1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+_ACEOF
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+fi
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+done
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     #-------------------------------------------------------------------------
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     # Check for additional libraries the Tcl/Tk does not check for.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -9524,7 +9538,8 @@ if test "x$ac_cv_func_catgets" = xyes; then :
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- $as_echo_n "checking catclose return value... " >&6; }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            cat confdefs.h - <<_ACEOF >conftest.$ac_ext
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* end confdefs.h.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#include <nl_types.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#include <stdlib.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+         #include <nl_types.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- int
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- main ()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx b/vendor/tclx
</span><span style='display:block; white-space:pre;color:#808080;'>index a1d874f78..7daeb8e90 120000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1 +1 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-tclx-8.6.2
</span>\ No newline at end of file
<span style='display:block; white-space:pre;background:#e0ffe0;'>+tclx-8.6.3
</span>\ No newline at end of file
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/.github/workflows/linux-ci.yml b/vendor/tclx-8.6.3/.github/workflows/linux-ci.yml
</span>similarity index 88%
rename from vendor/tclx-8.6.2/.github/workflows/linux-ci.yml
rename to vendor/tclx-8.6.3/.github/workflows/linux-ci.yml
<span style='display:block; white-space:pre;color:#808080;'>index aca2c6860..e83172721 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/.github/workflows/linux-ci.yml
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/.github/workflows/linux-ci.yml
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -25,9 +25,10 @@ jobs:
</span>         autoreconf -vi
         ./configure --with-tcl=/usr/lib/tcl8.6
     - name: make
<span style='display:block; white-space:pre;background:#ffe0e0;'>-      run: |
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        make
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        make test
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      run: make
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    - name: check unit tests
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      continue-on-error: true
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      run: make test
</span>     - name: install
       run: sudo make install
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/.github/workflows/mac-ci.yml b/vendor/tclx-8.6.3/.github/workflows/mac-ci.yml
</span>similarity index 97%
rename from vendor/tclx-8.6.2/.github/workflows/mac-ci.yml
rename to vendor/tclx-8.6.3/.github/workflows/mac-ci.yml
<span style='display:block; white-space:pre;color:#808080;'>index dbea27929..e61b61894 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/.github/workflows/mac-ci.yml
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/.github/workflows/mac-ci.yml
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -37,6 +37,7 @@ jobs:
</span>       # cannot be reproduced in a workable test environment. It may be related to
       # the general signal handling issues with multithreaded TclX. Try re-enabling
       # when on Tcl(x) 8.7 where the problem should be fixed.
<span style='display:block; white-space:pre;background:#e0ffe0;'>+      continue-on-error: true
</span>       run: SKIPFILES="pipe.test process.test signal.test" make test
     - name: install
       run: sudo make install
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/.gitignore b/vendor/tclx-8.6.3/.gitignore
</span>similarity index 100%
rename from vendor/tclx-8.6.2/.gitignore
rename to vendor/tclx-8.6.3/.gitignore
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/CHANGES b/vendor/tclx-8.6.3/CHANGES
</span>similarity index 100%
rename from vendor/tclx-8.6.2/CHANGES
rename to vendor/tclx-8.6.3/CHANGES
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/ChangeLog b/vendor/tclx-8.6.3/ChangeLog
</span>similarity index 100%
rename from vendor/tclx-8.6.2/ChangeLog
rename to vendor/tclx-8.6.3/ChangeLog
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/Makefile.in b/vendor/tclx-8.6.3/Makefile.in
</span>similarity index 100%
rename from vendor/tclx-8.6.2/Makefile.in
rename to vendor/tclx-8.6.3/Makefile.in
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/README.FreeBSD b/vendor/tclx-8.6.3/README.FreeBSD
</span>similarity index 100%
rename from vendor/tclx-8.6.2/README.FreeBSD
rename to vendor/tclx-8.6.3/README.FreeBSD
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/README.md b/vendor/tclx-8.6.3/README.md
</span>similarity index 95%
rename from vendor/tclx-8.6.2/README.md
rename to vendor/tclx-8.6.3/README.md
<span style='display:block; white-space:pre;color:#808080;'>index c191780aa..34b7bb06e 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/README.md
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/README.md
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,5 +1,5 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-![Linux CI](https://github.com/flightaware/tclx/workflows/Linux%20CI/badge.svg)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-![Mac CI](https://github.com/flightaware/tclx/workflows/Mac%20CI/badge.svg)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+[![Linux CI](https://github.com/flightaware/tclx/actions/workflows/linux-ci.yml/badge.svg)](https://github.com/flightaware/tclx/actions/workflows/linux-ci.yml)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+[![Mac CI](https://github.com/flightaware/tclx/actions/workflows/mac-ci.yml/badge.svg)](https://github.com/flightaware/tclx/actions/workflows/mac-ci.yml)
</span> 
 # Extended Tcl (TclX)
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/aclocal.m4 b/vendor/tclx-8.6.3/aclocal.m4
</span>similarity index 100%
rename from vendor/tclx-8.6.2/aclocal.m4
rename to vendor/tclx-8.6.3/aclocal.m4
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/compat/getopt.c b/vendor/tclx-8.6.3/compat/getopt.c
</span>similarity index 98%
rename from vendor/tclx-8.6.2/compat/getopt.c
rename to vendor/tclx-8.6.3/compat/getopt.c
<span style='display:block; white-space:pre;color:#808080;'>index 79d076f89..0dac5cb37 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/compat/getopt.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/compat/getopt.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -58,10 +58,10 @@ char    *optarg;                /* argument associated with option */
</span>  *        Parse argc/argv argument vector.
  */
 int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-getopt(nargc, nargv, ostr)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   int nargc;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   char * const *nargv;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   const char *ostr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+getopt(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   int nargc,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   char * const *nargv,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   const char *ostr)
</span> {
        static char *place = EMSG;              /* option letter processing */
        char *oli;                              /* option letter list index */
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/compat/random.c b/vendor/tclx-8.6.3/compat/random.c
</span>similarity index 98%
rename from vendor/tclx-8.6.2/compat/random.c
rename to vendor/tclx-8.6.3/compat/random.c
<span style='display:block; white-space:pre;color:#808080;'>index 7d2f5072a..d23d5756e 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/compat/random.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/compat/random.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -49,7 +49,7 @@
</span> 
 #include <stdio.h>
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-long random();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long random(void);
</span> 
 typedef unsigned int u_int;
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -243,10 +243,10 @@ srandom(x)
</span>  * Returns a pointer to the old state.
  */
 char *
<span style='display:block; white-space:pre;background:#ffe0e0;'>-initstate(seed, arg_state, n)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   u_int seed;                     /* seed for R.N.G. */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   char *arg_state;                /* pointer to state array */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   int n;                          /* # bytes of state info */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+initstate(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   u_int seed,                     /* seed for R.N.G. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   char *arg_state,                /* pointer to state array */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   int n)                          /* # bytes of state info */
</span> {
        register char *ostate = (char *)(&state[-1]);
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -306,8 +306,7 @@ initstate(seed, arg_state, n)
</span>  * Returns a pointer to the old state information.
  */
 char *
<span style='display:block; white-space:pre;background:#ffe0e0;'>-setstate(arg_state)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   char *arg_state;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+setstate(char *arg_state)
</span> {
        register long *new_state = (long *)arg_state;
        register int type = new_state[0] % MAX_TYPES;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -359,7 +358,7 @@ setstate(arg_state)
</span>  * Returns a 31-bit random number.
  */
 long
<span style='display:block; white-space:pre;background:#ffe0e0;'>-random()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+random(void)
</span> {
        long i;
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/compat/rename.c b/vendor/tclx-8.6.3/compat/rename.c
</span>similarity index 86%
rename from vendor/tclx-8.6.2/compat/rename.c
rename to vendor/tclx-8.6.3/compat/rename.c
<span style='display:block; white-space:pre;color:#808080;'>index 87fc87c8a..e028279aa 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/compat/rename.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/compat/rename.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -6,8 +6,9 @@
</span>  *
  */
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-int rename(from,to)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-register char *from, *to;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+int rename(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+register char *from,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+register char *to)
</span> {
     (void) unlink(to);
     if (link(from, to) < 0)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/configure b/vendor/tclx-8.6.3/configure
</span>similarity index 99%
rename from vendor/tclx-8.6.2/configure
rename to vendor/tclx-8.6.3/configure
<span style='display:block; white-space:pre;color:#808080;'>index 53b3e3a16..6bd6e66f8 100755
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/configure
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/configure
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -2342,7 +2342,7 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $
</span> ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-FULL_VERSION="8.6.1"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+FULL_VERSION="8.6.3"
</span> 
 
     # TEA extensions pass this us the version of TEA they think they
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -9075,7 +9075,8 @@ else
</span> 
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#include <time.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#include <stdlib.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            #include <time.h>
</span> int
 main ()
 {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -9111,7 +9112,8 @@ else
</span> 
            cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#include <time.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#include <stdlib.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                #include <time.h>
</span> int
 main ()
 {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -9196,10 +9198,11 @@ else
</span>   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+#include <stdlib.h>
</span> #include <sys/types.h>
 #include <sys/times.h>
 #include <unistd.h>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-main() {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+int main(void) {
</span>     struct tms cpu;
     times(&cpu);
     sleep(2);
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -9462,6 +9465,17 @@ else
</span> 
 fi
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    for ac_func in rresvport
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+do :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  ac_fn_c_check_func "$LINENO" "rresvport" "ac_cv_func_rresvport"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if test "x$ac_cv_func_rresvport" = xyes; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  cat >>confdefs.h <<_ACEOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#define HAVE_RRESVPORT 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+_ACEOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+done
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> 
     #-------------------------------------------------------------------------
     # Check for additional libraries the Tcl/Tk does not check for.
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -9524,7 +9538,8 @@ if test "x$ac_cv_func_catgets" = xyes; then :
</span> $as_echo_n "checking catclose return value... " >&6; }
         cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#include <nl_types.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#include <stdlib.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         #include <nl_types.h>
</span> int
 main ()
 {
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/configure.in b/vendor/tclx-8.6.3/configure.in
</span>similarity index 99%
rename from vendor/tclx-8.6.2/configure.in
rename to vendor/tclx-8.6.3/configure.in
<span style='display:block; white-space:pre;color:#808080;'>index c0e6f1dc9..e7837101a 100755
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/configure.in
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/configure.in
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -6,7 +6,7 @@ dnl to configure the system for the local environment.
</span> # RCS: @(#) $Id: configure.in,v 1.17 2006/01/26 00:30:54 hobbs Exp $
 
 AC_INIT([tclx], [8.6])
<span style='display:block; white-space:pre;background:#ffe0e0;'>-FULL_VERSION="8.6.2"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+FULL_VERSION="8.6.3"
</span> 
 TEA_INIT([3.9])
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/doc/CONVERSION-NOTES b/vendor/tclx-8.6.3/doc/CONVERSION-NOTES
</span>similarity index 100%
rename from vendor/tclx-8.6.2/doc/CONVERSION-NOTES
rename to vendor/tclx-8.6.3/doc/CONVERSION-NOTES
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/doc/CmdWrite.3 b/vendor/tclx-8.6.3/doc/CmdWrite.3
</span>similarity index 100%
rename from vendor/tclx-8.6.2/doc/CmdWrite.3
rename to vendor/tclx-8.6.3/doc/CmdWrite.3
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/doc/Handles.3 b/vendor/tclx-8.6.3/doc/Handles.3
</span>similarity index 100%
rename from vendor/tclx-8.6.2/doc/Handles.3
rename to vendor/tclx-8.6.3/doc/Handles.3
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/doc/Keylist.3 b/vendor/tclx-8.6.3/doc/Keylist.3
</span>similarity index 100%
rename from vendor/tclx-8.6.2/doc/Keylist.3
rename to vendor/tclx-8.6.3/doc/Keylist.3
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/doc/ObjCmdWrite.3 b/vendor/tclx-8.6.3/doc/ObjCmdWrite.3
</span>similarity index 100%
rename from vendor/tclx-8.6.2/doc/ObjCmdWrite.3
rename to vendor/tclx-8.6.3/doc/ObjCmdWrite.3
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/doc/TclX.n b/vendor/tclx-8.6.3/doc/TclX.n
</span>similarity index 100%
rename from vendor/tclx-8.6.2/doc/TclX.n
rename to vendor/tclx-8.6.3/doc/TclX.n
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/doc/TclXInit.3 b/vendor/tclx-8.6.3/doc/TclXInit.3
</span>similarity index 100%
rename from vendor/tclx-8.6.2/doc/TclXInit.3
rename to vendor/tclx-8.6.3/doc/TclXInit.3
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclExtdInt.h b/vendor/tclx-8.6.3/generic/tclExtdInt.h
</span>similarity index 99%
rename from vendor/tclx-8.6.2/generic/tclExtdInt.h
rename to vendor/tclx-8.6.3/generic/tclExtdInt.h
<span style='display:block; white-space:pre;color:#808080;'>index dcd1e8b85..bb2a143eb 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/generic/tclExtdInt.h
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/generic/tclExtdInt.h
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -244,7 +244,7 @@ TclX_StructOffset (void *nsPtr, size_t offset,
</span> #define TclX_WriteNL(channel) (Tcl_Write (channel, "\n", 1))
 
 extern int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclX_StrToOffset (CONST char *string,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclX_StrToOffset (const char *string,
</span>                   int         base,
                   off_t      *offsetPtr);
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclExtend.h b/vendor/tclx-8.6.3/generic/tclExtend.h
</span>similarity index 92%
rename from vendor/tclx-8.6.2/generic/tclExtend.h
rename to vendor/tclx-8.6.3/generic/tclExtend.h
<span style='display:block; white-space:pre;color:#808080;'>index 7ac360d8d..b362fa238 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/generic/tclExtend.h
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/generic/tclExtend.h
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -97,18 +97,22 @@ EXTERN void     TclX_SplitWinCmdLine (int *argcPtr, char ***argvPtr);
</span> /*
  * Exported utility functions.
  */
<span style='display:block; white-space:pre;background:#ffe0e0;'>-EXTERN void     TclX_AppendObjResult TCL_VARARGS_DEF(Tcl_Interp *, interpArg);
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-EXTERN char *   TclX_DownShift (char *targetStr, CONST char *sourceStr);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#if defined(__GNUC__) && __GNUC__ >= 4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+__attribute__((sentinel))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+EXTERN void        TclX_AppendObjResult (Tcl_Interp *interp, ...);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+EXTERN char *      TclX_DownShift (char *targetStr, const char *sourceStr);
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-EXTERN int      TclX_StrToInt (CONST char *string, int base, int *intPtr);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+EXTERN int TclX_StrToInt (const char *string, int base, int *intPtr);
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-EXTERN int      TclX_StrToUnsigned (CONST char *string,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+EXTERN int TclX_StrToUnsigned (const char *string,
</span>                                 int           base,
                                 unsigned   *unsignedPtr);
 
 EXTERN char *  TclX_UpShift (char           *targetStr,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                              CONST char *sourceStr);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                              const char *sourceStr);
</span> 
 /*
  * Exported keyed list object manipulation functions.
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -143,7 +147,7 @@ EXTERN void_pt       TclX_HandleAlloc (void_pt       headerPtr,
</span> EXTERN void       TclX_HandleFree (void_pt  headerPtr,
                              void_pt  entryPtr);
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-EXTERN void_pt  TclX_HandleTblInit (CONST char *handleBase,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+EXTERN void_pt     TclX_HandleTblInit (const char *handleBase,
</span>                                     int       entrySize,
                                     int            initEntries);
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -161,7 +165,7 @@ EXTERN void  TclX_WalkKeyToHandle (void_pt   headerPtr,
</span> 
 EXTERN void_pt TclX_HandleXlate (Tcl_Interp  *interp,
                                   void_pt        headerPtr,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                                  CONST  char *handle);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                  const  char *handle);
</span> 
 EXTERN void_pt TclX_HandleXlateObj (Tcl_Interp    *interp,
                                      void_pt          headerPtr,
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclXbsearch.c b/vendor/tclx-8.6.3/generic/tclXbsearch.c
</span>similarity index 99%
rename from vendor/tclx-8.6.2/generic/tclXbsearch.c
rename to vendor/tclx-8.6.3/generic/tclXbsearch.c
<span style='display:block; white-space:pre;color:#808080;'>index a2dc37b7c..f11055499 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/generic/tclXbsearch.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/generic/tclXbsearch.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -52,7 +52,7 @@ static int
</span> TclX_BsearchObjCmd (ClientData clientData, 
                     Tcl_Interp *interp,
                     int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj *const objv[]);
</span> 
 /*-----------------------------------------------------------------------------
  *
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -296,7 +296,7 @@ static int
</span> TclX_BsearchObjCmd (ClientData clientData,
                     Tcl_Interp *interp,
                     int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj *const objv[])
</span> {
     int status;
     binSearchCB_t searchCB;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclXchmod.c b/vendor/tclx-8.6.3/generic/tclXchmod.c
</span>similarity index 98%
rename from vendor/tclx-8.6.2/generic/tclXchmod.c
rename to vendor/tclx-8.6.3/generic/tclXchmod.c
<span style='display:block; white-space:pre;color:#808080;'>index 65f05361b..b9efa5b53 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/generic/tclXchmod.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/generic/tclXchmod.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -39,19 +39,19 @@ static int
</span> TclX_ChmodObjCmd (ClientData clientData, 
                   Tcl_Interp *interp,
                   int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                  Tcl_Obj *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  Tcl_Obj *const objv[]);
</span> 
 static int 
 TclX_ChownObjCmd (ClientData clientData, 
                   Tcl_Interp *interp,
                   int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                  Tcl_Obj *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  Tcl_Obj *const objv[]);
</span> 
 static int 
 TclX_ChgrpObjCmd (ClientData clientData, 
                   Tcl_Interp *interp,
                   int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                  Tcl_Obj *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  Tcl_Obj *const objv[]);
</span> 
 
 /*-----------------------------------------------------------------------------
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -306,7 +306,7 @@ ChmodFileIdObj (Tcl_Interp *interp, modeInfo_t modeInfo, Tcl_Obj *fileIdObj)
</span>  *-----------------------------------------------------------------------------
  */
 static int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclX_ChmodObjCmd (ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclX_ChmodObjCmd (ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *const objv[])
</span> {
     int           objIdx, idx, fileObjc, fileIds, result;
     modeInfo_t    modeInfo;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -371,7 +371,7 @@ TclX_ChmodObjCmd (ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *
</span>  *-----------------------------------------------------------------------------
  */
 static int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclX_ChownObjCmd (ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclX_ChownObjCmd (ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *const objv[])
</span> {
     int        objIdx, ownerObjc, fileIds;
     Tcl_Obj  **ownerObjv = NULL;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -455,7 +455,7 @@ TclX_ChownObjCmd (ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *
</span>  *-----------------------------------------------------------------------------
  */
 static int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclX_ChgrpObjCmd (ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclX_ChgrpObjCmd (ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *const objv[])
</span> {
     int        objIdx, fileIds;
     char      *fileIdsSwitch, *groupString;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclXcmdloop.c b/vendor/tclx-8.6.3/generic/tclXcmdloop.c
</span>similarity index 99%
rename from vendor/tclx-8.6.2/generic/tclXcmdloop.c
rename to vendor/tclx-8.6.3/generic/tclXcmdloop.c
<span style='display:block; white-space:pre;color:#808080;'>index d7ffc7c77..76f61a8db 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/generic/tclXcmdloop.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/generic/tclXcmdloop.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -72,7 +72,7 @@ static int
</span> TclX_CommandloopObjCmd (ClientData clientData, 
                         Tcl_Interp *interp,
                         int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                        Tcl_Obj *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        Tcl_Obj *const objv[]);
</span> 
 /*-----------------------------------------------------------------------------
  * IsSetVarCmd --
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -665,7 +665,7 @@ TclX_CommandLoop (Tcl_Interp *interp,
</span>  *-----------------------------------------------------------------------------
  */
 static int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclX_CommandloopObjCmd (ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclX_CommandloopObjCmd (ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *const objv[])
</span> {
     int options = 0, async = FALSE, argIdx, interactive;
     char *argStr,  *endCommand = NULL;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclXcoalesce.c b/vendor/tclx-8.6.3/generic/tclXcoalesce.c
</span>similarity index 98%
rename from vendor/tclx-8.6.2/generic/tclXcoalesce.c
rename to vendor/tclx-8.6.3/generic/tclXcoalesce.c
<span style='display:block; white-space:pre;color:#808080;'>index 03986de32..396223420 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/generic/tclXcoalesce.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/generic/tclXcoalesce.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -29,7 +29,7 @@
</span>  *-----------------------------------------------------------------------------
  */
 static int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclX_CoalesceObjCmd (ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclX_CoalesceObjCmd (ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *const objv[])
</span> {
     int i;
     Tcl_Obj *val;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclXdebug.c b/vendor/tclx-8.6.3/generic/tclXdebug.c
</span>similarity index 99%
rename from vendor/tclx-8.6.2/generic/tclXdebug.c
rename to vendor/tclx-8.6.3/generic/tclXdebug.c
<span style='display:block; white-space:pre;color:#808080;'>index 55d469c4c..f3b437a40 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/generic/tclXdebug.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/generic/tclXdebug.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -90,7 +90,7 @@ static int
</span> TclX_CmdtraceObjCmd (ClientData clientData, 
                      Tcl_Interp *interp,
                      int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                     Tcl_Obj *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     Tcl_Obj *const objv[]);
</span> 
 static void
 DebugCleanUp (ClientData  clientData,
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -387,7 +387,7 @@ static int
</span> TclX_CmdtraceObjCmd (ClientData clientData,
                      Tcl_Interp *interp,
                      int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                     Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     Tcl_Obj *const objv[])
</span> {
     traceInfo_pt  infoPtr = (traceInfo_pt) clientData;
     int idx;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclXdup.c b/vendor/tclx-8.6.3/generic/tclXdup.c
</span>similarity index 99%
rename from vendor/tclx-8.6.2/generic/tclXdup.c
rename to vendor/tclx-8.6.3/generic/tclXdup.c
<span style='display:block; white-space:pre;color:#808080;'>index 87ae811d0..2e23d105c 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/generic/tclXdup.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/generic/tclXdup.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -34,7 +34,7 @@ static int
</span> TclX_DupObjCmd (ClientData   clientData,
                 Tcl_Interp  *interp,
                 int          objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                Tcl_Obj     *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                Tcl_Obj     *const objv[]);
</span> 
 
 /*-----------------------------------------------------------------------------
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -193,7 +193,7 @@ static int
</span> TclX_DupObjCmd (ClientData clientData,
                 Tcl_Interp *interp,
                 int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                Tcl_Obj *const objv[])
</span> {
     Tcl_Channel newChannel;
     int bindFnum, fnum;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclXfcntl.c b/vendor/tclx-8.6.3/generic/tclXfcntl.c
</span>similarity index 99%
rename from vendor/tclx-8.6.2/generic/tclXfcntl.c
rename to vendor/tclx-8.6.3/generic/tclXfcntl.c
<span style='display:block; white-space:pre;color:#808080;'>index 68ffd12f9..959fb029e 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/generic/tclXfcntl.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/generic/tclXfcntl.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -85,7 +85,7 @@ static int
</span> TclX_FcntlObjCmd (ClientData clientData, 
                   Tcl_Interp *interp,
                   int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                  Tcl_Obj *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  Tcl_Obj *const objv[]);
</span> 
 
 /*-----------------------------------------------------------------------------
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -279,7 +279,7 @@ static int
</span> TclX_FcntlObjCmd (ClientData clientData,
                   Tcl_Interp *interp,
                   int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                  Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  Tcl_Obj *const objv[])
</span> {
     Tcl_Channel  channel;
     int          mode;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclXfilecmds.c b/vendor/tclx-8.6.3/generic/tclXfilecmds.c
</span>similarity index 97%
rename from vendor/tclx-8.6.2/generic/tclXfilecmds.c
rename to vendor/tclx-8.6.3/generic/tclXfilecmds.c
<span style='display:block; white-space:pre;color:#808080;'>index ae2ca2b83..7f44489c1 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/generic/tclXfilecmds.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/generic/tclXfilecmds.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -39,19 +39,19 @@ static int
</span> TclX_PipeObjCmd (ClientData  clientData,
                  Tcl_Interp *interp,
                  int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                 Tcl_Obj    *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 Tcl_Obj    *const objv[]);
</span> 
 static int
 TclX_FtruncateObjCmd (ClientData  clientData, 
                       Tcl_Interp *interp, 
                       int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                      Tcl_Obj    *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                      Tcl_Obj    *const objv[]);
</span> 
 static int
 TclX_ReaddirObjCmd (ClientData clientData,
                     Tcl_Interp *interp,
                     int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj    *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj    *const objv[]);
</span> 
 
 /*-----------------------------------------------------------------------------
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -67,7 +67,7 @@ static int
</span> TclX_PipeObjCmd (ClientData  clientData,
                  Tcl_Interp *interp,
                  int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                 Tcl_Obj    *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 Tcl_Obj    *const objv[])
</span> {
     Tcl_Channel   channels [2];
     const char *channelNames [2];
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -160,7 +160,7 @@ static int
</span> TclX_FtruncateObjCmd (ClientData clientData,
                       Tcl_Interp *interp,
                       int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                      Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                      Tcl_Obj *const objv[])
</span> {
     int           objIdx, fileIds;
     off_t         newSize;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -247,7 +247,7 @@ static int
</span> TclX_ReaddirObjCmd (ClientData clientData,
                     Tcl_Interp *interp,
                     int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj *const objv[])
</span> {
     Tcl_DString  pathBuf;
     char        *dirPath;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclXfilescan.c b/vendor/tclx-8.6.3/generic/tclXfilescan.c
</span>similarity index 99%
rename from vendor/tclx-8.6.2/generic/tclXfilescan.c
rename to vendor/tclx-8.6.3/generic/tclXfilescan.c
<span style='display:block; white-space:pre;color:#808080;'>index 77358f6d5..759064991 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/generic/tclXfilescan.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/generic/tclXfilescan.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -84,13 +84,13 @@ static int
</span> TclX_ScancontextObjCmd (ClientData  clientData,
                         Tcl_Interp *interp,
                         int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                        Tcl_Obj    *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        Tcl_Obj    *const objv[]);
</span> 
 static int
 TclX_ScanmatchObjCmd (ClientData  clientData,
                       Tcl_Interp *interp,
                       int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                      Tcl_Obj    *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                      Tcl_Obj    *const objv[]);
</span> 
 static void
 CopyFileCloseHandler (ClientData clientData);
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -119,7 +119,7 @@ static int
</span> TclX_ScanfileObjCmd (ClientData  clientData,
                      Tcl_Interp *interp,
                      int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                     Tcl_Obj    *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     Tcl_Obj    *const objv[]);
</span> 
 static void
 FileScanCleanUp (ClientData  clientData,
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -331,7 +331,7 @@ static int
</span> TclX_ScancontextObjCmd (ClientData clientData,
                         Tcl_Interp *interp,
                         int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                        Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        Tcl_Obj *const objv[])
</span> {
     char *subCommand;
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -393,7 +393,7 @@ TclX_ScancontextObjCmd (ClientData clientData,
</span> static int
 TclX_ScanmatchObjCmd (ClientData clientData,
                       Tcl_Interp *interp,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                      int objc, Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                      int objc, Tcl_Obj *const objv[])
</span> {
     scanContext_t  *contextPtr, **tableEntryPtr;
     matchDef_t     *newmatch;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -776,7 +776,7 @@ static int
</span> TclX_ScanfileObjCmd (ClientData clientData,
                      Tcl_Interp *interp,
                      int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                     Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     Tcl_Obj *const objv[])
</span> {
     scanContext_t *contextPtr, **tableEntryPtr;
     Tcl_Obj       *contextHandleObj, *fileHandleObj, *copyFileHandleObj;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclXflock.c b/vendor/tclx-8.6.3/generic/tclXflock.c
</span>similarity index 96%
rename from vendor/tclx-8.6.2/generic/tclXflock.c
rename to vendor/tclx-8.6.3/generic/tclXflock.c
<span style='display:block; white-space:pre;color:#808080;'>index cd5be25ed..45df5d242 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/generic/tclXflock.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/generic/tclXflock.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -25,7 +25,7 @@
</span> static int
 ParseLockUnlockArgs (Tcl_Interp     *interp,
                      int             objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                     Tcl_Obj *CONST  objv[],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     Tcl_Obj *const  objv[],
</span>                      int             argIdx,
                      TclX_FlockInfo *lockInfoPtr);
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -33,13 +33,13 @@ static int
</span> TclX_FlockObjCmd (ClientData clientData, 
                   Tcl_Interp *interp,
                   int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                  Tcl_Obj    *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  Tcl_Obj    *const objv[]);
</span> 
 static int
 TclX_FunlockObjCmd (ClientData clientData, 
                      Tcl_Interp *interp,
                      int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                     Tcl_Obj    *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     Tcl_Obj    *const objv[]);
</span> 
 
 /*-----------------------------------------------------------------------------
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -66,7 +66,7 @@ TclX_FunlockObjCmd (ClientData clientData,
</span> static int
 ParseLockUnlockArgs (Tcl_Interp     *interp,
                      int             objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                     Tcl_Obj *CONST  objv[],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     Tcl_Obj *const  objv[],
</span>                      int             argIdx,
                      TclX_FlockInfo *lockInfoPtr)
 {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -124,7 +124,7 @@ static int
</span> TclX_FlockObjCmd (ClientData clientData, 
                   Tcl_Interp *interp,
                   int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                  Tcl_Obj    *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  Tcl_Obj    *const objv[])
</span> {
     int argIdx;
     TclX_FlockInfo lockInfo;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -208,7 +208,7 @@ static int
</span> TclX_FunlockObjCmd (ClientData clientData, 
                      Tcl_Interp *interp,
                      int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                     Tcl_Obj    *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     Tcl_Obj    *const objv[])
</span> {
     TclX_FlockInfo lockInfo;
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclXfstat.c b/vendor/tclx-8.6.3/generic/tclXfstat.c
</span>similarity index 99%
rename from vendor/tclx-8.6.2/generic/tclXfstat.c
rename to vendor/tclx-8.6.3/generic/tclXfstat.c
<span style='display:block; white-space:pre;color:#808080;'>index 81dfaaf27..f5eddcd8e 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/generic/tclXfstat.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/generic/tclXfstat.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -74,7 +74,7 @@ static int
</span> TclX_FstatObjCmd (ClientData clientData, 
                   Tcl_Interp *interp,
                   int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                  Tcl_Obj *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  Tcl_Obj *const objv[]);
</span> 
 
 /*-----------------------------------------------------------------------------
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -316,7 +316,7 @@ static int
</span> TclX_FstatObjCmd (ClientData clientData, 
                   Tcl_Interp *interp,
                   int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                  Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  Tcl_Obj *const objv[])
</span> {
     Tcl_Channel channel;
     struct stat statBuf;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclXgeneral.c b/vendor/tclx-8.6.3/generic/tclXgeneral.c
</span>similarity index 98%
rename from vendor/tclx-8.6.2/generic/tclXgeneral.c
rename to vendor/tclx-8.6.3/generic/tclXgeneral.c
<span style='display:block; white-space:pre;color:#808080;'>index 204619e4e..6e8f21dd9 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/generic/tclXgeneral.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/generic/tclXgeneral.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -33,19 +33,19 @@ static int
</span> TclX_EchoObjCmd (ClientData clientData, 
                  Tcl_Interp *interp,
                  int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                 Tcl_Obj    *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 Tcl_Obj    *const objv[]);
</span> 
 static int 
 TclX_InfoxObjCmd (ClientData clientData, 
                   Tcl_Interp *interp,
                   int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                  Tcl_Obj    *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  Tcl_Obj    *const objv[]);
</span> 
 static int 
 TclX_LoopObjCmd (ClientData clientData, 
                  Tcl_Interp *interp,
                  int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                 Tcl_Obj    *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 Tcl_Obj    *const objv[]);
</span> 
 static int
 SetLoopCounter (Tcl_Interp *interp,
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -59,7 +59,7 @@ static int
</span> TclX_Try_EvalObjCmd (ClientData clientData, 
                      Tcl_Interp *interp,
                      int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                     Tcl_Obj    *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     Tcl_Obj    *const objv[]);
</span> 
 
 /*-----------------------------------------------------------------------------
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -119,7 +119,7 @@ static int
</span> TclX_EchoObjCmd (ClientData dummy,
                  Tcl_Interp *interp,
                  int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                 Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 Tcl_Obj *const objv[])
</span> {
     int          idx;
     Tcl_Channel channel;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -164,7 +164,7 @@ static int
</span> TclX_InfoxObjCmd (ClientData clientData,
                   Tcl_Interp *interp,
                   int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                  Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  Tcl_Obj *const objv[])
</span> {
     Tcl_Obj *resultPtr = Tcl_GetObjResult (interp);
     char *optionPtr;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -353,7 +353,7 @@ static int
</span> TclX_LoopObjCmd (ClientData dummy,
                  Tcl_Interp *interp,
                  int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                 Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 Tcl_Obj *const objv[])
</span> {
     int result = TCL_OK;
     long idx, first, limit, incr = 1;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -484,7 +484,7 @@ static int
</span> TclX_Try_EvalObjCmd (ClientData  dummy,
                      Tcl_Interp *interp,
                      int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                     Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     Tcl_Obj *const objv[])
</span> {
     int code, code2;
     int haveFinally;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclXhandles.c b/vendor/tclx-8.6.3/generic/tclXhandles.c
</span>similarity index 98%
rename from vendor/tclx-8.6.2/generic/tclXhandles.c
rename to vendor/tclx-8.6.3/generic/tclXhandles.c
<span style='display:block; white-space:pre;color:#808080;'>index 74669c92f..65e549dea 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/generic/tclXhandles.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/generic/tclXhandles.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -102,12 +102,12 @@ AllocEntry (tblHeader_pt  tblHdrPtr,
</span> static int
 HandleDecodeObj (Tcl_Interp   *interp,
                  tblHeader_pt  tblHdrPtr,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                 CONST char   *handle);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 const char   *handle);
</span> 
 static int
 HandleDecode (Tcl_Interp   *interp,
               tblHeader_pt  tblHdrPtr,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-              CONST char   *handle);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              const char   *handle);
</span> 
 
 /*=============================================================================
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -221,7 +221,7 @@ AllocEntry (tblHeader_pt  tblHdrPtr,
</span>  *-----------------------------------------------------------------------------
  */
 static int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-HandleDecode (Tcl_Interp *interp, tblHeader_pt tblHdrPtr, CONST char *handle)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+HandleDecode (Tcl_Interp *interp, tblHeader_pt tblHdrPtr, const char *handle)
</span> {
     unsigned entryIdx;
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -255,7 +255,7 @@ HandleDecode (Tcl_Interp *interp, tblHeader_pt tblHdrPtr, CONST char *handle)
</span> static int
 HandleDecodeObj (Tcl_Interp   *interp,
                  tblHeader_pt  tblHdrPtr,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                 CONST char   *handle)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 const char   *handle)
</span> {
     unsigned entryIdx;
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -284,7 +284,7 @@ HandleDecodeObj (Tcl_Interp   *interp,
</span>  *-----------------------------------------------------------------------------
  */
 void_pt
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclX_HandleTblInit (CONST char *handleBase, int entrySize, int initEntries)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclX_HandleTblInit (const char *handleBase, int entrySize, int initEntries)
</span> {
     tblHeader_pt tblHdrPtr;
     int          baseLength = strlen ((char *) handleBase);
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -407,7 +407,7 @@ TclX_HandleAlloc (void_pt headerPtr, char *handlePtr)
</span>  *-----------------------------------------------------------------------------
  */
 void_pt
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclX_HandleXlate (Tcl_Interp *interp, void_pt headerPtr, CONST char *handle)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclX_HandleXlate (Tcl_Interp *interp, void_pt headerPtr, const char *handle)
</span> {
     tblHeader_pt   tblHdrPtr = (tblHeader_pt)headerPtr;
     entryHeader_pt entryHdrPtr;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclXinit.c b/vendor/tclx-8.6.3/generic/tclXinit.c
</span>similarity index 100%
rename from vendor/tclx-8.6.2/generic/tclXinit.c
rename to vendor/tclx-8.6.3/generic/tclXinit.c
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclXkeylist.c b/vendor/tclx-8.6.3/generic/tclXkeylist.c
</span>similarity index 98%
rename from vendor/tclx-8.6.2/generic/tclXkeylist.c
rename to vendor/tclx-8.6.3/generic/tclXkeylist.c
<span style='display:block; white-space:pre;color:#808080;'>index f8a82e7a4..8034e0df1 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/generic/tclXkeylist.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/generic/tclXkeylist.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -145,25 +145,25 @@ static int
</span> TclX_KeylgetObjCmd (ClientData   clientData,
                     Tcl_Interp  *interp,
                     int             objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj         *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj            *const objv[]);
</span> 
 static int
 TclX_KeylsetObjCmd (ClientData   clientData,
                     Tcl_Interp  *interp,
                     int             objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj         *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj            *const objv[]);
</span> 
 static int 
 TclX_KeyldelObjCmd (ClientData   clientData,
                     Tcl_Interp  *interp,
                     int             objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj         *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj            *const objv[]);
</span> 
 static int 
 TclX_KeylkeysObjCmd (ClientData   clientData,
                      Tcl_Interp  *interp,
                      int             objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                     Tcl_Obj     *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     Tcl_Obj     *const objv[]);
</span> 
 /*
  * Type definition.
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -247,7 +247,7 @@ ValidateKey (Tcl_Interp *interp, char *key, int keyLen)
</span>  *-----------------------------------------------------------------------------
  */
 static keylIntObj_t *
<span style='display:block; white-space:pre;background:#ffe0e0;'>-AllocKeyedListIntRep ()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+AllocKeyedListIntRep (void)
</span> {
     keylIntObj_t *keylIntPtr;
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -674,7 +674,7 @@ UpdateStringOfKeyedList (Tcl_Obj *keylPtr)
</span>  *-----------------------------------------------------------------------------
  */
 Tcl_Obj *
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclX_NewKeyedListObj ()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclX_NewKeyedListObj (void)
</span> {
     Tcl_Obj *keylPtr = Tcl_NewObj ();
     keylIntObj_t *keylIntPtr = AllocKeyedListIntRep ();
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1008,7 +1008,7 @@ static int
</span> TclX_KeylgetObjCmd (ClientData      clientData,
                     Tcl_Interp     *interp,
                     int             objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj *const objv[])
</span> {
     Tcl_Obj *keylPtr, *valuePtr;
     char *key;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1086,7 +1086,7 @@ static int
</span> TclX_KeylsetObjCmd (ClientData     clientData,
                     Tcl_Interp    *interp,
                     int            objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj *const objv[])
</span> {
     Tcl_Obj *keylVarPtr, *newVarObj;
     char *key;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1145,7 +1145,7 @@ static int
</span> TclX_KeyldelObjCmd (ClientData  clientData,
                     Tcl_Interp *interp,
                     int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj    *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj    *const objv[])
</span> {
     Tcl_Obj *keylVarPtr, *keylPtr;
     char *key;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1206,7 +1206,7 @@ static int
</span> TclX_KeylkeysObjCmd (ClientData   clientData,
                      Tcl_Interp  *interp,
                      int          objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                     Tcl_Obj     *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     Tcl_Obj     *const objv[])
</span> {
     Tcl_Obj *keylPtr, *listObjPtr;
     char *key;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclXlgets.c b/vendor/tclx-8.6.3/generic/tclXlgets.c
</span>similarity index 99%
rename from vendor/tclx-8.6.2/generic/tclXlgets.c
rename to vendor/tclx-8.6.3/generic/tclXlgets.c
<span style='display:block; white-space:pre;color:#808080;'>index 4ce6bba63..554fa7e2a 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/generic/tclXlgets.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/generic/tclXlgets.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -57,7 +57,7 @@ static int
</span> TclX_LgetsObjCmd (ClientData  clientData, 
                  Tcl_Interp  *interp, 
                  int          objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                 Tcl_Obj     *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 Tcl_Obj     *const objv[]);
</span> 
 
 /*-----------------------------------------------------------------------------
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -409,7 +409,7 @@ static int
</span> TclX_LgetsObjCmd (ClientData  clientData, 
                  Tcl_Interp  *interp, 
                  int          objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                 Tcl_Obj     *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 Tcl_Obj     *const objv[])
</span> {
     Tcl_Channel channel;
     ReadData readData;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclXlib.c b/vendor/tclx-8.6.3/generic/tclXlib.c
</span>similarity index 99%
rename from vendor/tclx-8.6.2/generic/tclXlib.c
rename to vendor/tclx-8.6.3/generic/tclXlib.c
<span style='display:block; white-space:pre;color:#808080;'>index 0903fe048..9fe4dad0a 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/generic/tclXlib.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/generic/tclXlib.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -127,19 +127,19 @@ static int
</span> TclX_load_tndxsObjCmd (ClientData  clientData,
                        Tcl_Interp *interp,
                        int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                       Tcl_Obj    *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                       Tcl_Obj    *const objv[]);
</span>                                    
 static int
 TclX_Auto_load_pkgObjCmd (ClientData clientData, 
                           Tcl_Interp *interp,
                           int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                          Tcl_Obj *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                          Tcl_Obj *const objv[]);
</span> 
 static int
 TclX_LoadlibindexObjCmd (ClientData clientData, 
                          Tcl_Interp *interp,
                          int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                         Tcl_Obj *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                         Tcl_Obj *const objv[]);
</span> 
 
 /*-----------------------------------------------------------------------------
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -855,7 +855,7 @@ static int
</span> TclX_load_tndxsObjCmd (ClientData  clientData,
                        Tcl_Interp *interp,
                        int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                       Tcl_Obj    *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                       Tcl_Obj    *const objv[])
</span> {
     char *dirname;
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -879,7 +879,7 @@ static int
</span> TclX_Auto_load_pkgObjCmd (ClientData clientData, 
                           Tcl_Interp *interp,
                           int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                          Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                          Tcl_Obj *const objv[])
</span> {
     char     *fileName;
     off_t     offset;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -915,7 +915,7 @@ static int
</span> TclX_LoadlibindexObjCmd (ClientData clientData, 
                          Tcl_Interp *interp,
                          int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                         Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                         Tcl_Obj *const objv[])
</span> {
     char        *pathName;
     Tcl_DString  pathNameBuf;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclXlist.c b/vendor/tclx-8.6.3/generic/tclXlist.c
</span>similarity index 96%
rename from vendor/tclx-8.6.2/generic/tclXlist.c
rename to vendor/tclx-8.6.3/generic/tclXlist.c
<span style='display:block; white-space:pre;color:#808080;'>index ab5d0e9a0..b313a4aed 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/generic/tclXlist.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/generic/tclXlist.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -26,43 +26,43 @@ static int
</span> TclX_LvarcatObjCmd (ClientData   clientData,
                     Tcl_Interp  *interp,
                     int          objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj     *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj     *const objv[]);
</span> 
 static int
 TclX_LvarpopObjCmd (ClientData   clientData,
                     Tcl_Interp  *interp,
                     int          objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj    *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj    *const objv[]);
</span> 
 static int
 TclX_LvarpushObjCmd (ClientData   clientData,
                      Tcl_Interp  *interp,
                      int          objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                     Tcl_Obj    *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     Tcl_Obj    *const objv[]);
</span> 
 static int
 TclX_LemptyObjCmd (ClientData   clientData,
                    Tcl_Interp  *interp,
                    int          objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                   Tcl_Obj    *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   Tcl_Obj    *const objv[]);
</span> 
 static int
 TclX_LassignObjCmd (ClientData   clientData,
                     Tcl_Interp  *interp,
                     int          objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj    *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj    *const objv[]);
</span> 
 static int
 TclX_LmatchObjCmd (ClientData   clientData,
                    Tcl_Interp  *interp,
                    int          objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                   Tcl_Obj    *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   Tcl_Obj    *const objv[]);
</span> 
 static int
 TclX_LcontainObjCmd (ClientData   clientData,
                      Tcl_Interp  *interp,
                      int          objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                     Tcl_Obj    *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     Tcl_Obj    *const objv[]);
</span> 
 
 /*-----------------------------------------------------------------------------
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -75,7 +75,7 @@ static int
</span> TclX_LvarcatObjCmd (ClientData   clientData,
                     Tcl_Interp  *interp,
                     int          objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj     *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj     *const objv[])
</span> {
     Tcl_Obj *varObjPtr, *newObjPtr;
     int catObjc, idx, argIdx;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -138,7 +138,7 @@ static int
</span> TclX_LvarpopObjCmd (ClientData   clientData,
                     Tcl_Interp  *interp,
                     int          objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj    *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj    *const objv[])
</span> {
     Tcl_Obj *listVarPtr, *newVarObj, *returnElemPtr = NULL;
     int listIdx, listLen;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -233,7 +233,7 @@ static int
</span> TclX_LvarpushObjCmd (ClientData   clientData,
                      Tcl_Interp  *interp,
                      int          objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                     Tcl_Obj    *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     Tcl_Obj    *const objv[])
</span> {
     Tcl_Obj *listVarPtr, *newVarObj;
     int listIdx, listLen;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -304,7 +304,7 @@ static int
</span> TclX_LemptyObjCmd (ClientData   clientData,
                    Tcl_Interp  *interp,
                    int          objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                   Tcl_Obj    *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   Tcl_Obj    *const objv[])
</span> {
     int length;
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -343,7 +343,7 @@ static int
</span> TclX_LassignObjCmd (ClientData   clientData,
                     Tcl_Interp  *interp,
                     int          objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj    *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj    *const objv[])
</span> {
     int listObjc, listIdx, idx, remaining;
     Tcl_Obj **listObjv, *elemPtr, *remainingObjPtr;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -405,7 +405,7 @@ static int
</span> TclX_LmatchObjCmd (ClientData   clientData,
                    Tcl_Interp  *interp,
                    int          objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                   Tcl_Obj    *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   Tcl_Obj    *const objv[])
</span> {
 #define EXACT   0
 #define GLOB    1
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -502,7 +502,7 @@ static int
</span> TclX_LcontainObjCmd (ClientData   clientData,
                      Tcl_Interp  *interp,
                      int          objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                     Tcl_Obj    *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     Tcl_Obj    *const objv[])
</span> {
     int listObjc, idx;
     Tcl_Obj **listObjv;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclXmath.c b/vendor/tclx-8.6.3/generic/tclXmath.c
</span>similarity index 96%
rename from vendor/tclx-8.6.2/generic/tclXmath.c
rename to vendor/tclx-8.6.3/generic/tclXmath.c
<span style='display:block; white-space:pre;color:#808080;'>index fddc4d612..4e8e73aaf 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/generic/tclXmath.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/generic/tclXmath.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -56,12 +56,12 @@ static long     ReallyRandom (long my_range);
</span> static int        TclX_MaxObjCmd (ClientData clientData,
                             Tcl_Interp *interp,
                             int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                            Tcl_Obj    *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            Tcl_Obj    *const objv[]);
</span> 
 static int     TclX_MinObjCmd (ClientData  clientData,
                             Tcl_Interp *interp,
                             int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                            Tcl_Obj    *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            Tcl_Obj    *const objv[]);
</span> 
 static int     TclX_MinMaxFunc (ClientData   clientData,
                              Tcl_Interp  *interp,
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -71,7 +71,7 @@ static int     TclX_MinMaxFunc (ClientData   clientData,
</span> static int        TclX_RandomObjCmd (ClientData  clientData,
                                Tcl_Interp *interp,
                                               int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                               Tcl_Obj     *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                               Tcl_Obj     *const objv[]);
</span> 
 
 /*-----------------------------------------------------------------------------
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -126,7 +126,7 @@ static int   ConvertIntOrDoubleObj (Tcl_Interp *interp,
</span> static int        TclX_MaxObjCmd (ClientData clientData,
                             Tcl_Interp *interp,
                             int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                            Tcl_Obj    *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            Tcl_Obj    *const objv[])
</span> {
     double value, maxValue = -MAXDOUBLE;
     int idx, maxIdx = 1;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -158,7 +158,7 @@ static int   TclX_MaxObjCmd (ClientData clientData,
</span> static int        TclX_MinObjCmd (ClientData  clientData,
                             Tcl_Interp *interp,
                             int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                            Tcl_Obj    *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            Tcl_Obj    *const objv[])
</span> {
     double value, minValue = MAXDOUBLE;
     int idx, minIdx   = 1;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -279,7 +279,7 @@ ReallyRandom (long myRange)
</span> static int        TclX_RandomObjCmd (ClientData  clientData,
                                Tcl_Interp *interp,
                                               int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                               Tcl_Obj     *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                               Tcl_Obj     *const objv[])
</span> {
     long range;
     char *seedString;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclXmsgcat.c b/vendor/tclx-8.6.3/generic/tclXmsgcat.c
</span>similarity index 96%
rename from vendor/tclx-8.6.2/generic/tclXmsgcat.c
rename to vendor/tclx-8.6.3/generic/tclXmsgcat.c
<span style='display:block; white-space:pre;color:#808080;'>index f7a337b69..e081b6ceb 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/generic/tclXmsgcat.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/generic/tclXmsgcat.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -36,25 +36,25 @@ ParseFailOptionObj (Tcl_Interp *interp,
</span> 
 static int
 CatOpFailedObj (Tcl_Interp *interp,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                CONST char *errorMsg);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                const char *errorMsg);
</span> 
 static int
 TclX_CatopenObjCmd (ClientData  clientData,
                     Tcl_Interp *interp,
                     int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj   *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj   *const objv[]);
</span> 
 static int
 TclX_CatgetsObjCmd (ClientData  clientData,
                     Tcl_Interp *interp,
                     int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj   *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj   *const objv[]);
</span> 
 static int
 TclX_CatcloseObjCmd (ClientData  clientData,
                      Tcl_Interp *interp,
                      int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                     Tcl_Obj   *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     Tcl_Obj   *const objv[]);
</span> 
 static void
 MsgCatCleanUp (ClientData  clientData,
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -147,7 +147,7 @@ ParseFailOptionObj (Tcl_Interp *interp,
</span>  */
 static int
 CatOpFailedObj (Tcl_Interp *interp,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                CONST char *errorMsg)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                const char *errorMsg)
</span> {
 #ifndef NO_CATGETS
     TclX_AppendObjResult (interp, errorMsg, (char *) NULL);
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -172,7 +172,7 @@ static int
</span> TclX_CatopenObjCmd (ClientData  clientData,
                     Tcl_Interp *interp,
                     int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj   *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj   *const objv[])
</span> {
     int      fail;
     nl_catd  catDesc;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -212,7 +212,7 @@ static int
</span> TclX_CatgetsObjCmd (ClientData  clientData,
                     Tcl_Interp *interp,
                     int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj   *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj   *const objv[])
</span> {
     nl_catd   *catDescPtr;
     int       msgSetNum, msgNum;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -267,7 +267,7 @@ static int
</span> TclX_CatcloseObjCmd (ClientData  clientData,
                      Tcl_Interp *interp,
                      int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                     Tcl_Obj   *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     Tcl_Obj   *const objv[])
</span> {
     int          fail;
     nl_catd     *catDescPtr;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclXoscmds.c b/vendor/tclx-8.6.3/generic/tclXoscmds.c
</span>similarity index 95%
rename from vendor/tclx-8.6.2/generic/tclXoscmds.c
rename to vendor/tclx-8.6.3/generic/tclXoscmds.c
<span style='display:block; white-space:pre;color:#808080;'>index 5d242792a..83c6f22eb 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/generic/tclXoscmds.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/generic/tclXoscmds.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -23,43 +23,43 @@ static int
</span> TclX_AlarmObjCmd (ClientData clientData,
                   Tcl_Interp *interp,
                   int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                  Tcl_Obj *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  Tcl_Obj *const objv[]);
</span> 
 static int 
 TclX_LinkObjCmd (ClientData clientData,
                  Tcl_Interp *interp,
                  int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                 Tcl_Obj *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 Tcl_Obj *const objv[]);
</span> 
 static int 
 TclX_NiceObjCmd (ClientData clientData,
                  Tcl_Interp *interp,
                  int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                 Tcl_Obj *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 Tcl_Obj *const objv[]);
</span> 
 static int 
 TclX_SleepObjCmd (ClientData clientData,
                   Tcl_Interp *interp,
                   int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                  Tcl_Obj *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  Tcl_Obj *const objv[]);
</span> 
 static int 
 TclX_SyncObjCmd (ClientData clientData,
                  Tcl_Interp *interp,
                  int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                 Tcl_Obj *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 Tcl_Obj *const objv[]);
</span> 
 static int 
 TclX_SystemObjCmd (ClientData clientData,
                    Tcl_Interp *interp,
                    int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                   Tcl_Obj *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   Tcl_Obj *const objv[]);
</span> 
 static int 
 TclX_UmaskObjCmd (ClientData clientData,
                   Tcl_Interp *interp,
                   int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                  Tcl_Obj *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  Tcl_Obj *const objv[]);
</span> 
 
 /*-----------------------------------------------------------------------------
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -76,7 +76,7 @@ static int
</span> TclX_AlarmObjCmd (ClientData clientData,
                   Tcl_Interp *interp,
                   int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                  Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  Tcl_Obj *const objv[])
</span> {
     double seconds;
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -106,7 +106,7 @@ static int
</span> TclX_LinkObjCmd (ClientData clientData,
                  Tcl_Interp *interp,
                  int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                 Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 Tcl_Obj *const objv[])
</span> {
     char *srcPath, *destPath;
     Tcl_DString  srcPathBuf, destPathBuf;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -175,7 +175,7 @@ static int
</span> TclX_NiceObjCmd (ClientData clientData,
                  Tcl_Interp *interp,
                  int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                 Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 Tcl_Obj *const objv[])
</span> {
     Tcl_Obj    *resultPtr = Tcl_GetObjResult (interp);
     int         priorityIncr, priority;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -224,7 +224,7 @@ static int
</span> TclX_SleepObjCmd (ClientData clientData,
                   Tcl_Interp *interp,
                   int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                  Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  Tcl_Obj *const objv[])
</span> {
     double time;
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -252,7 +252,7 @@ static int
</span> TclX_SyncObjCmd (ClientData clientData,
                  Tcl_Interp *interp,
                  int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                 Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 Tcl_Obj *const objv[])
</span> {
     Tcl_Channel  channel;
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -286,7 +286,7 @@ static int
</span> TclX_SystemObjCmd (ClientData clientData,
                    Tcl_Interp *interp,
                    int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                   Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   Tcl_Obj *const objv[])
</span> {
     Tcl_Obj *cmdObjPtr;
     char *cmdStr;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -321,7 +321,7 @@ static int
</span> TclX_UmaskObjCmd (ClientData clientData,
                   Tcl_Interp *interp,
                   int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                  Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  Tcl_Obj *const objv[])
</span> {
     int    mask;
     char  *umaskString;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclXprocess.c b/vendor/tclx-8.6.3/generic/tclXprocess.c
</span>similarity index 97%
rename from vendor/tclx-8.6.2/generic/tclXprocess.c
rename to vendor/tclx-8.6.3/generic/tclXprocess.c
<span style='display:block; white-space:pre;color:#808080;'>index c81ab1990..7940c3159 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/generic/tclXprocess.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/generic/tclXprocess.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -32,19 +32,19 @@ static int
</span> TclX_ExeclObjCmd (ClientData clientData,
                   Tcl_Interp *interp,
                   int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                  Tcl_Obj *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  Tcl_Obj *const objv[]);
</span> 
 static int 
 TclX_ForkObjCmd (ClientData clientData,
                  Tcl_Interp *interp,
                  int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                 Tcl_Obj *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 Tcl_Obj *const objv[]);
</span> 
 static int 
 TclX_WaitObjCmd (ClientData clientData,
                  Tcl_Interp *interp,
                  int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                 Tcl_Obj *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 Tcl_Obj *const objv[]);
</span> 
 
 /*-----------------------------------------------------------------------------
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -57,7 +57,7 @@ static int
</span> TclX_ForkObjCmd (ClientData clientData,
                  Tcl_Interp *interp,
                  int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                 Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 Tcl_Obj *const objv[])
</span> {
     if (objc != 1)
        return TclX_WrongArgs (interp, objv [0], "");
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -75,7 +75,7 @@ static int
</span> TclX_ExeclObjCmd (ClientData clientData,
                   Tcl_Interp *interp,
                   int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                  Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  Tcl_Obj *const objv[])
</span> {
 #define STATIC_ARG_SIZE   12
     char  *staticArgv [STATIC_ARG_SIZE];
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -163,7 +163,7 @@ static int
</span> TclX_WaitObjCmd (ClientData clientData,
                  Tcl_Interp *interp,
                  int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                 Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 Tcl_Obj *const objv[])
</span> {
     int idx, options = 0, pgroup = FALSE;
     char *argStr;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclXprofile.c b/vendor/tclx-8.6.3/generic/tclXprofile.c
</span>similarity index 99%
rename from vendor/tclx-8.6.2/generic/tclXprofile.c
rename to vendor/tclx-8.6.3/generic/tclXprofile.c
<span style='display:block; white-space:pre;color:#808080;'>index 061a0a375..9ea6e7be1 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/generic/tclXprofile.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/generic/tclXprofile.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -126,7 +126,7 @@ static int
</span> ProfObjCommandEval (ClientData    clientData,
                     Tcl_Interp   *interp,
                     int           objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj      *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj      *const objv[]);
</span> 
 static Tcl_CmdObjTraceProc ProfTraceRoutine;
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -154,7 +154,7 @@ static int
</span> TclX_ProfileObjCmd (ClientData   clientData,
                     Tcl_Interp  *interp,
                     int          objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj    *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj    *const objv[]);
</span> 
 static void
 ProfMonCleanUp (ClientData  clientData,
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -320,8 +320,7 @@ RecordData (profInfo_t  *infoPtr,
</span>  *-----------------------------------------------------------------------------
  */
 static void
<span style='display:block; white-space:pre;background:#ffe0e0;'>-PopEntry (infoPtr)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    profInfo_t *infoPtr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PopEntry (profInfo_t *infoPtr)
</span> {
     profEntry_t *entryPtr = infoPtr->stackPtr;
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -535,7 +534,7 @@ static int
</span> ProfObjCommandEval (ClientData    clientData,
                     Tcl_Interp   *interp,
                     int           objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj      *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj      *const objv[])
</span> {
     profInfo_t *infoPtr = (profInfo_t *) clientData;
     int isProc, result;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -562,7 +561,7 @@ ProfTraceRoutine (ClientData  clientData,
</span>                   const char *command,
                   Tcl_Command cmd,
                   int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                  Tcl_Obj    *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  Tcl_Obj    *const objv[])
</span> {
     /* struct Tcl_Obj * const *objv; */
     profInfo_t *infoPtr = (profInfo_t *) clientData;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -802,7 +801,7 @@ static int
</span> TclX_ProfileObjCmd (ClientData   clientData,
                     Tcl_Interp  *interp,
                     int          objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj    *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj    *const objv[])
</span> {
     profInfo_t *infoPtr = (profInfo_t *) clientData;
     int argIdx;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclXselect.c b/vendor/tclx-8.6.3/generic/tclXselect.c
</span>similarity index 99%
rename from vendor/tclx-8.6.2/generic/tclXselect.c
rename to vendor/tclx-8.6.3/generic/tclXselect.c
<span style='display:block; white-space:pre;color:#808080;'>index 137c552df..541c0574e 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/generic/tclXselect.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/generic/tclXselect.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -80,7 +80,7 @@ static int
</span> TclX_SelectObjCmd (ClientData clientData, 
                    Tcl_Interp *interp,
                    int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                   Tcl_Obj *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   Tcl_Obj *const objv[]);
</span> 
 
 /*-----------------------------------------------------------------------------
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -275,7 +275,7 @@ static int
</span> TclX_SelectObjCmd (ClientData clientData, 
                    Tcl_Interp *interp,
                    int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                   Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   Tcl_Obj *const objv[])
</span> {
     static int chanAccess [] = {TCL_READABLE, TCL_WRITABLE, 0};
     int idx;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -406,7 +406,7 @@ TclX_SelectObjCmd (clientData, interp, objc, objv)
</span>     ClientData   clientData;
     Tcl_Interp  *interp;
     int          objc;
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Obj     *CONST objv[]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    Tcl_Obj     *const objv[]
</span> {
     Tcl_AppendResult(interp, Tcl_GetString(objv[0]),
            " is not available on this OS", (char *) NULL);
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclXsignal.c b/vendor/tclx-8.6.3/generic/tclXsignal.c
</span>similarity index 99%
rename from vendor/tclx-8.6.2/generic/tclXsignal.c
rename to vendor/tclx-8.6.3/generic/tclXsignal.c
<span style='display:block; white-space:pre;color:#808080;'>index 0bb28176a..353e74126 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/generic/tclXsignal.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/generic/tclXsignal.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -52,7 +52,7 @@
</span>  * Value returned by Tcl_SignalId when an invalid signal is passed in.
  * Pointer is used as a quick check of a valid signal number.
  */
<span style='display:block; white-space:pre;background:#ffe0e0;'>-static CONST char *unknownSignalIdMsg;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+static const char *unknownSignalIdMsg;
</span> 
 /*
  * Signal name table maps name to number.  Note, it is possible to have
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -327,13 +327,13 @@ static int
</span> TclX_SignalObjCmd (ClientData   clientData,
                    Tcl_Interp  *interp,
                    int          objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                   Tcl_Obj     *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   Tcl_Obj     *const objv[]);
</span> 
 static int
 TclX_KillObjCmd (ClientData   clientData,
                  Tcl_Interp  *interp,
                  int          objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                 Tcl_Obj     *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 Tcl_Obj     *const objv[]);
</span> 
 
 /*-----------------------------------------------------------------------------
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -485,7 +485,7 @@ BlockSignals (Tcl_Interp *interp, int action, unsigned char signals[MAXSIG])
</span> #else
     TclX_AppendObjResult (interp,
                           "Posix signals are not available on this system, ",
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                          "can not block signals");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                          "can not block signals", (char *) NULL);
</span>     return TCL_ERROR;
 #endif
 }
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1311,7 +1311,7 @@ static int
</span> TclX_SignalObjCmd (ClientData   clientData,
                    Tcl_Interp  *interp,
                    int          objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                   Tcl_Obj     *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   Tcl_Obj     *const objv[])
</span> {
     unsigned char signals [MAXSIG];
     char *argStr, *actionStr;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1328,7 +1328,7 @@ TclX_SignalObjCmd (ClientData   clientData,
</span>             restart = TRUE;
         } else {
             TclX_AppendObjResult(interp, "invalid option \"", argStr,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                                 "\", expected -restart", NULL);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                 "\", expected -restart", (char *) NULL);
</span>             return TCL_ERROR;
         }
         firstArg++;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1342,7 +1342,7 @@ TclX_SignalObjCmd (ClientData   clientData,
</span> #ifdef NO_SIG_RESTART
     if (restart) {
         TclX_AppendObjResult(interp, "restarting of system calls from signals is not available on this system",
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                             NULL);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                             (char *) NULL);
</span>         return TCL_ERROR;
     }
 #endif
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1451,7 +1451,7 @@ static int
</span> TclX_KillObjCmd (ClientData   clientData,
                  Tcl_Interp  *interp,
                  int          objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                 Tcl_Obj     *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 Tcl_Obj     *const objv[])
</span> {
     int    signalNum, nextArg, idx, procId, procObjc;
     int    pgroup = FALSE;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1572,7 +1572,7 @@ SignalCmdCleanUp (ClientData clientData, Tcl_Interp *interp)
</span>  *-----------------------------------------------------------------------------
  */
 void
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclX_SetupSigInt ()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclX_SetupSigInt (void)
</span> {
     signalProcPtr_t  actionFunc;
     int restart;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclXsocket.c b/vendor/tclx-8.6.3/generic/tclXsocket.c
</span>similarity index 97%
rename from vendor/tclx-8.6.2/generic/tclXsocket.c
rename to vendor/tclx-8.6.3/generic/tclXsocket.c
<span style='display:block; white-space:pre;color:#808080;'>index 019c92f2a..1b45ba507 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/generic/tclXsocket.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/generic/tclXsocket.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -28,13 +28,13 @@ ReturnGetHostError (Tcl_Interp *interp,
</span> static struct hostent *
 InfoGetHost (Tcl_Interp *interp,
              int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-             Tcl_Obj   *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             Tcl_Obj   *const objv[]);
</span> 
 static int
 TclX_HostInfoObjCmd (ClientData  clientData,
                     Tcl_Interp *interp,
                     int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj   *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj   *const objv[]);
</span> 
 
 /*-----------------------------------------------------------------------------
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -106,7 +106,7 @@ TclXGetHostInfo (Tcl_Interp *interp, Tcl_Channel channel, int remoteHost)
</span> {
     struct sockaddr_in sockaddr;
     struct hostent *hostEntry;
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    CONST char *hostName;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    const char *hostName;
</span>     Tcl_Obj *listObjv [3];
 
     if (remoteHost) {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -150,7 +150,7 @@ TclXGetHostInfo (Tcl_Interp *interp, Tcl_Channel channel, int remoteHost)
</span>  *-----------------------------------------------------------------------------
  */
 static struct hostent *
<span style='display:block; white-space:pre;background:#ffe0e0;'>-InfoGetHost (Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+InfoGetHost (Tcl_Interp *interp, int objc, Tcl_Obj *const objv[])
</span> {
     struct hostent *hostEntry;
     struct in_addr address;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -194,7 +194,7 @@ static int
</span> TclX_HostInfoObjCmd (ClientData  clientData,
                     Tcl_Interp *interp,
                     int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj   *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj   *const objv[])
</span> {
     struct hostent *hostEntry;
     struct in_addr  inAddr;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclXstring.c b/vendor/tclx-8.6.3/generic/tclXstring.c
</span>similarity index 96%
rename from vendor/tclx-8.6.2/generic/tclXstring.c
rename to vendor/tclx-8.6.3/generic/tclXstring.c
<span style='display:block; white-space:pre;color:#808080;'>index 76ab80a8f..103d8ae68 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/generic/tclXstring.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/generic/tclXstring.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -40,61 +40,61 @@ static int
</span> TclX_CindexObjCmd (ClientData clientData,
                    Tcl_Interp *interp,
                    int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                   Tcl_Obj   *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   Tcl_Obj   *const objv[]);
</span> 
 static int 
 TclX_ClengthObjCmd (ClientData clientData,
                     Tcl_Interp *interp,
                     int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj   *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj   *const objv[]);
</span> 
 static int
 TclX_CconcatObjCmd (ClientData clientData,
                     Tcl_Interp *interp,
                     int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj   *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj   *const objv[]);
</span> 
 static int 
 TclX_CrangeObjCmd (ClientData clientData,
                    Tcl_Interp *interp,
                    int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                   Tcl_Obj   *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   Tcl_Obj   *const objv[]);
</span> 
 static int 
 TclX_CcollateObjCmd (ClientData clientData,
                      Tcl_Interp *interp,
                      int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                     Tcl_Obj   *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     Tcl_Obj   *const objv[]);
</span> 
 static int 
 TclX_ReplicateObjCmd (ClientData clientData,
                       Tcl_Interp *interp,
                       int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                      Tcl_Obj   *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                      Tcl_Obj   *const objv[]);
</span> 
 static int 
 TclX_TranslitObjCmd (ClientData clientData,
                      Tcl_Interp *interp,
                      int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                     Tcl_Obj   *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     Tcl_Obj   *const objv[]);
</span> 
 static int 
 TclX_CtypeObjCmd (ClientData clientData,
                   Tcl_Interp *interp,
                   int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                  Tcl_Obj   *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  Tcl_Obj   *const objv[]);
</span> 
 static int 
 TclX_CtokenObjCmd (ClientData clientData,
                    Tcl_Interp *interp,
                    int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                   Tcl_Obj   *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   Tcl_Obj   *const objv[]);
</span> 
 static int 
 TclX_CequalObjCmd (ClientData clientData,
                    Tcl_Interp *interp,
                    int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                   Tcl_Obj   *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   Tcl_Obj   *const objv[]);
</span> 
 
 /*-----------------------------------------------------------------------------
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -110,7 +110,7 @@ static int
</span> TclX_CindexObjCmd (ClientData clientData,
                    Tcl_Interp *interp,
                    int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                   Tcl_Obj   *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   Tcl_Obj   *const objv[])
</span> {
     int strLen, utfLen, idx, numBytes;
     char *str, buf [TCL_UTF_MAX];
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -147,7 +147,7 @@ static int
</span> TclX_ClengthObjCmd (ClientData clientData,
                     Tcl_Interp *interp,
                     int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj   *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj   *const objv[])
</span> {
     char *str;
     int strLen;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -174,7 +174,7 @@ static int
</span> TclX_CconcatObjCmd (ClientData clientData,
                     Tcl_Interp *interp,
                     int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    Tcl_Obj   *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Tcl_Obj   *const objv[])
</span> {
     Tcl_Obj *resultPtr = Tcl_GetObjResult(interp);
     int idx, strLen;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -203,7 +203,7 @@ static int
</span> TclX_CrangeObjCmd (ClientData clientData,
                    Tcl_Interp *interp,
                    int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                   Tcl_Obj   *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   Tcl_Obj   *const objv[])
</span> {
     int strLen, utfLen, first, subLen;
     size_t isRange = (size_t) clientData;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -262,7 +262,7 @@ static int
</span> TclX_CcollateObjCmd (ClientData clientData,
                      Tcl_Interp *interp,
                      int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                     Tcl_Obj   *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     Tcl_Obj   *const objv[])
</span> {
     int argIndex, result, local = FALSE;
     char *optionString;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -323,7 +323,7 @@ static int
</span> TclX_ReplicateObjCmd (ClientData clientData,
                       Tcl_Interp *interp,
                       int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                      Tcl_Obj   *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                      Tcl_Obj   *const objv[])
</span> {
     Tcl_Obj     *resultPtr = Tcl_GetObjResult (interp);
     long         count;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -359,7 +359,7 @@ static int
</span> TclX_CtokenObjCmd (ClientData clientData,
                    Tcl_Interp *interp,
                    int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                   Tcl_Obj   *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   Tcl_Obj   *const objv[])
</span> {
     Tcl_Obj* stringVarObj;
     char* string;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -439,7 +439,7 @@ static int
</span> TclX_CequalObjCmd (ClientData clientData,
                    Tcl_Interp *interp,
                    int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                   Tcl_Obj   *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   Tcl_Obj   *const objv[])
</span> {
     char *string1Ptr;
     int string1Len;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -537,7 +537,7 @@ static int
</span> TclX_TranslitObjCmd (ClientData clientData,
                      Tcl_Interp *interp,
                      int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                     Tcl_Obj   *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     Tcl_Obj   *const objv[])
</span> {
     unsigned char from [MAX_EXPANSION+1];
     int           fromLen;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -652,7 +652,7 @@ static int
</span> TclX_CtypeObjCmd (ClientData clientData,
                   Tcl_Interp *interp,
                   int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                  Tcl_Obj   *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  Tcl_Obj   *const objv[])
</span> {
     int failIndex = FALSE;
     char *optStr, *class, *charStr;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclXtest.c b/vendor/tclx-8.6.3/generic/tclXtest.c
</span>similarity index 100%
rename from vendor/tclx-8.6.2/generic/tclXtest.c
rename to vendor/tclx-8.6.3/generic/tclXtest.c
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/generic/tclXutil.c b/vendor/tclx-8.6.3/generic/tclXutil.c
</span>similarity index 98%
rename from vendor/tclx-8.6.2/generic/tclXutil.c
rename to vendor/tclx-8.6.3/generic/tclXutil.c
<span style='display:block; white-space:pre;color:#808080;'>index e1fe3ed50..fa6c7458c 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/generic/tclXutil.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/generic/tclXutil.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -58,7 +58,7 @@ char *tclXWrongArgs = "wrong # args: ";
</span>  *-----------------------------------------------------------------------------
  */
 int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclX_StrToInt (CONST char *string, int base, int *intPtr)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclX_StrToInt (const char *string, int base, int *intPtr)
</span> {
     char *end, *p;
     int   i;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -115,7 +115,7 @@ TclX_StrToInt (CONST char *string, int base, int *intPtr)
</span>  *-----------------------------------------------------------------------------
  */
 int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclX_StrToUnsigned (CONST char *string, int base, unsigned *unsignedPtr)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclX_StrToUnsigned (const char *string, int base, unsigned *unsignedPtr)
</span> {
     char *end, *p;
     unsigned i;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -158,7 +158,7 @@ TclX_StrToUnsigned (CONST char *string, int base, unsigned *unsignedPtr)
</span>  *-----------------------------------------------------------------------------
  */
 int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclX_StrToOffset (CONST char *string, int base, off_t *offsetPtr)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclX_StrToOffset (const char *string, int base, off_t *offsetPtr)
</span> {
     char *end, *p;
     off_t i;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -217,7 +217,7 @@ TclX_StrToOffset (CONST char *string, int base, off_t *offsetPtr)
</span>  *-----------------------------------------------------------------------------
  */
 char *
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclX_DownShift (char *targetStr, CONST char *sourceStr)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclX_DownShift (char *targetStr, const char *sourceStr)
</span> {
     register char theChar;
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -252,7 +252,7 @@ TclX_DownShift (char *targetStr, CONST char *sourceStr)
</span>  *-----------------------------------------------------------------------------
  */
 char *
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclX_UpShift (char *targetStr, CONST char *sourceStr)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclX_UpShift (char *targetStr, const char *sourceStr)
</span> {
     register char theChar;
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -787,18 +787,16 @@ TclX_WrongArgs (Tcl_Interp *interp, Tcl_Obj *commandNameObj, char *string)
</span>  *
  * Parameters:
  *   o interp - Interpreter to set the result in.
<span style='display:block; white-space:pre;background:#ffe0e0;'>- *   o args - Strings to append, terminated by a NULL.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ *   o args - Strings to append, terminated by (char *)NULL.
</span>  *-----------------------------------------------------------------------------
  */
 void
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclX_AppendObjResult TCL_VARARGS_DEF (Tcl_Interp *, arg1)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclX_AppendObjResult (Tcl_Interp *interp, ...)
</span> {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Interp *interp;
</span>     Tcl_Obj *resultPtr;
     va_list argList;
     char *string;
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    interp = TCL_VARARGS_START (Tcl_Interp *, arg1, argList);
</span>     resultPtr = Tcl_GetObjResult (interp);
 
     if (Tcl_IsShared(resultPtr)) {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -806,7 +804,7 @@ TclX_AppendObjResult TCL_VARARGS_DEF (Tcl_Interp *, arg1)
</span>         Tcl_SetObjResult(interp, resultPtr);
     }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    TCL_VARARGS_START(Tcl_Interp *,arg1,argList);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    va_start(argList, interp);
</span>     while (1) {
         string = va_arg(argList, char *);
         if (string == NULL) {
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/library/arrayprocs.tcl b/vendor/tclx-8.6.3/library/arrayprocs.tcl
</span>similarity index 100%
rename from vendor/tclx-8.6.2/library/arrayprocs.tcl
rename to vendor/tclx-8.6.3/library/arrayprocs.tcl
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/library/autoload.tcl b/vendor/tclx-8.6.3/library/autoload.tcl
</span>similarity index 100%
rename from vendor/tclx-8.6.2/library/autoload.tcl
rename to vendor/tclx-8.6.3/library/autoload.tcl
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/library/buildhelp.tcl b/vendor/tclx-8.6.3/library/buildhelp.tcl
</span>similarity index 100%
rename from vendor/tclx-8.6.2/library/buildhelp.tcl
rename to vendor/tclx-8.6.3/library/buildhelp.tcl
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/library/buildidx.tcl b/vendor/tclx-8.6.3/library/buildidx.tcl
</span>similarity index 100%
rename from vendor/tclx-8.6.2/library/buildidx.tcl
rename to vendor/tclx-8.6.3/library/buildidx.tcl
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/library/compat.tcl b/vendor/tclx-8.6.3/library/compat.tcl
</span>similarity index 100%
rename from vendor/tclx-8.6.2/library/compat.tcl
rename to vendor/tclx-8.6.3/library/compat.tcl
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/library/convlib.tcl b/vendor/tclx-8.6.3/library/convlib.tcl
</span>similarity index 100%
rename from vendor/tclx-8.6.2/library/convlib.tcl
rename to vendor/tclx-8.6.3/library/convlib.tcl
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/library/edprocs.tcl b/vendor/tclx-8.6.3/library/edprocs.tcl
</span>similarity index 100%
rename from vendor/tclx-8.6.2/library/edprocs.tcl
rename to vendor/tclx-8.6.3/library/edprocs.tcl
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/library/events.tcl b/vendor/tclx-8.6.3/library/events.tcl
</span>similarity index 100%
rename from vendor/tclx-8.6.2/library/events.tcl
rename to vendor/tclx-8.6.3/library/events.tcl
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/library/fmath.tcl b/vendor/tclx-8.6.3/library/fmath.tcl
</span>similarity index 100%
rename from vendor/tclx-8.6.2/library/fmath.tcl
rename to vendor/tclx-8.6.3/library/fmath.tcl
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/library/forfile.tcl b/vendor/tclx-8.6.3/library/forfile.tcl
</span>similarity index 100%
rename from vendor/tclx-8.6.2/library/forfile.tcl
rename to vendor/tclx-8.6.3/library/forfile.tcl
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/library/globrecur.tcl b/vendor/tclx-8.6.3/library/globrecur.tcl
</span>similarity index 100%
rename from vendor/tclx-8.6.2/library/globrecur.tcl
rename to vendor/tclx-8.6.3/library/globrecur.tcl
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/library/help.tcl b/vendor/tclx-8.6.3/library/help.tcl
</span>similarity index 100%
rename from vendor/tclx-8.6.2/library/help.tcl
rename to vendor/tclx-8.6.3/library/help.tcl
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/library/profrep.tcl b/vendor/tclx-8.6.3/library/profrep.tcl
</span>similarity index 100%
rename from vendor/tclx-8.6.2/library/profrep.tcl
rename to vendor/tclx-8.6.3/library/profrep.tcl
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/library/pushd.tcl b/vendor/tclx-8.6.3/library/pushd.tcl
</span>similarity index 100%
rename from vendor/tclx-8.6.2/library/pushd.tcl
rename to vendor/tclx-8.6.3/library/pushd.tcl
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/library/setfuncs.tcl b/vendor/tclx-8.6.3/library/setfuncs.tcl
</span>similarity index 100%
rename from vendor/tclx-8.6.2/library/setfuncs.tcl
rename to vendor/tclx-8.6.3/library/setfuncs.tcl
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/library/showproc.tcl b/vendor/tclx-8.6.3/library/showproc.tcl
</span>similarity index 100%
rename from vendor/tclx-8.6.2/library/showproc.tcl
rename to vendor/tclx-8.6.3/library/showproc.tcl
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/library/stringfile.tcl b/vendor/tclx-8.6.3/library/stringfile.tcl
</span>similarity index 100%
rename from vendor/tclx-8.6.2/library/stringfile.tcl
rename to vendor/tclx-8.6.3/library/stringfile.tcl
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/library/tcllib.tcl b/vendor/tclx-8.6.3/library/tcllib.tcl
</span>similarity index 100%
rename from vendor/tclx-8.6.2/library/tcllib.tcl
rename to vendor/tclx-8.6.3/library/tcllib.tcl
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/library/tclx.tcl b/vendor/tclx-8.6.3/library/tclx.tcl
</span>similarity index 100%
rename from vendor/tclx-8.6.2/library/tclx.tcl
rename to vendor/tclx-8.6.3/library/tclx.tcl
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/license.terms b/vendor/tclx-8.6.3/license.terms
</span>similarity index 100%
rename from vendor/tclx-8.6.2/license.terms
rename to vendor/tclx-8.6.3/license.terms
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tclconfig/ChangeLog b/vendor/tclx-8.6.3/tclconfig/ChangeLog
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tclconfig/ChangeLog
rename to vendor/tclx-8.6.3/tclconfig/ChangeLog
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tclconfig/README.txt b/vendor/tclx-8.6.3/tclconfig/README.txt
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tclconfig/README.txt
rename to vendor/tclx-8.6.3/tclconfig/README.txt
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tclconfig/install-sh b/vendor/tclx-8.6.3/tclconfig/install-sh
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tclconfig/install-sh
rename to vendor/tclx-8.6.3/tclconfig/install-sh
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tclconfig/tcl.m4 b/vendor/tclx-8.6.3/tclconfig/tcl.m4
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tclconfig/tcl.m4
rename to vendor/tclx-8.6.3/tclconfig/tcl.m4
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/all.tcl b/vendor/tclx-8.6.3/tests/all.tcl
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/all.tcl
rename to vendor/tclx-8.6.3/tests/all.tcl
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/arrayproc.test b/vendor/tclx-8.6.3/tests/arrayproc.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/arrayproc.test
rename to vendor/tclx-8.6.3/tests/arrayproc.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/bsearch.test b/vendor/tclx-8.6.3/tests/bsearch.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/bsearch.test
rename to vendor/tclx-8.6.3/tests/bsearch.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/chartype.test b/vendor/tclx-8.6.3/tests/chartype.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/chartype.test
rename to vendor/tclx-8.6.3/tests/chartype.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/chmod.test b/vendor/tclx-8.6.3/tests/chmod.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/chmod.test
rename to vendor/tclx-8.6.3/tests/chmod.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/chroot.test b/vendor/tclx-8.6.3/tests/chroot.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/chroot.test
rename to vendor/tclx-8.6.3/tests/chroot.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/cmdloop.test b/vendor/tclx-8.6.3/tests/cmdloop.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/cmdloop.test
rename to vendor/tclx-8.6.3/tests/cmdloop.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/cmdtrace.test b/vendor/tclx-8.6.3/tests/cmdtrace.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/cmdtrace.test
rename to vendor/tclx-8.6.3/tests/cmdtrace.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/coalesce.test b/vendor/tclx-8.6.3/tests/coalesce.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/coalesce.test
rename to vendor/tclx-8.6.3/tests/coalesce.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/compat/clock.test b/vendor/tclx-8.6.3/tests/compat/clock.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/compat/clock.test
rename to vendor/tclx-8.6.3/tests/compat/clock.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/compat/copyfile.test b/vendor/tclx-8.6.3/tests/compat/copyfile.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/compat/copyfile.test
rename to vendor/tclx-8.6.3/tests/compat/copyfile.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/compat/file.test b/vendor/tclx-8.6.3/tests/compat/file.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/compat/file.test
rename to vendor/tclx-8.6.3/tests/compat/file.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/compat/server.test b/vendor/tclx-8.6.3/tests/compat/server.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/compat/server.test
rename to vendor/tclx-8.6.3/tests/compat/server.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/convlib.test b/vendor/tclx-8.6.3/tests/convlib.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/convlib.test
rename to vendor/tclx-8.6.3/tests/convlib.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/dup.test b/vendor/tclx-8.6.3/tests/dup.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/dup.test
rename to vendor/tclx-8.6.3/tests/dup.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/fcntl.test b/vendor/tclx-8.6.3/tests/fcntl.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/fcntl.test
rename to vendor/tclx-8.6.3/tests/fcntl.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/filescan.test b/vendor/tclx-8.6.3/tests/filescan.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/filescan.test
rename to vendor/tclx-8.6.3/tests/filescan.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/flock.test b/vendor/tclx-8.6.3/tests/flock.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/flock.test
rename to vendor/tclx-8.6.3/tests/flock.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/fmath.test b/vendor/tclx-8.6.3/tests/fmath.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/fmath.test
rename to vendor/tclx-8.6.3/tests/fmath.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/forfile.test b/vendor/tclx-8.6.3/tests/forfile.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/forfile.test
rename to vendor/tclx-8.6.3/tests/forfile.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/fstat.test b/vendor/tclx-8.6.3/tests/fstat.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/fstat.test
rename to vendor/tclx-8.6.3/tests/fstat.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/ftrunc.test b/vendor/tclx-8.6.3/tests/ftrunc.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/ftrunc.test
rename to vendor/tclx-8.6.3/tests/ftrunc.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/globrecur.test b/vendor/tclx-8.6.3/tests/globrecur.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/globrecur.test
rename to vendor/tclx-8.6.3/tests/globrecur.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/help.test b/vendor/tclx-8.6.3/tests/help.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/help.test
rename to vendor/tclx-8.6.3/tests/help.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/id.test b/vendor/tclx-8.6.3/tests/id.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/id.test
rename to vendor/tclx-8.6.3/tests/id.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/init.test b/vendor/tclx-8.6.3/tests/init.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/init.test
rename to vendor/tclx-8.6.3/tests/init.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/keylist.test b/vendor/tclx-8.6.3/tests/keylist.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/keylist.test
rename to vendor/tclx-8.6.3/tests/keylist.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/lassign.test b/vendor/tclx-8.6.3/tests/lassign.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/lassign.test
rename to vendor/tclx-8.6.3/tests/lassign.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/lgets.test b/vendor/tclx-8.6.3/tests/lgets.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/lgets.test
rename to vendor/tclx-8.6.3/tests/lgets.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/list.test b/vendor/tclx-8.6.3/tests/list.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/list.test
rename to vendor/tclx-8.6.3/tests/list.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/lmatch.test b/vendor/tclx-8.6.3/tests/lmatch.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/lmatch.test
rename to vendor/tclx-8.6.3/tests/lmatch.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/loop.test b/vendor/tclx-8.6.3/tests/loop.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/loop.test
rename to vendor/tclx-8.6.3/tests/loop.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/math.test b/vendor/tclx-8.6.3/tests/math.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/math.test
rename to vendor/tclx-8.6.3/tests/math.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/msgcat.test b/vendor/tclx-8.6.3/tests/msgcat.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/msgcat.test
rename to vendor/tclx-8.6.3/tests/msgcat.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/nice.test b/vendor/tclx-8.6.3/tests/nice.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/nice.test
rename to vendor/tclx-8.6.3/tests/nice.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/pipe.test b/vendor/tclx-8.6.3/tests/pipe.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/pipe.test
rename to vendor/tclx-8.6.3/tests/pipe.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/process.test b/vendor/tclx-8.6.3/tests/process.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/process.test
rename to vendor/tclx-8.6.3/tests/process.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/profile.test b/vendor/tclx-8.6.3/tests/profile.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/profile.test
rename to vendor/tclx-8.6.3/tests/profile.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/pushd.test b/vendor/tclx-8.6.3/tests/pushd.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/pushd.test
rename to vendor/tclx-8.6.3/tests/pushd.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/readdir.test b/vendor/tclx-8.6.3/tests/readdir.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/readdir.test
rename to vendor/tclx-8.6.3/tests/readdir.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/select.test b/vendor/tclx-8.6.3/tests/select.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/select.test
rename to vendor/tclx-8.6.3/tests/select.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/setfuncs.test b/vendor/tclx-8.6.3/tests/setfuncs.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/setfuncs.test
rename to vendor/tclx-8.6.3/tests/setfuncs.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/showproc.test b/vendor/tclx-8.6.3/tests/showproc.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/showproc.test
rename to vendor/tclx-8.6.3/tests/showproc.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/signal.test b/vendor/tclx-8.6.3/tests/signal.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/signal.test
rename to vendor/tclx-8.6.3/tests/signal.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/socket.test b/vendor/tclx-8.6.3/tests/socket.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/socket.test
rename to vendor/tclx-8.6.3/tests/socket.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/string.test b/vendor/tclx-8.6.3/tests/string.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/string.test
rename to vendor/tclx-8.6.3/tests/string.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/stringfil.test b/vendor/tclx-8.6.3/tests/stringfil.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/stringfil.test
rename to vendor/tclx-8.6.3/tests/stringfil.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/sync.test b/vendor/tclx-8.6.3/tests/sync.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/sync.test
rename to vendor/tclx-8.6.3/tests/sync.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/tcllib.test b/vendor/tclx-8.6.3/tests/tcllib.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/tcllib.test
rename to vendor/tclx-8.6.3/tests/tcllib.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/testlib.tcl b/vendor/tclx-8.6.3/tests/testlib.tcl
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/testlib.tcl
rename to vendor/tclx-8.6.3/tests/testlib.tcl
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/tryeval.test b/vendor/tclx-8.6.3/tests/tryeval.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/tryeval.test
rename to vendor/tclx-8.6.3/tests/tryeval.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/tests/unixcmds.test b/vendor/tclx-8.6.3/tests/unixcmds.test
</span>similarity index 100%
rename from vendor/tclx-8.6.2/tests/unixcmds.test
rename to vendor/tclx-8.6.3/tests/unixcmds.test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/unix/INSTALL b/vendor/tclx-8.6.3/unix/INSTALL
</span>similarity index 100%
rename from vendor/tclx-8.6.2/unix/INSTALL
rename to vendor/tclx-8.6.3/unix/INSTALL
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/unix/tclXAppInit.c b/vendor/tclx-8.6.3/unix/tclXAppInit.c
</span>similarity index 100%
rename from vendor/tclx-8.6.2/unix/tclXAppInit.c
rename to vendor/tclx-8.6.3/unix/tclXAppInit.c
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/unix/tclXchannelfd.c b/vendor/tclx-8.6.3/unix/tclXchannelfd.c
</span>similarity index 98%
rename from vendor/tclx-8.6.2/unix/tclXchannelfd.c
rename to vendor/tclx-8.6.3/unix/tclXchannelfd.c
<span style='display:block; white-space:pre;color:#808080;'>index 0efb75dde..b4fe52098 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/unix/tclXchannelfd.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/unix/tclXchannelfd.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -60,7 +60,7 @@ ChannelToFd (Tcl_Channel          channel,
</span> }
 
 static int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclX_ChannelFdObjCmd (ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj*CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclX_ChannelFdObjCmd (ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj*const objv[])
</span> {
        const char          *channelName;
        Tcl_Channel          channel;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/unix/tclXunixCmds.c b/vendor/tclx-8.6.3/unix/tclXunixCmds.c
</span>similarity index 94%
rename from vendor/tclx-8.6.2/unix/tclXunixCmds.c
rename to vendor/tclx-8.6.3/unix/tclXunixCmds.c
<span style='display:block; white-space:pre;color:#808080;'>index 47c34c7a3..63c9f1d41 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/unix/tclXunixCmds.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/unix/tclXunixCmds.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -23,13 +23,13 @@ static int
</span> TclX_ChrootObjCmd (ClientData clientData,
                   Tcl_Interp *interp,
                   int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                              Tcl_Obj     *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                         Tcl_Obj     *const objv[]);
</span> 
 static int
 TclX_TimesObjCmd (ClientData   clientData,
                  Tcl_Interp  *interp,
                  int          objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                 Tcl_Obj      *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 Tcl_Obj      *const objv[]);
</span> 
 
 /*-----------------------------------------------------------------------------
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -46,7 +46,7 @@ static int
</span> TclX_ChrootObjCmd (ClientData clientData,
                   Tcl_Interp *interp,
                   int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                              Tcl_Obj     *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                         Tcl_Obj     *const objv[])
</span> {
     char   *chrootString;
     int     chrootStrLen;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -79,7 +79,7 @@ static int
</span> TclX_TimesObjCmd (ClientData   clientData,
                  Tcl_Interp  *interp,
                  int          objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                 Tcl_Obj      *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 Tcl_Obj      *const objv[])
</span> {
     struct tms tm;
     char       timesBuf [48];
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -106,8 +106,7 @@ TclX_TimesObjCmd (ClientData   clientData,
</span>  *-----------------------------------------------------------------------------
  */
 void
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclX_PlatformCmdsInit (interp)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Interp *interp;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclX_PlatformCmdsInit (Tcl_Interp *interp)
</span> {
     Tcl_CreateObjCommand (interp,
                          "chroot",
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/unix/tclXunixDup.c b/vendor/tclx-8.6.3/unix/tclXunixDup.c
</span>similarity index 100%
rename from vendor/tclx-8.6.2/unix/tclXunixDup.c
rename to vendor/tclx-8.6.3/unix/tclXunixDup.c
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/unix/tclXunixId.c b/vendor/tclx-8.6.3/unix/tclXunixId.c
</span>similarity index 93%
rename from vendor/tclx-8.6.2/unix/tclXunixId.c
rename to vendor/tclx-8.6.3/unix/tclXunixId.c
<span style='display:block; white-space:pre;color:#808080;'>index ed405fa69..ff661468b 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/unix/tclXunixId.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/unix/tclXunixId.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -56,58 +56,58 @@ GroupnameToGroupidResult (Tcl_Interp *interp,
</span> static int
 IdConvert (Tcl_Interp *interp,
            int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-           Tcl_Obj   *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           Tcl_Obj   *const objv[]);
</span> 
 static int
 IdEffective  (Tcl_Interp  *interp,
               int          objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-              Tcl_Obj      *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              Tcl_Obj      *const objv[]);
</span> 
 static int
 IdProcess  (Tcl_Interp    *interp,
             int            objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-            Tcl_Obj      *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            Tcl_Obj      *const objv[]);
</span> 
 static int
 IdGroupids  (Tcl_Interp    *interp,
              int            objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-             Tcl_Obj      *CONST objv[],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             Tcl_Obj      *const objv[],
</span>              int         symbolic);
 
 static int
 IdHost (Tcl_Interp    *interp,
         int            objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        Tcl_Obj      *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        Tcl_Obj      *const objv[]);
</span> 
 static int
 GetSetWrongArgs (Tcl_Interp    *interp,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                 Tcl_Obj      *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 Tcl_Obj      *const objv[]);
</span> 
 static int
 IdUser (Tcl_Interp    *interp,
         int            objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        Tcl_Obj      *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        Tcl_Obj      *const objv[]);
</span> 
 static int
 IdUserId (Tcl_Interp    *interp,
           int            objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-          Tcl_Obj      *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          Tcl_Obj      *const objv[]);
</span> 
 static int
 IdGroup (Tcl_Interp    *interp,
          int            objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-         Tcl_Obj      *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         Tcl_Obj      *const objv[]);
</span> 
 static int
 IdGroupId (Tcl_Interp    *interp,
            int            objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-           Tcl_Obj      *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           Tcl_Obj      *const objv[]);
</span> 
 static int 
 TclX_IdObjCmd (ClientData clientData,
                Tcl_Interp *interp,
                int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-               Tcl_Obj *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+               Tcl_Obj *const objv[]);
</span> 
 /*-----------------------------------------------------------------------------
  * TclX_IdObjCmd --
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -231,7 +231,7 @@ GroupnameToGroupidResult (Tcl_Interp *interp, char *groupName)
</span>  * id convert type value
  */
 static int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-IdConvert (Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+IdConvert (Tcl_Interp *interp, int objc, Tcl_Obj *const objv[])
</span> {
     long           uid;
     long           gid;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -272,7 +272,7 @@ IdConvert (Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
</span>  * id effective type
  */
 static int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-IdEffective (Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+IdEffective (Tcl_Interp *interp, int objc, Tcl_Obj *const objv[])
</span> {
     char          *subCommand;
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -307,7 +307,7 @@ IdEffective (Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
</span>  * id process ?parent|group? ?set?
  */
 static int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-IdProcess (Tcl_Interp *interp, int objc, Tcl_Obj      *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+IdProcess (Tcl_Interp *interp, int objc, Tcl_Obj      *const objv[])
</span> {
     pid_t          pid;
     char          *subCommand;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -368,7 +368,7 @@ IdProcess (Tcl_Interp *interp, int objc, Tcl_Obj      *CONST objv[])
</span>  * id groups
  */
 static int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-IdGroupids (Tcl_Interp *interp, int objc, Tcl_Obj*CONST objv[], int symbolic)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+IdGroupids (Tcl_Interp *interp, int objc, Tcl_Obj*const objv[], int symbolic)
</span> {
 #ifndef NO_GETGROUPS
     gid_t         *groups;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -436,7 +436,7 @@ IdGroupids (Tcl_Interp *interp, int objc, Tcl_Obj*CONST objv[], int symbolic)
</span>  * id host
  */
 static int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-IdHost (Tcl_Interp *interp, int objc, Tcl_Obj*CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+IdHost (Tcl_Interp *interp, int objc, Tcl_Obj*const objv[])
</span> {
 #ifndef NO_GETHOSTNAME
 #ifndef MAXHOSTNAMELEN
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -466,7 +466,7 @@ IdHost (Tcl_Interp *interp, int objc, Tcl_Obj*CONST objv[])
</span>  * Return error when a get set function has too many args (2 or 3 expected).
  */
 static int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-GetSetWrongArgs (Tcl_Interp *interp, Tcl_Obj*CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+GetSetWrongArgs (Tcl_Interp *interp, Tcl_Obj*const objv[])
</span> {
     return TclX_WrongArgs (interp, objv [0], "arg ?value?");
 }
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -475,7 +475,7 @@ GetSetWrongArgs (Tcl_Interp *interp, Tcl_Obj*CONST objv[])
</span>  * id user
  */
 static int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-IdUser (Tcl_Interp *interp, int objc, Tcl_Obj*CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+IdUser (Tcl_Interp *interp, int objc, Tcl_Obj*const objv[])
</span> {
     struct passwd *pw;
     char          *user;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -511,7 +511,7 @@ IdUser (Tcl_Interp *interp, int objc, Tcl_Obj*CONST objv[])
</span>  * id userid
  */
 static int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-IdUserId (Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+IdUserId (Tcl_Interp *interp, int objc, Tcl_Obj *const objv[])
</span> {
     int uid;
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -538,7 +538,7 @@ IdUserId (Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
</span>  * id group
  */
 static int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-IdGroup (Tcl_Interp *interp, int objc, Tcl_Obj*CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+IdGroup (Tcl_Interp *interp, int objc, Tcl_Obj*const objv[])
</span> {
     struct group *grp;
     char         *groupName;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -574,7 +574,7 @@ IdGroup (Tcl_Interp *interp, int objc, Tcl_Obj*CONST objv[])
</span>  * id groupid
  */
 static int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-IdGroupId (Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+IdGroupId (Tcl_Interp *interp, int objc, Tcl_Obj *const objv[])
</span> {
     int gid;
     
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -598,7 +598,7 @@ IdGroupId (Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
</span> }
 
 static int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclX_IdObjCmd (ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj*CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclX_IdObjCmd (ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj*const objv[])
</span> {
     char       *subCommand;
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/unix/tclXunixOS.c b/vendor/tclx-8.6.3/unix/tclXunixOS.c
</span>similarity index 99%
rename from vendor/tclx-8.6.2/unix/tclXunixOS.c
rename to vendor/tclx-8.6.3/unix/tclXunixOS.c
<span style='display:block; white-space:pre;color:#808080;'>index b31e8ee87..7632cb5a2 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/unix/tclXunixOS.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/unix/tclXunixOS.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -37,18 +37,6 @@
</span> #undef readdir
 #endif
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-/*
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * Cheat a little to avoid configure checking for floor and ceil being
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * This breaks with GNU libc headers...really should check with autoconf.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#ifndef __GNU_LIBRARY__
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-extern
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-double floor ();
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-extern
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-double ceil ();
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> /*
  * Prototypes of internal functions.
  */
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -319,7 +307,7 @@ TclXOSsleep (unsigned seconds)
</span>  *-----------------------------------------------------------------------------
  */
 void
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclXOSsync ()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclXOSsync (void)
</span> {
     sync ();
 }
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1399,7 +1387,7 @@ TclXOSGetSelectFnum (Tcl_Interp *interp, Tcl_Channel channel, int direction, int
</span>  *-----------------------------------------------------------------------------
  */
 int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclXOSHaveFlock ()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclXOSHaveFlock (void)
</span> {
 #ifdef F_SETLKW
     return TRUE;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1494,7 +1482,8 @@ TclXOSFunlock (Tcl_Interp *interp, TclX_FlockInfo *lockInfoPtr)
</span>     if (stat < 0) {
         TclX_AppendObjResult (interp, "lock of \"",
                               Tcl_GetChannelName (lockInfoPtr->channel),
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                              "\" failed: ", Tcl_PosixError (interp));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                              "\" failed: ", Tcl_PosixError (interp),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                              (char *) NULL);
</span>         return TCL_ERROR;
     }
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/unix/tclXunixPort.h b/vendor/tclx-8.6.3/unix/tclXunixPort.h
</span>similarity index 100%
rename from vendor/tclx-8.6.2/unix/tclXunixPort.h
rename to vendor/tclx-8.6.3/unix/tclXunixPort.h
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/unix/tclXunixSock.c b/vendor/tclx-8.6.3/unix/tclXunixSock.c
</span>similarity index 99%
rename from vendor/tclx-8.6.2/unix/tclXunixSock.c
rename to vendor/tclx-8.6.3/unix/tclXunixSock.c
<span style='display:block; white-space:pre;color:#808080;'>index 38d31713c..b68df5ae8 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/unix/tclXunixSock.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/unix/tclXunixSock.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -358,7 +358,7 @@ TclX_ServerInit (Tcl_Interp *interp)
</span>     Tcl_CreateCommand (interp, "server_accept", TclX_ServerAcceptCmd,
                        (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
     Tcl_CreateCommand (interp, "server_create", TclX_ServerCreateCmd,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                       (ClientData) NULL, (void (*)()) NULL);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                       (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
</span> }
 
 /* vim: set ts=4 sw=4 sts=4 et : */
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/unix/tclXunixTest.c b/vendor/tclx-8.6.3/unix/tclXunixTest.c
</span>similarity index 100%
rename from vendor/tclx-8.6.2/unix/tclXunixTest.c
rename to vendor/tclx-8.6.3/unix/tclXunixTest.c
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/unix/tools/Makefile.in b/vendor/tclx-8.6.3/unix/tools/Makefile.in
</span>similarity index 100%
rename from vendor/tclx-8.6.2/unix/tools/Makefile.in
rename to vendor/tclx-8.6.3/unix/tools/Makefile.in
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/unix/tools/bldmanhelp.tcl b/vendor/tclx-8.6.3/unix/tools/bldmanhelp.tcl
</span>similarity index 100%
rename from vendor/tclx-8.6.2/unix/tools/bldmanhelp.tcl
rename to vendor/tclx-8.6.3/unix/tools/bldmanhelp.tcl
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/unix/tools/buildutil.tcl b/vendor/tclx-8.6.3/unix/tools/buildutil.tcl
</span>similarity index 100%
rename from vendor/tclx-8.6.2/unix/tools/buildutil.tcl
rename to vendor/tclx-8.6.3/unix/tools/buildutil.tcl
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/unix/tools/checkup.tcl b/vendor/tclx-8.6.3/unix/tools/checkup.tcl
</span>similarity index 100%
rename from vendor/tclx-8.6.2/unix/tools/checkup.tcl
rename to vendor/tclx-8.6.3/unix/tools/checkup.tcl
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/unix/tools/cphelpdir.sh b/vendor/tclx-8.6.3/unix/tools/cphelpdir.sh
</span>similarity index 100%
rename from vendor/tclx-8.6.2/unix/tools/cphelpdir.sh
rename to vendor/tclx-8.6.3/unix/tools/cphelpdir.sh
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/unix/tools/cpmanpages.tcl b/vendor/tclx-8.6.3/unix/tools/cpmanpages.tcl
</span>similarity index 100%
rename from vendor/tclx-8.6.2/unix/tools/cpmanpages.tcl
rename to vendor/tclx-8.6.3/unix/tools/cpmanpages.tcl
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/unix/tools/genindex.tcl b/vendor/tclx-8.6.3/unix/tools/genindex.tcl
</span>similarity index 100%
rename from vendor/tclx-8.6.2/unix/tools/genindex.tcl
rename to vendor/tclx-8.6.3/unix/tools/genindex.tcl
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/unix/tools/instcopy.tcl b/vendor/tclx-8.6.3/unix/tools/instcopy.tcl
</span>similarity index 100%
rename from vendor/tclx-8.6.2/unix/tools/instcopy.tcl
rename to vendor/tclx-8.6.3/unix/tools/instcopy.tcl
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/unix/tools/libconvert.tcl b/vendor/tclx-8.6.3/unix/tools/libconvert.tcl
</span>similarity index 100%
rename from vendor/tclx-8.6.2/unix/tools/libconvert.tcl
rename to vendor/tclx-8.6.3/unix/tools/libconvert.tcl
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/unix/tools/runbuildhelp.tcl b/vendor/tclx-8.6.3/unix/tools/runbuildhelp.tcl
</span>similarity index 100%
rename from vendor/tclx-8.6.2/unix/tools/runbuildhelp.tcl
rename to vendor/tclx-8.6.3/unix/tools/runbuildhelp.tcl
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/unix/tools/tclmanpages b/vendor/tclx-8.6.3/unix/tools/tclmanpages
</span>similarity index 100%
rename from vendor/tclx-8.6.2/unix/tools/tclmanpages
rename to vendor/tclx-8.6.3/unix/tools/tclmanpages
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/unix/tools/tkmanpages b/vendor/tclx-8.6.3/unix/tools/tkmanpages
</span>similarity index 100%
rename from vendor/tclx-8.6.2/unix/tools/tkmanpages
rename to vendor/tclx-8.6.3/unix/tools/tkmanpages
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/win/INSTALL.txt b/vendor/tclx-8.6.3/win/INSTALL.txt
</span>similarity index 100%
rename from vendor/tclx-8.6.2/win/INSTALL.txt
rename to vendor/tclx-8.6.3/win/INSTALL.txt
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/win/cattcl.c b/vendor/tclx-8.6.3/win/cattcl.c
</span>similarity index 97%
rename from vendor/tclx-8.6.2/win/cattcl.c
rename to vendor/tclx-8.6.3/win/cattcl.c
<span style='display:block; white-space:pre;color:#808080;'>index d27655cf2..c86715837 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/win/cattcl.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/win/cattcl.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -33,9 +33,8 @@
</span>  *-----------------------------------------------------------------------------
  */
 void
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclX_SplitWinCmdLine (argcPtr, argvPtr)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    int    *argcPtr;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    char ***argvPtr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclX_SplitWinCmdLine (int    *argcPtr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                      char ***argvPtr;
</span> {
     char   *args = GetCommandLine ();
     char **argvlist, *p;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/win/makefile.vc b/vendor/tclx-8.6.3/win/makefile.vc
</span>similarity index 100%
rename from vendor/tclx-8.6.2/win/makefile.vc
rename to vendor/tclx-8.6.3/win/makefile.vc
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/win/nmakehlp.c b/vendor/tclx-8.6.3/win/nmakehlp.c
</span>similarity index 100%
rename from vendor/tclx-8.6.2/win/nmakehlp.c
rename to vendor/tclx-8.6.3/win/nmakehlp.c
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/win/pkgIndex.tcl.in b/vendor/tclx-8.6.3/win/pkgIndex.tcl.in
</span>similarity index 100%
rename from vendor/tclx-8.6.2/win/pkgIndex.tcl.in
rename to vendor/tclx-8.6.3/win/pkgIndex.tcl.in
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/win/rules.vc b/vendor/tclx-8.6.3/win/rules.vc
</span>similarity index 100%
rename from vendor/tclx-8.6.2/win/rules.vc
rename to vendor/tclx-8.6.3/win/rules.vc
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/win/tclXAppInit.c b/vendor/tclx-8.6.3/win/tclXAppInit.c
</span>similarity index 100%
rename from vendor/tclx-8.6.2/win/tclXAppInit.c
rename to vendor/tclx-8.6.3/win/tclXAppInit.c
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/win/tclXwinCmds.c b/vendor/tclx-8.6.3/win/tclXwinCmds.c
</span>similarity index 93%
rename from vendor/tclx-8.6.2/win/tclXwinCmds.c
rename to vendor/tclx-8.6.3/win/tclXwinCmds.c
<span style='display:block; white-space:pre;color:#808080;'>index d61cfdb42..65951d50a 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/win/tclXwinCmds.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/win/tclXwinCmds.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -23,13 +23,13 @@ static int
</span> TclX_ChrootObjCmd (ClientData clientData,
                                  Tcl_Interp *interp, 
                              int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                              Tcl_Obj     *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                         Tcl_Obj     *const objv[]);
</span> 
 static int 
 TclX_TimesObjCmd (ClientData   clientData,
                                 Tcl_Interp  *interp,
                                 int          objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                                 Tcl_Obj      *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            Tcl_Obj      *const objv[]);
</span> 
 
 /*-----------------------------------------------------------------------------
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -41,7 +41,7 @@ static int
</span> TclX_ChrootObjCmd (ClientData  clientData,
                   Tcl_Interp *interp,
                   int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                  Tcl_Obj   *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  Tcl_Obj   *const objv[])
</span> {
     return TclXNotAvailableObjError (interp, objv [0]);
 }
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -55,7 +55,7 @@ static int
</span> TclX_TimesObjCmd (ClientData  clientData,
                  Tcl_Interp *interp,
                  int         objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                 Tcl_Obj   *CONST objv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 Tcl_Obj   *const objv[])
</span> {
     return TclXNotAvailableObjError (interp, objv [0]);
 }
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -66,8 +66,7 @@ TclX_TimesObjCmd (ClientData  clientData,
</span>  *-----------------------------------------------------------------------------
  */
 void
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclX_PlatformCmdsInit (interp)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Interp *interp;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclX_PlatformCmdsInit (Tcl_Interp *interp)
</span> {
     Tcl_CreateObjCommand (interp,
                          "chroot",
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/win/tclXwinDup.c b/vendor/tclx-8.6.3/win/tclXwinDup.c
</span>similarity index 96%
rename from vendor/tclx-8.6.2/win/tclXwinDup.c
rename to vendor/tclx-8.6.3/win/tclXwinDup.c
<span style='display:block; white-space:pre;color:#808080;'>index e0d2a1857..af524ae28 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/win/tclXwinDup.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/win/tclXwinDup.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -74,11 +74,10 @@ ConvertChannelName (Tcl_Interp *interp,
</span>  *-----------------------------------------------------------------------------
  */
 Tcl_Channel
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclXOSDupChannel (interp, srcChannel, mode, targetChannelId)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Interp *interp;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Channel srcChannel;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    int         mode;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    char       *targetChannelId;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclXOSDupChannel (Tcl_Interp *interp,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  Tcl_Channel srcChannel,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  int         mode,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  char       *targetChannelId)
</span> {
     Tcl_Channel newChannel = NULL;
     int direction;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -175,9 +174,8 @@ TclXOSDupChannel (interp, srcChannel, mode, targetChannelId)
</span>  *-----------------------------------------------------------------------------
  */
 Tcl_Channel
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclXOSBindOpenFile (interp, fileNum)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Interp *interp;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    int         fileNum;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclXOSBindOpenFile (Tcl_Interp *interp,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    int         fileNum)
</span> {
     HANDLE fileHandle;
     int mode, isSocket;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/win/tclXwinId.c b/vendor/tclx-8.6.3/win/tclXwinId.c
</span>similarity index 87%
rename from vendor/tclx-8.6.2/win/tclXwinId.c
rename to vendor/tclx-8.6.3/win/tclXwinId.c
<span style='display:block; white-space:pre;color:#808080;'>index 7214fdd53..c8baf23c5 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/win/tclXwinId.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/win/tclXwinId.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -24,18 +24,18 @@
</span> static int
 IdProcess  (Tcl_Interp *interp,
                        int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                        Tcl_Obj *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   Tcl_Obj *const objv[]);
</span> 
 static int
 IdHost (Tcl_Interp *interp,
                int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                Tcl_Obj *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           Tcl_Obj *const objv[]);
</span> 
 static int 
 TclX_IdObjCmd (ClientData clientData,
                           Tcl_Interp *interp,
                           int objc,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                           Tcl_Obj *CONST objv[]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                      Tcl_Obj *const objv[]);
</span> 
 /*-----------------------------------------------------------------------------
  * Tcl_IdCmd --
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -54,10 +54,9 @@ TclX_IdObjCmd (ClientData clientData,
</span>  * id process
  */
 static int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-IdProcess (interp, objc, objv)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Interp *interp;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    int         objc;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Obj    *CONST objv[];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+IdProcess (Tcl_Interp *interp,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           int         objc,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           Tcl_Obj    *const objv[])
</span> {
     Tcl_Obj *resultPtr = Tcl_GetObjResult (interp);
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -74,10 +73,9 @@ IdProcess (interp, objc, objv)
</span>  * id host
  */
 static int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-IdHost (interp, objc, objv)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Interp *interp;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    int         objc;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Obj    *CONST objv[];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+IdHost (Tcl_Interp *interp,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        int         objc,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        Tcl_Obj    *const objv[])
</span> {
     char hostName [TCL_RESULT_SIZE];
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -96,11 +94,10 @@ IdHost (interp, objc, objv)
</span> }
 
 static int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclX_IdObjCmd (clientData, interp, objc, objv)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    ClientData  clientData;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Interp *interp;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    int         objc;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Obj    *CONST objv[];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclX_IdObjCmd (ClientData  clientData,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+               Tcl_Interp *interp,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+               int         objc,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+               Tcl_Obj    *const objv[])
</span> {
     char *optionPtr;
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -139,8 +136,7 @@ TclX_IdObjCmd (clientData, interp, objc, objv)
</span>  *-----------------------------------------------------------------------------
  */
 void
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclX_IdInit (interp)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Interp *interp;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclX_IdInit (Tcl_Interp *interp)
</span> {
     Tcl_CreateObjCommand (interp,
                          "id",
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/win/tclXwinOS.c b/vendor/tclx-8.6.3/win/tclXwinOS.c
</span>similarity index 96%
rename from vendor/tclx-8.6.2/win/tclXwinOS.c
rename to vendor/tclx-8.6.3/win/tclXwinOS.c
<span style='display:block; white-space:pre;color:#808080;'>index b73fb49ac..8107c0eb2 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclx-8.6.2/win/tclXwinOS.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclx-8.6.3/win/tclXwinOS.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -366,9 +366,8 @@ TclXOSincrpriority (Tcl_Interp *interp,
</span>  *-----------------------------------------------------------------------------
  */
 int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclXOSpipe (interp, channels)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Interp  *interp;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Channel *channels;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclXOSpipe (Tcl_Interp  *interp,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            Tcl_Channel *channels)
</span> {
     HANDLE readHandle, writeHandle;
     SECURITY_ATTRIBUTES sec;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -437,7 +436,7 @@ TclXOSsleep (unsigned seconds)
</span>  *-----------------------------------------------------------------------------
  */
 void
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclXOSsync ()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclXOSsync (void)
</span> {
     _flushall ();
 }
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1076,7 +1075,7 @@ TclXOSexecl (Tcl_Interp *interp,
</span>  */
 int
 TclXOSInetAtoN (Tcl_Interp     *interp,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                char           *strAddress,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                const char     *strAddress,
</span>                 struct in_addr *inAddress)
 {
     inAddress->s_addr = inet_addr (strAddress);
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1168,11 +1167,10 @@ TclXOSgetsockname (Tcl_Interp *interp,
</span>  *-----------------------------------------------------------------------------
  */
 int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclXOSgetsockopt (interp, channel, option, valuePtr)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Interp  *interp;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Channel  channel;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    int          option;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    int         *valuePtr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclXOSgetsockopt (Tcl_Interp  *interp,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  Tcl_Channel  channel,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  int          option,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  int         *valuePtr)
</span> {
     int valueLen = sizeof (*valuePtr);
     SOCKET sock;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1204,11 +1202,10 @@ TclXOSgetsockopt (interp, channel, option, valuePtr)
</span>  *-----------------------------------------------------------------------------
  */
 int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclXOSsetsockopt (interp, channel, option, value)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Interp  *interp;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Channel  channel;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    int          option;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    int          value;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclXOSsetsockopt (Tcl_Interp  *interp,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  Tcl_Channel  channel,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  int          option,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  int          value)
</span> {
     int valueLen = sizeof (value);
     SOCKET sock;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1239,10 +1236,9 @@ TclXOSsetsockopt (interp, channel, option, value)
</span>  *-----------------------------------------------------------------------------
  */
 int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclXOSchmod (interp, fileName, mode)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Interp *interp;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    char       *fileName;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    int         mode;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclXOSchmod (Tcl_Interp *interp,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             char       *fileName,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             int         mode)
</span> {
 #if 0
     /*FIX:*/
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1273,11 +1269,10 @@ TclXOSchmod (interp, fileName, mode)
</span>  *-----------------------------------------------------------------------------
  */
 int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclXOSfchmod (interp, channel, mode, funcName)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Interp *interp;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Channel channel;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    int         mode;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    char       *funcName;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclXOSfchmod (Tcl_Interp *interp,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              Tcl_Channel channel,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              int         mode,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              char       *funcName)
</span> {
 #if 0
   FIX:
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1315,13 +1310,12 @@ TclXOSfchmod (interp, channel, mode, funcName)
</span>  */
 
 int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclXOSChangeOwnGrpObj (interp, options, ownerStr, groupStr, files, funcName)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Interp  *interp;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    unsigned     options;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    char        *ownerStr;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    char        *groupStr;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Obj        *files;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    char       *funcName;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclXOSChangeOwnGrpObj (Tcl_Interp *interp,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                       unsigned    options,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                       char       *ownerStr,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                       char       *groupStr,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                       Tcl_Obj       *files,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                       char       *funcName)
</span> {
     return TclXNotAvailableError (interp, funcName);
 }
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1348,13 +1342,12 @@ TclXOSChangeOwnGrpObj (interp, options, ownerStr, groupStr, files, funcName)
</span>  *-----------------------------------------------------------------------------
  */
 int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclXOSFChangeOwnGrpObj (interp, options, ownerStr, groupStr, channelIds, funcName)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Interp *interp;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    unsigned    options;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    char       *ownerStr;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    char       *groupStr;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Obj    *channelIds;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    char       *funcName;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclXOSFChangeOwnGrpObj (Tcl_Interp *interp,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        unsigned    options,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        char       *ownerStr,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        char       *groupStr,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        Tcl_Obj    *channelIds,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        char       *funcName)
</span> {
     return TclXNotAvailableError (interp, funcName);
 }
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1410,7 +1403,7 @@ TclXOSGetSelectFnum (Tcl_Interp *interp,
</span>  *-----------------------------------------------------------------------------
  */
 int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclXOSHaveFlock ()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclXOSHaveFlock (void)
</span> {
     OVERLAPPED start;
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1547,9 +1540,8 @@ LockUnlockSetup (Tcl_Interp     *interp,
</span>  *-----------------------------------------------------------------------------
  */
 int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclXOSFlock (interp, lockInfoPtr)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Interp     *interp;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    TclX_FlockInfo *lockInfoPtr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclXOSFlock (Tcl_Interp     *interp,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             TclX_FlockInfo *lockInfoPtr)
</span> {
     HANDLE handle;
     DWORD flags, lengthHigh, lengthLow;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1609,9 +1601,8 @@ TclXOSFlock (interp, lockInfoPtr)
</span>  *-----------------------------------------------------------------------------
  */
 int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclXOSFunlock (interp, lockInfoPtr)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Interp     *interp;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    TclX_FlockInfo *lockInfoPtr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclXOSFunlock (Tcl_Interp     *interp,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+               TclX_FlockInfo *lockInfoPtr)
</span> {
     HANDLE handle;
     DWORD lengthHigh, lengthLow;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1659,10 +1650,9 @@ TclXOSFunlock (interp, lockInfoPtr)
</span>  *-----------------------------------------------------------------------------
  */
 int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclXOSGetAppend (interp, channel, valuePtr)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Interp *interp;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Channel channel;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    int        *valuePtr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclXOSGetAppend (Tcl_Interp *interp,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 Tcl_Channel channel,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 int        *valuePtr)
</span> {
     return TclXNotAvailableError (interp,
                                   "append mode");
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1682,10 +1672,9 @@ TclXOSGetAppend (interp, channel, valuePtr)
</span>  *-----------------------------------------------------------------------------
  */
 int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclXOSSetAppend (interp, channel, value)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Interp *interp;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Channel channel;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    int         value;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclXOSSetAppend (Tcl_Interp *interp,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 Tcl_Channel channel,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 int         value)
</span> {
     return TclXNotAvailableError (interp,
                                   "append mode");
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1705,10 +1694,9 @@ TclXOSSetAppend (interp, channel, value)
</span>  *-----------------------------------------------------------------------------
  */
 int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclXOSGetCloseOnExec (interp, channel, valuePtr)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Interp *interp;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Channel channel;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    int        *valuePtr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclXOSGetCloseOnExec (Tcl_Interp *interp,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                      Tcl_Channel channel,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                      int        *valuePtr)
</span> {
     HANDLE handle;
     tclXwinFileType type;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1756,10 +1744,9 @@ TclXOSGetCloseOnExec (interp, channel, valuePtr)
</span>  *-----------------------------------------------------------------------------
  */
 int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-TclXOSSetCloseOnExec (interp, channel, value)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Interp *interp;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Tcl_Channel channel;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    int         value;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+TclXOSSetCloseOnExec (Tcl_Interp *interp,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                      Tcl_Channel channel,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                      int         value)
</span> {
     HANDLE handle;
     tclXwinFileType type;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/win/tclXwinPort.h b/vendor/tclx-8.6.3/win/tclXwinPort.h
</span>similarity index 100%
rename from vendor/tclx-8.6.2/win/tclXwinPort.h
rename to vendor/tclx-8.6.3/win/tclXwinPort.h
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/win/tclXwinTest.c b/vendor/tclx-8.6.3/win/tclXwinTest.c
</span>similarity index 100%
rename from vendor/tclx-8.6.2/win/tclXwinTest.c
rename to vendor/tclx-8.6.3/win/tclXwinTest.c
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclx-8.6.2/win/tclx.rc b/vendor/tclx-8.6.3/win/tclx.rc
</span>similarity index 100%
rename from vendor/tclx-8.6.2/win/tclx.rc
rename to vendor/tclx-8.6.3/win/tclx.rc
</pre><pre style='margin:0'>

</pre>