From d84809538f37f4b323a1f58fbdb7e613174e9c78 Mon Sep 17 00:00:00 2001 From: "jan.nijtmans" Date: Thu, 26 Jun 2025 07:35:48 +0000 Subject: [ef7042075c]: tcl::build-info not documented --- doc/tclbuildinfo.n | 196 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 196 insertions(+) create mode 100644 doc/tclbuildinfo.n diff --git a/doc/tclbuildinfo.n b/doc/tclbuildinfo.n new file mode 100644 index 0000000..f2243b0 --- /dev/null +++ b/doc/tclbuildinfo.n @@ -0,0 +1,196 @@ +'\" +'\" Copyright (c) 2025 Jan Nijtmans. +'\" +'\" See the file "license.terms" for information on usage and redistribution +'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. +'\" +.TH build-info n 9.0 Tcl "Tcl Built-In Commands" +.so man.macros +.BS +'\" Note: do not modify the .SH NAME line immediately below! +.SH NAME +tcl::build-info \- Build info +.SH SYNOPSIS +\fB::tcl::build-info\fR? +\fB::tcl::build-info clang\fR? +\fB::tcl::build-info commit\fR? +\fB::tcl::build-info compiledebug\fR? +\fB::tcl::build-info compiler\fR? +\fB::tcl::build-info compilestats\fR? +\fB::tcl::build-info cplusplus\fR? +\fB::tcl::build-info debug\fR? +\fB::tcl::build-info gcc\fR? +\fB::tcl::build-info icc\fR? +\fB::tcl::build-info ipl32\fR? +\fB::tcl::build-info memdebug\fR? +\fB::tcl::build-info msvc\fR? +\fB::tcl::build-info nmake\fR? +\fB::tcl::build-info no-deprecate\fR? +\fB::tcl::build-info no-thread\fR? +\fB::tcl::build-info no-optimize\fR? +\fB::tcl::build-info objective-c\fR? +\fB::tcl::build-info objective-cplusplus\fR? +\fB::tcl::build-info patchlevel\fR? +\fB::tcl::build-info profile\fR? +\fB::tcl::build-info purify\fR? +\fB::tcl::build-info static\fR? +\fB::tcl::build-info tommath\fR? +\fB::tcl::build-info version\fR? +\fB::tcl::build-info zlib\fR? +.BE +.SH DESCRIPTION +.PP +This command provides a way to retrieve information about how Tcl was built. +Without any options, the command returns the Tcl patchlevel, followed +by the '+'-sign, followed by the fossil commit-id followed by a list of +dot-separated tags. The \fIoptions\fR for official Tcl releases are: +.\" METHOD: clang +.TP +\fB::tcl::build-info clang\fR +. +Returns the clang version number (as 4 digits) if Tcl is compiled with clang, 0 otherwise. +.\" METHOD: commit +.TP +\fB::tcl::build-info commit\fR +. +Returns the fossil commit-id where Tcl was built from. +.\" METHOD: compiledebug +.TP +\fB::tcl::build-info compiledebug\fR +. +Returns 1 if Tcl is compiled with \fB\-DTCL_COMPILE_DEBUG\fR, 0 otherwise. +.\" METHOD: compiler +.TP +\fB::tcl::build-info compiler\fR +. +Returns the compiler name (either clang, gcc, icc or msvc), followed by a dash and a (4-digit) version number. +.\" METHOD: compilestats +.TP +\fB::tcl::build-info compilestats\fR +. +Returns 1 if Tcl is compiled with \fB\-DTCL_COMPILE_STATS\fR, 0 otherwise. +.\" METHOD: cplusplus +.TP +\fB::tcl::build-info cplusplus\fR +. +Returns 1 if Tcl is compiled with a C++ compiler, 0 otherwise. +.\" METHOD: debug +.TP +\fB::tcl::build-info debug\fR +. +Returns 1 if Tcl is not compiled with \fB\-DNDEBUG\fR, 0 otherwise. +.\" METHOD: gcc +.TP +\fB::tcl::build-info gcc\fR +. +Returns the gcc version number (as 4 digits) if Tcl is compiled with gcc, 0 otherwise. +.\" METHOD: icc +.TP +\fB::tcl::build-info icc\fR +. +Returns the icc version number (as 4 digits) if Tcl is compiled with icc, 0 otherwise. +.\" METHOD: ilp32 +.TP +\fB::tcl::build-info ilp32\fR +. +Returns 1 if Tcl is compiled such that integers, longs and pointers are all 32-bit, 0 otherwise. +.\" METHOD: memdebug +.TP +\fB::tcl::build-info memdebug\fR +. +Returns 1 if Tcl is compiled with \fB\-DTCL_MEM_DEBUG\fR, 0 otherwise. +.\" METHOD: msvc +.TP +\fB::tcl::build-info msvc\fR +. +Returns the msvc version number (as 4 digits) if Tcl is compiled with msvc, 0 otherwise. +.\" METHOD: nmake +.TP +\fB::tcl::build-info nmake\fR +. +Returns 1 if Tcl is built using nmake, 0 otherwise. +.\" METHOD: no-deprecate +.TP +\fB::tcl::build-info no-deprecate\fR +. +Returns 1 if Tcl is compiled with \fB\-DTCL_NO_DEPRECATED\fR, 0 otherwise. +.\" METHOD: no-thread +.TP +\fB::tcl::build-info no-thread\fR +. +Returns 1 if Tcl is compiled with \fB\-DTCL_THREADS=0\fR, 0 otherwise. +.\" METHOD: no-optimize +.TP +\fB::tcl::build-info no-optimize\fR +. +Returns 1 if Tcl is not compiled with \fB\-DTCL_CFG_OPTIMIZED\fR, 0 otherwise. +.\" METHOD: objective-c +.TP +\fB::tcl::build-info objective-c\fR +. +Returns 1 if Tcl is compiled with an objective-c compiler, 0 otherwise. +.\" METHOD: objective-cplusplus +.TP +\fB::tcl::build-info objective-cplusplus\fR +. +Returns 1 if Tcl is compiled with an objective-c++ compiler, 0 otherwise. +.\" METHOD: patchlevel +.TP +\fB::tcl::build-info patchlevel\fR +. +Returns the Tcl patchlevel, same as \fBinfo patchlevel\fR. +.\" METHOD: profile +.TP +\fB::tcl::build-info profile\fR +. +Returns 1 if Tcl is compiled with \fB\-DTCL_CFG_PROFILED\fR, 0 otherwise. +.\" METHOD: purify +.TP +\fB::tcl::build-info purify\fR +. +Returns 1 if Tcl is compiled with \fB\-DPURIFY\fR, 0 otherwise. +.\" METHOD: static +.TP +\fB::tcl::build-info static\fR +. +Returns 1 if Tcl is compiled as a static library, 0 otherwise. +.\" METHOD: tommath +.TP +\fB::tcl::build-info tommath\fR +. +Returns the libtommath version number (as 4 digits) if libtommath is built into Tcl, 0 otherwise. +.\" METHOD: version +.TP +\fB::tcl::build-info version\fR +. +Returns the Tcl version, same as \fBinfo tclversion\fR. +.\" METHOD: zlib +.TP +\fB::tcl::build-info zlib\fR +. +Returns the zlib version number (as 4 digits) if zlib is built into Tcl, 0 otherwise. +.SH "EXAMPLES" +.PP +These show the use of \fB::tcl::build-info\fR. +.PP +.CS +\fB::tcl::build-info\fR + \fI\(-> 9.0.2+af16c07b81655fabde8028374161ad54b84ef9956843c63f49976b4ef601b611.gcc-1204\fR +\fB::tcl::build-info commit\fR + \fI\(-> af16c07b81655fabde8028374161ad54b84ef9956843c63f49976b4ef601b611\fR +\fB::tcl::build-info compiler\fR + \fI\(-> gcc-1204\fR +\fB::tcl::build-info gcc\fR + \fI\(-> 1204\fR +\fB::tcl::build-info version\fR + \fI\(-> 9.0\fR +\fB::tcl::build-info patchlevel\fR + \fI\(-> 9.0.2\fR +.CE +.SH "SEE ALSO" +info(n) +.SH "KEYWORDS" +build-info +'\" Local Variables: +'\" mode: nroff +'\" End: -- cgit v0.12 From c708a47b253f0160aedc2a561a7c9fe627a99392 Mon Sep 17 00:00:00 2001 From: "jan.nijtmans" Date: Thu, 26 Jun 2025 07:59:27 +0000 Subject: Fix [9dfae3413d]: interp limit commands still seems to be 32 bits --- generic/tclInterp.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/generic/tclInterp.c b/generic/tclInterp.c index d58119e..4e25f74 100644 --- a/generic/tclInterp.c +++ b/generic/tclInterp.c @@ -4542,7 +4542,8 @@ ChildCommandLimitCmd( } else { Tcl_Size i, scriptLen = 0, limitLen = 0; Tcl_Obj *scriptObj = NULL, *granObj = NULL, *limitObj = NULL; - int gran = 0, limit = 0; + int gran = 0; + Tcl_Size limit = 0; for (i=consumedObjc ; i Date: Thu, 26 Jun 2025 08:03:33 +0000 Subject: Fix Tcl_LimitGetCommands() signature (int -> Tcl_Size) --- doc/Limit.3 | 2 +- generic/tcl.decls | 2 +- generic/tclDecls.h | 4 ++-- generic/tclInterp.c | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/doc/Limit.3 b/doc/Limit.3 index 5eb3ac8..a4005f3 100644 --- a/doc/Limit.3 +++ b/doc/Limit.3 @@ -32,7 +32,7 @@ int .sp \fBTcl_LimitTypeReset\fR(\fIinterp, type\fR) .sp -int +Tcl_Size \fBTcl_LimitGetCommands\fR(\fIinterp\fR) .sp \fBTcl_LimitSetCommands\fR(\fIinterp, commandLimit\fR) diff --git a/generic/tcl.decls b/generic/tcl.decls index ae5e04c..d72786b 100644 --- a/generic/tcl.decls +++ b/generic/tcl.decls @@ -1708,7 +1708,7 @@ declare 531 { void Tcl_LimitTypeReset(Tcl_Interp *interp, int type) } declare 532 { - int Tcl_LimitGetCommands(Tcl_Interp *interp) + Tcl_Size Tcl_LimitGetCommands(Tcl_Interp *interp) } declare 533 { void Tcl_LimitGetTime(Tcl_Interp *interp, Tcl_Time *timeLimitPtr) diff --git a/generic/tclDecls.h b/generic/tclDecls.h index e78638f..483a735 100644 --- a/generic/tclDecls.h +++ b/generic/tclDecls.h @@ -1410,7 +1410,7 @@ EXTERN void Tcl_LimitTypeSet(Tcl_Interp *interp, int type); /* 531 */ EXTERN void Tcl_LimitTypeReset(Tcl_Interp *interp, int type); /* 532 */ -EXTERN int Tcl_LimitGetCommands(Tcl_Interp *interp); +EXTERN Tcl_Size Tcl_LimitGetCommands(Tcl_Interp *interp); /* 533 */ EXTERN void Tcl_LimitGetTime(Tcl_Interp *interp, Tcl_Time *timeLimitPtr); @@ -2420,7 +2420,7 @@ typedef struct TclStubs { int (*tcl_LimitTypeExceeded) (Tcl_Interp *interp, int type); /* 529 */ void (*tcl_LimitTypeSet) (Tcl_Interp *interp, int type); /* 530 */ void (*tcl_LimitTypeReset) (Tcl_Interp *interp, int type); /* 531 */ - int (*tcl_LimitGetCommands) (Tcl_Interp *interp); /* 532 */ + Tcl_Size (*tcl_LimitGetCommands) (Tcl_Interp *interp); /* 532 */ void (*tcl_LimitGetTime) (Tcl_Interp *interp, Tcl_Time *timeLimitPtr); /* 533 */ int (*tcl_LimitGetGranularity) (Tcl_Interp *interp, int type); /* 534 */ Tcl_InterpState (*tcl_SaveInterpState) (Tcl_Interp *interp, int status); /* 535 */ diff --git a/generic/tclInterp.c b/generic/tclInterp.c index 4e25f74..90af06e 100644 --- a/generic/tclInterp.c +++ b/generic/tclInterp.c @@ -3965,7 +3965,7 @@ Tcl_LimitSetCommands( *---------------------------------------------------------------------- */ -int +Tcl_Size Tcl_LimitGetCommands( Tcl_Interp *interp) { -- cgit v0.12 From bc62e73bb841535e18e9db62d6d999c4e8fd791f Mon Sep 17 00:00:00 2001 From: "jan.nijtmans" Date: Thu, 26 Jun 2025 08:48:02 +0000 Subject: @dkf's review comments (Thanks!) --- doc/tclbuildinfo.n | 30 +++--------------------------- 1 file changed, 3 insertions(+), 27 deletions(-) diff --git a/doc/tclbuildinfo.n b/doc/tclbuildinfo.n index f2243b0..eb5fd16 100644 --- a/doc/tclbuildinfo.n +++ b/doc/tclbuildinfo.n @@ -11,39 +11,15 @@ .SH NAME tcl::build-info \- Build info .SH SYNOPSIS -\fB::tcl::build-info\fR? -\fB::tcl::build-info clang\fR? -\fB::tcl::build-info commit\fR? -\fB::tcl::build-info compiledebug\fR? -\fB::tcl::build-info compiler\fR? -\fB::tcl::build-info compilestats\fR? -\fB::tcl::build-info cplusplus\fR? -\fB::tcl::build-info debug\fR? -\fB::tcl::build-info gcc\fR? -\fB::tcl::build-info icc\fR? -\fB::tcl::build-info ipl32\fR? -\fB::tcl::build-info memdebug\fR? -\fB::tcl::build-info msvc\fR? -\fB::tcl::build-info nmake\fR? -\fB::tcl::build-info no-deprecate\fR? -\fB::tcl::build-info no-thread\fR? -\fB::tcl::build-info no-optimize\fR? -\fB::tcl::build-info objective-c\fR? -\fB::tcl::build-info objective-cplusplus\fR? -\fB::tcl::build-info patchlevel\fR? -\fB::tcl::build-info profile\fR? -\fB::tcl::build-info purify\fR? -\fB::tcl::build-info static\fR? -\fB::tcl::build-info tommath\fR? -\fB::tcl::build-info version\fR? -\fB::tcl::build-info zlib\fR? +\fB::tcl::build-info\fR ?\fIfield\fR? .BE .SH DESCRIPTION .PP This command provides a way to retrieve information about how Tcl was built. Without any options, the command returns the Tcl patchlevel, followed by the '+'-sign, followed by the fossil commit-id followed by a list of -dot-separated tags. The \fIoptions\fR for official Tcl releases are: +dot-separated tags. If a \fIfield\fR is given, this command extracts that +field as described below. For official Tcl releases, the \fIfield\fRs are: .\" METHOD: clang .TP \fB::tcl::build-info clang\fR -- cgit v0.12 From af368b90499cd1842aaa79aed6a39900ea58834e Mon Sep 17 00:00:00 2001 From: "jan.nijtmans" Date: Thu, 26 Jun 2025 13:38:36 +0000 Subject: Document what happens for non-documented field values --- doc/tclbuildinfo.n | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/doc/tclbuildinfo.n b/doc/tclbuildinfo.n index eb5fd16..8ff2933 100644 --- a/doc/tclbuildinfo.n +++ b/doc/tclbuildinfo.n @@ -19,7 +19,8 @@ This command provides a way to retrieve information about how Tcl was built. Without any options, the command returns the Tcl patchlevel, followed by the '+'-sign, followed by the fossil commit-id followed by a list of dot-separated tags. If a \fIfield\fR is given, this command extracts that -field as described below. For official Tcl releases, the \fIfield\fRs are: +field as described below. Any other \fIfield\fR value not mentioned +below will always return "0". For official Tcl releases, the \fIfield\fRs are: .\" METHOD: clang .TP \fB::tcl::build-info clang\fR -- cgit v0.12 From bb3e4af18d9b71c3cf04ff2ae49768ce69d60e4b Mon Sep 17 00:00:00 2001 From: "jan.nijtmans" Date: Fri, 27 Jun 2025 07:16:03 +0000 Subject: Make all references to -DFOO compiler flags bold in documentation --- doc/ByteArrObj.3 | 2 +- doc/CrtAlias.3 | 2 +- doc/DictObj.3 | 2 +- doc/FileSystem.3 | 2 +- doc/ListObj.3 | 4 ++-- doc/ParseArgs.3 | 2 +- doc/SplitList.3 | 2 +- doc/SplitPath.3 | 2 +- doc/StringObj.3 | 2 +- doc/Tcl_Main.3 | 2 +- 10 files changed, 11 insertions(+), 11 deletions(-) diff --git a/doc/ByteArrObj.3 b/doc/ByteArrObj.3 index 6306591..88c9580 100644 --- a/doc/ByteArrObj.3 +++ b/doc/ByteArrObj.3 @@ -47,7 +47,7 @@ Interpreter to use for error reporting. Points to space where the number of bytes in the array may be written. May be (Tcl_Size *)NULL when not used. If it points to a variable which type is not \fBTcl_Size\fR, a compiler warning will be generated. -If your extensions is compiled with -DTCL_8_API, this function will return +If your extensions is compiled with \fB-DTCL_8_API\fR, this function will return NULL for byte arrays larger than INT_MAX (which should trigger proper error-handling), otherwise expect it to crash. .BE diff --git a/doc/CrtAlias.3 b/doc/CrtAlias.3 index ba2e415..2ddf59e 100644 --- a/doc/CrtAlias.3 +++ b/doc/CrtAlias.3 @@ -87,7 +87,7 @@ for an alias. Pointer to location to store count of additional value arguments to be passed to the alias. The location is in storage owned by the caller. If it points to a variable which type is not \fBTcl_Size\fR, a compiler -warning will be generated. If your extensions is compiled with -DTCL_8_API, +warning will be generated. If your extensions is compiled with \fB-DTCL_8_API\fR, this function will return TCL_ERROR for aliases with more than INT_MAX value arguments, otherwise expect it to crash .AP Tcl_Obj ***objvPtr out diff --git a/doc/DictObj.3 b/doc/DictObj.3 index ec36d6a..0cc2e39 100644 --- a/doc/DictObj.3 +++ b/doc/DictObj.3 @@ -74,7 +74,7 @@ Points to a variable that will have the number of key/value pairs contained within the dictionary placed within it. May be (Tcl_Size *)NULL when not used. If it points to a variable which type is not \fBTcl_Size\fR, a compiler warning will be generated. -If your extensions is compiled with -DTCL_8_API, this function will return +If your extensions is compiled with \fB-DTCL_8_API\fR, this function will return NULL for dictionaries larger than INT_MAX (which should trigger proper error-handling), otherwise expect it to crash. .AP Tcl_DictSearch *searchPtr in/out diff --git a/doc/FileSystem.3 b/doc/FileSystem.3 index 86f96e6..5a50f53 100644 --- a/doc/FileSystem.3 +++ b/doc/FileSystem.3 @@ -278,7 +278,7 @@ permissions will be set on the created file. Filled with the number of elements in the split path. May be (Tcl_Size *)NULL when not used. If it points to a variable which type is not \fBTcl_Size\fR, a compiler warning will be generated. -If your extensions is compiled with -DTCL_8_API, this function will return +If your extensions is compiled with \fB-DTCL_8_API\fR, this function will return NULL for paths having more than INT_MAX elements (which should trigger proper error-handling), otherwise expect it to crash. .AP Tcl_Obj *basePtr in diff --git a/doc/ListObj.3 b/doc/ListObj.3 index 6e4d0d5..872b90f 100644 --- a/doc/ListObj.3 +++ b/doc/ListObj.3 @@ -65,7 +65,7 @@ Points to location where \fBTcl_ListObjGetElements\fR stores the number of element values in \fIlistPtr\fR. May be (Tcl_Size *)NULL when not used. If it points to a variable which type is not \fBTcl_Size\fR, a compiler warning will be generated. -If your extensions is compiled with -DTCL_8_API, this function will return +If your extensions is compiled with \fB\fB-DTCL_8_API\fR\fR, this function will return NULL for lists with more than INT_MAX elements (which should trigger proper error-handling), otherwise expect it to crash. .AP Tcl_Obj ***objvPtr out @@ -87,7 +87,7 @@ Points to location where \fBTcl_ListObjLength\fR stores the length of the list. May be (Tcl_Size *)NULL when not used. If it points to a variable which type is not \fBTcl_Size\fR, a compiler warning will be generated. -If your extensions is compiled with -DTCL_8_API, this function will return +If your extensions is compiled with \fB-DTCL_8_API\fR, this function will return TCL_ERROR for lists with more than INT_MAX elements (which should trigger proper error-handling), otherwise expect it to crash. .AP Tcl_Size index in diff --git a/doc/ParseArgs.3 b/doc/ParseArgs.3 index 594f4f1..ce61808 100644 --- a/doc/ParseArgs.3 +++ b/doc/ParseArgs.3 @@ -28,7 +28,7 @@ modified to hold number of arguments left in the unprocessed argument list stored in \fIremObjv\fR. May be (Tcl_Size *)NULL when not used. If it points to a variable which type is not \fBTcl_Size\fR, a compiler warning will be generated. -If your extensions is compiled with -DTCL_8_API, this function will return +If your extensions is compiled with \fB-DTCL_8_API\fR, this function will return NULL for argument lists with more than INT_MAX elements (which should trigger proper error-handling), otherwise expect it to crash. .AP "Tcl_Obj *const" *objv in diff --git a/doc/SplitList.3 b/doc/SplitList.3 index d036ace..cc47f03 100644 --- a/doc/SplitList.3 +++ b/doc/SplitList.3 @@ -43,7 +43,7 @@ Pointer to a string with proper list structure. Filled in with number of elements in \fIlist\fR. May be (Tcl_Size *)NULL when not used. If it points to a variable which type is not \fBTcl_Size\fR, a compiler warning will be generated. -If your extensions is compiled with -DTCL_8_API, this function will return +If your extensions is compiled with \fB-DTCL_8_API\fR, this function will return TCL_ERROR for lists with more than INT_MAX elements (which should trigger proper error-handling), otherwise expect it to crash. .AP "const char" ***argvPtr out diff --git a/doc/SplitPath.3 b/doc/SplitPath.3 index 452baff..25e672d 100644 --- a/doc/SplitPath.3 +++ b/doc/SplitPath.3 @@ -30,7 +30,7 @@ File path in a form appropriate for the current platform (see the Filled in with number of path elements in \fIpath\fR. May be (Tcl_Size *)NULL when not used. If it points to a variable which type is not \fBTcl_Size\fR, a compiler warning will be generated. -If your extensions is compiled with -DTCL_8_API, argcPtr will be filled +If your extensions is compiled with \fB-DTCL_8_API\fR, argcPtr will be filled with -1 for paths with more than INT_MAX elements (which should trigger proper error-handling), otherwise expect it to crash. .AP "const char" ***argvPtr out diff --git a/doc/StringObj.3 b/doc/StringObj.3 index f72c6a0..f13924a 100644 --- a/doc/StringObj.3 +++ b/doc/StringObj.3 @@ -124,7 +124,7 @@ The location where \fBTcl_GetStringFromObj\fR will store the length of a value's string representation. May be (Tcl_Size *)NULL when not used. If it points to a variable which type is not \fBTcl_Size\fR, a compiler warning will be generated. -If your extensions is compiled with -DTCL_8_API, this function will +If your extensions is compiled with \fB-DTCL_8_API\fR, this function will panic for strings with more than INT_MAX bytes/characters, otherwise expect it to crash. .AP "const char" *string in diff --git a/doc/Tcl_Main.3 b/doc/Tcl_Main.3 index 6410450..0258294 100644 --- a/doc/Tcl_Main.3 +++ b/doc/Tcl_Main.3 @@ -34,7 +34,7 @@ Tcl_Obj * Number of elements in \fIargv\fR. .AP char *argv[] in Array of strings containing command-line arguments. On Windows, when -using -DUNICODE, the parameter type changes to wchar_t *. +using \fB\-DUNICODE\fR, the parameter type changes to wchar_t *. .AP char *charargv[] in As argv, but does not change type to wchar_t. .AP char *wideargv[] in -- cgit v0.12 From 5721de48caace8b5dc120cfc1674ed8627390810 Mon Sep 17 00:00:00 2001 From: apnadkarni Date: Fri, 27 Jun 2025 07:45:18 +0000 Subject: Make exec-bug-4f0b5767ac test independent of locale --- tests/exec.test | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/exec.test b/tests/exec.test index fc5f1fa..ac9530f 100644 --- a/tests/exec.test +++ b/tests/exec.test @@ -805,7 +805,7 @@ test exec-22.1 {exec -encoding invalid encoding} -body { test exec-bug-4f0b5767ac {exec App Execution Alias} -constraints haveWinget -body { exec winget --info -} -result "Windows Package Manager*" -match glob +} -result "Windows*" -match glob foreach cmdBuiltin { assoc call cd cls color copy date del dir echo -- cgit v0.12 From 662d103e7d14952947a018b639531b2d899d943c Mon Sep 17 00:00:00 2001 From: "jan.nijtmans" Date: Fri, 27 Jun 2025 08:12:13 +0000 Subject: doc fix --- doc/ListObj.3 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/ListObj.3 b/doc/ListObj.3 index 872b90f..9fd7091 100644 --- a/doc/ListObj.3 +++ b/doc/ListObj.3 @@ -65,7 +65,7 @@ Points to location where \fBTcl_ListObjGetElements\fR stores the number of element values in \fIlistPtr\fR. May be (Tcl_Size *)NULL when not used. If it points to a variable which type is not \fBTcl_Size\fR, a compiler warning will be generated. -If your extensions is compiled with \fB\fB-DTCL_8_API\fR\fR, this function will return +If your extensions is compiled with \fB\-DTCL_8_API\fR, this function will return NULL for lists with more than INT_MAX elements (which should trigger proper error-handling), otherwise expect it to crash. .AP Tcl_Obj ***objvPtr out -- cgit v0.12 From 269d6061c3ac140fe9fbc376efc58da0df344b3c Mon Sep 17 00:00:00 2001 From: apnadkarni Date: Sat, 28 Jun 2025 10:45:43 +0000 Subject: Fix test exec-bug-4f0b5767ac error when MSYS scrubs PATH --- tests/exec.test | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/exec.test b/tests/exec.test index ac9530f..3205f24 100644 --- a/tests/exec.test +++ b/tests/exec.test @@ -28,7 +28,7 @@ testConstraint noosxCI [expr {![info exists ::env(MAC_CI)]}] # no idea how to check it in GHA programmatically, so simply disable it (todo: rewrite with better check later) if {[testConstraint win] && ![info exists ::env(CI)] && [info exists ::env(LOCALAPPDATA)] && - [file exists [file join $::env(LOCALAPPDATA) "Microsoft" "WindowsApps" "winget.exe"]]} { + [auto_execok winget] ne {}} { testConstraint haveWinget 1 } -- cgit v0.12