diff options
author | mi <mi@FreeBSD.org> | 2006-05-18 04:35:55 +0800 |
---|---|---|
committer | mi <mi@FreeBSD.org> | 2006-05-18 04:35:55 +0800 |
commit | b9f0c543e1db30cae3093cea664570b01fde7b9a (patch) | |
tree | 601e79761f507d27e857cf7475319c2c882a9197 /lang/itcl/files | |
parent | cd19e45b413aeb1b942bc925a1164c3562809b39 (diff) | |
download | freebsd-ports-gnome-b9f0c543e1db30cae3093cea664570b01fde7b9a.tar.gz freebsd-ports-gnome-b9f0c543e1db30cae3093cea664570b01fde7b9a.tar.zst freebsd-ports-gnome-b9f0c543e1db30cae3093cea664570b01fde7b9a.zip |
Update the itcl/itk from 3.2 to 3.3 (released in April 2005). The
installed libraries are now named libitcl.so.3 & libitk.so.3 instead
of having the version be part of the libname (libitcl33.so.1). The
itclConfig.sh and itkConfig.sh are now also installed, which is required
by some software (such as the insight -- a gdb frontend).
Fix-up the (unchanged) iwidgets port to reflect the above and improve it
to not require its own copy of the itcl tree at install time.
Approved by: maintainer
Fix-up the tkdesk port to reflect the itcl/itk changes, which required
updating it to the 2.0p2 (from 2.0). (This lovely piece of software
badly needs a caring maintainer, BTW.) While here, teach tkdesk to use
installed blt instead of building its own.
The only iwidget/itk/itcl consumer that remains broken is net/smm++ (a
MUD client). This should change as soon as the maintainer get back to
me.
Diffstat (limited to 'lang/itcl/files')
-rw-r--r-- | lang/itcl/files/Makefile.lib | 20 | ||||
-rw-r--r-- | lang/itcl/files/patch+generic+itcl_class.c | 11 | ||||
-rw-r--r-- | lang/itcl/files/patch-generic+itcl.h | 107 | ||||
-rw-r--r-- | lang/itcl/files/patch-generic+itclInt.h | 101 | ||||
-rw-r--r-- | lang/itcl/files/patch-generic+itcl_cmds.c | 222 | ||||
-rw-r--r-- | lang/itcl/files/patch-tests+ensemble.test | 32 |
6 files changed, 11 insertions, 482 deletions
diff --git a/lang/itcl/files/Makefile.lib b/lang/itcl/files/Makefile.lib index 83e2f77022ba..5b5b52ebb8b2 100644 --- a/lang/itcl/files/Makefile.lib +++ b/lang/itcl/files/Makefile.lib @@ -1,5 +1,5 @@ NOPROFILE= yes -LIB= itcl${MAJOR}${MINOR} +LIB= itcl ITCL_LIBRARY= ${PREFIX}/lib/itcl${MAJOR}.${MINOR} CFLAGS+= -I. -I./../generic \ -I${PREFIX}/include/tcl8.4/generic \ @@ -17,13 +17,15 @@ LDADD+= -L${PREFIX}/lib -ltcl84 SRCS= itcl_bicmds.c itcl_class.c itcl_cmds.c itcl_ensemble.c \ itcl_linkage.c itcl_methods.c itcl_migrate.c itcl_objects.c \ - itcl_obsolete.c itcl_parse.c itcl_util.c \ - itclStubInit.c itclStubLib.c + itcl_parse.c itcl_util.c itclStubInit.c itclStubLib.c -pkgIndex.tcl: ${.CURDIR}/pkgIndex.tcl.in - sed -e "s#@RELPATH@#..#" -e "s#@VERSION@#${MAJOR}.${MINOR}#" \ - -e "s#@itcl_LIB_FILE@#${SHLIB_NAME}#" \ - < ${.CURDIR}/pkgIndex.tcl.in > pkgIndex.tcl +pkgIndex.tcl: pkgIndex.tcl.in + sed -e 's#"@PKG_LIB_FILE@"#.. ${SHLIB_NAME}#' -e "s#@PACKAGE_VERSION@#${MAJOR}.${MINOR}#" \ + < $> > $@ + +itclConfig.sh: itclConfig.sh.in + sed -e 's#@itcl_LIB_FILE@#${SHLIB_NAME}#g' \ + -e 's#@itcl_LIB_SPEC@#-L${LIBDIR} -litcl#' < $> > $@ SCRIPTDIR= lib/itcl${MAJOR}.${MINOR} SCRIPTPATH= ${PREFIX}/${SCRIPTDIR} @@ -33,8 +35,8 @@ INCDIR= ${PREFIX}/include/itcl${MAJOR}.${MINOR} ${SCRIPTPATH} ${INCDIR}: mkdir -p ${.TARGET} -beforeinstall: pkgIndex.tcl ${SCRIPTPATH} ${INCDIR} - ${BSD_INSTALL_DATA} pkgIndex.tcl ${.CURDIR}/library/itcl.tcl \ +beforeinstall: pkgIndex.tcl itclConfig.sh ${SCRIPTPATH} ${INCDIR} + ${BSD_INSTALL_DATA} pkgIndex.tcl itclConfig.sh ${.CURDIR}/library/itcl.tcl \ ${SCRIPTPATH} ${BSD_INSTALL_DATA} ${.CURDIR}/generic/*.h ${INCDIR} diff --git a/lang/itcl/files/patch+generic+itcl_class.c b/lang/itcl/files/patch+generic+itcl_class.c deleted file mode 100644 index 4aca04af2cf5..000000000000 --- a/lang/itcl/files/patch+generic+itcl_class.c +++ /dev/null @@ -1,11 +0,0 @@ ---- generic/itcl_class.c.orig Mon May 21 20:35:38 2001 -+++ generic/itcl_class.c Sun Dec 25 15:28:16 2005 -@@ -732,7 +732,7 @@ - /* flags */ 0); - - if ( !classNs && contextNs->parentPtr != NULL && -- (*path != ':' || *(path+1) != ':') ) { -+ (strncmp(path, "::", 2) != 0) ) { - - if (strcmp(contextNs->name, path) == 0) { - classNs = contextNs; diff --git a/lang/itcl/files/patch-generic+itcl.h b/lang/itcl/files/patch-generic+itcl.h deleted file mode 100644 index 27c74b36f278..000000000000 --- a/lang/itcl/files/patch-generic+itcl.h +++ /dev/null @@ -1,107 +0,0 @@ -=================================================================== -RCS file: /cvsroot/incrtcl/incrTcl/itcl/generic/itcl.h,v -retrieving revision 1.15 -retrieving revision 1.19 -diff -u -r1.15 -r1.19 ---- generic/itcl.h 2001/05/25 00:12:29 1.15 -+++ generic/itcl.h 2002/01/16 22:29:41 1.19 -@@ -40,9 +40,9 @@ - * http://www.tcltk.com/itcl - * - * modified for Stubs 5/20/1999 by -- * David Gravereaux <davygrvy@bigfoot.com> -+ * David Gravereaux <davygrvy@pobox.com> - * -- * RCS: $Id: itcl.h,v 1.15 2001/05/25 00:12:29 davygrvy Exp $ -+ * RCS: $Id: itcl.h,v 1.19 2002/01/16 22:29:41 andreas_kupries Exp $ - * ======================================================================== - * Copyright (c) 1993-1998 Lucent Technologies, Inc. - * ------------------------------------------------------------------------ -@@ -54,17 +54,6 @@ - - #include "tcl.h" - --#undef TCL_STORAGE_CLASS --#ifdef BUILD_itcl --# define TCL_STORAGE_CLASS DLLEXPORT --#else --# ifdef USE_ITCL_STUBS --# define TCL_STORAGE_CLASS --# else --# define TCL_STORAGE_CLASS DLLIMPORT --# endif --#endif -- - #define ITCL_VERSION "3.2" - #define ITCL_PATCH_LEVEL "3.2.1" - #define ITCL_MAJOR_VERSION 3 -@@ -80,6 +69,58 @@ - - #ifndef RC_INVOKED - -+#undef TCL_STORAGE_CLASS -+#ifdef BUILD_itcl -+# define TCL_STORAGE_CLASS DLLEXPORT -+#else -+# ifdef USE_ITCL_STUBS -+# define TCL_STORAGE_CLASS -+# else -+# define TCL_STORAGE_CLASS DLLIMPORT -+# endif -+#endif -+ -+/* -+ * Fix the Borland bug that's in the EXTERN macro from tcl.h. -+ */ -+#ifndef TCL_EXTERN -+# undef DLLIMPORT -+# undef DLLEXPORT -+# if defined(STATIC_BUILD) -+# define DLLIMPORT -+# define DLLEXPORT -+# elif (defined(__WIN32__) && (defined(_MSC_VER) || (__BORLANDC__ >= 0x0550) || (defined(__GNUC__) && defined(__declspec)))) \ -+ || (defined(MAC_TCL) && FUNCTION_DECLSPEC) -+# define DLLIMPORT __declspec(dllimport) -+# define DLLEXPORT __declspec(dllexport) -+# elif defined(__BORLANDC__) -+# define OLDBORLAND 1 -+# define DLLIMPORT __import -+# define DLLEXPORT __export -+# else -+# define DLLIMPORT -+# define DLLEXPORT -+# endif -+ -+ /* -+ * Make sure name mangling won't happen when the c++ language extensions -+ * are used. -+ */ -+# ifdef __cplusplus -+# define TCL_CPP "C" -+# else -+# define TCL_CPP -+# endif -+ /* -+ * Borland requires the attributes be placed after the return type. -+ */ -+# ifdef OLDBORLAND -+# define TCL_EXTERN(rtnType) extern TCL_CPP rtnType TCL_STORAGE_CLASS -+# else -+# define TCL_EXTERN(rtnType) extern TCL_CPP TCL_STORAGE_CLASS rtnType -+# endif -+#endif -+ - /* - * Protection levels: - * -@@ -152,9 +193,7 @@ - - #ifdef USE_ITCL_STUBS - --#ifdef __cplusplus --extern "C" --#endif -+extern TCL_CPP - CONST char * Itcl_InitStubs _ANSI_ARGS_((Tcl_Interp *interp, - char *version, int exact)); - #else diff --git a/lang/itcl/files/patch-generic+itclInt.h b/lang/itcl/files/patch-generic+itclInt.h deleted file mode 100644 index 2d468fc6990f..000000000000 --- a/lang/itcl/files/patch-generic+itclInt.h +++ /dev/null @@ -1,101 +0,0 @@ -=================================================================== -RCS file: /cvsroot/incrtcl/incrTcl/itcl/generic/itclInt.h,v -retrieving revision 1.7 -retrieving revision 1.11 -diff -u -r1.7 -r1.11 ---- generic/itclInt.h 2001/04/07 07:20:53 1.7 -+++ generic/itclInt.h 2003/12/23 06:58:27 1.11 -@@ -39,7 +39,7 @@ - * mmclennan@lucent.com - * http://www.tcltk.com/itcl - * -- * RCS: $Id: itclInt.h,v 1.7 2001/04/07 07:20:53 davygrvy Exp $ -+ * RCS: $Id: itclInt.h,v 1.11 2003/12/23 06:58:27 davygrvy Exp $ - * ======================================================================== - * Copyright (c) 1993-1998 Lucent Technologies, Inc. - * ------------------------------------------------------------------------ -@@ -49,14 +49,64 @@ - #ifndef ITCLINT_H - #define ITCLINT_H - --#include "itcl.h" - #include "tclInt.h" -+#include "itcl.h" - - #ifdef BUILD_itcl - # undef TCL_STORAGE_CLASS - # define TCL_STORAGE_CLASS DLLEXPORT - #endif - -+/* -+ * Fix Tcl bug #803489 the right way. We need to always use the old Stub -+ * slot positions, not the new broken ones. I do like that these functions -+ * have moved to the public space, but the slot change is the killer and is -+ * the painful side affect. -+ */ -+ -+#if defined(USE_TCL_STUBS) && \ -+ (TCL_MAJOR_VERSION == 8 && TCL_MINOR_VERSION >= 5) -+# undef Tcl_CreateNamespace -+# define Tcl_CreateNamespace \ -+ (tclIntStubsPtr->tcl_CreateNamespace) -+# undef Tcl_DeleteNamespace -+# define Tcl_DeleteNamespace \ -+ (tclIntStubsPtr->tcl_DeleteNamespace) -+# undef Tcl_AppendExportList -+# define Tcl_AppendExportList \ -+ (tclIntStubsPtr->tcl_AppendExportList) -+# undef Tcl_Export -+# define Tcl_Export \ -+ (tclIntStubsPtr->tcl_Export) -+# undef Tcl_Import -+# define Tcl_Import \ -+ (tclIntStubsPtr->tcl_Import) -+# undef Tcl_ForgetImport -+# define Tcl_ForgetImport \ -+ (tclIntStubsPtr->tcl_ForgetImport) -+# undef Tcl_GetCurrentNamespace -+# define Tcl_GetCurrentNamespace \ -+ (tclIntStubsPtr->tcl_GetCurrentNamespace) -+# undef Tcl_GetGlobalNamespace -+# define Tcl_GetGlobalNamespace \ -+ (tclIntStubsPtr->tcl_GetGlobalNamespace) -+# undef Tcl_FindNamespace -+# define Tcl_FindNamespace \ -+ (tclIntStubsPtr->tcl_FindNamespace) -+# undef Tcl_FindCommand -+# define Tcl_FindCommand \ -+ (tclIntStubsPtr->tcl_FindCommand) -+# undef Tcl_GetCommandFromObj -+# define Tcl_GetCommandFromObj \ -+ (tclIntStubsPtr->tcl_GetCommandFromObj) -+# undef Tcl_GetCommandFullName -+# define Tcl_GetCommandFullName \ -+ (tclIntStubsPtr->tcl_GetCommandFullName) -+#endif -+ -+#define TCL_DOES_STUBS \ -+ (TCL_MAJOR_VERSION > 8 || TCL_MAJOR_VERSION == 8 && (TCL_MINOR_VERSION > 1 || \ -+ (TCL_MINOR_VERSION == 1 && TCL_RELEASE_LEVEL == TCL_FINAL_RELEASE))) - - /* - * Common info for managing all known objects. -@@ -255,15 +305,11 @@ - */ - - #undef assert --#ifdef NDEBUG -+#ifndef DEBUG - #define assert(EX) ((void)0) - #else --#if defined(__STDC__) --#define assert(EX) (void)((EX) || (Itcl_Assert(#EX, __FILE__, __LINE__), 0)) --#else --#define assert(EX) (void)((EX) || (Itcl_Assert("EX", __FILE__, __LINE__), 0)) --#endif /* __STDC__ */ --#endif /* NDEBUG */ -+#define assert(EX) (void)((EX) || (Itcl_Assert(STRINGIFY(EX), __FILE__, __LINE__), 0)) -+#endif /* DEBUG */ - - #undef TCL_STORAGE_CLASS - #define TCL_STORAGE_CLASS DLLIMPORT diff --git a/lang/itcl/files/patch-generic+itcl_cmds.c b/lang/itcl/files/patch-generic+itcl_cmds.c deleted file mode 100644 index d6c48a9b32dd..000000000000 --- a/lang/itcl/files/patch-generic+itcl_cmds.c +++ /dev/null @@ -1,222 +0,0 @@ -=================================================================== -RCS file: /cvsroot/incrtcl/incrTcl/itcl/generic/itcl_cmds.c,v -retrieving revision 1.13 -retrieving revision 1.15 -diff -u -r1.13 -r1.15 ---- generic/itcl_cmds.c 2001/05/22 01:50:21 1.13 -+++ generic/itcl_cmds.c 2002/01/10 11:43:37 1.15 -@@ -21,7 +21,7 @@ - * mmclennan@lucent.com - * http://www.tcltk.com/itcl - * -- * RCS: $Id: itcl_cmds.c,v 1.13 2001/05/22 01:50:21 davygrvy Exp $ -+ * RCS: $Id: itcl_cmds.c,v 1.15 2002/01/10 11:43:37 davygrvy Exp $ - * ======================================================================== - * Copyright (c) 1993-1998 Lucent Technologies, Inc. - * ------------------------------------------------------------------------ -@@ -469,7 +469,7 @@ - int forceFullNames = 0; - - char *pattern; -- CONST char *name; -+ CONST char *cmdName; - int newEntry, handledActiveNs; - Tcl_HashTable unique; - Tcl_HashEntry *entry; -@@ -477,7 +477,7 @@ - Itcl_Stack search; - Tcl_Command cmd, originalCmd; - Namespace *nsPtr; -- Tcl_Obj *listPtr, *objPtr; -+ Tcl_Obj *objPtr; - - if (objc > 2) { - Tcl_WrongNumArgs(interp, 1, objv, "?pattern?"); -@@ -485,7 +485,7 @@ - } - - if (objc == 2) { -- pattern = Tcl_GetStringFromObj(objv[1], (int*)NULL); -+ pattern = Tcl_GetString(objv[1]); - forceFullNames = (strstr(pattern, "::") != NULL); - } else { - pattern = NULL; -@@ -497,7 +497,6 @@ - * in this interpreter. If we find any commands that - * represent classes, report them. - */ -- listPtr = Tcl_NewListObj(0, (Tcl_Obj* CONST*)NULL); - - Itcl_InitStack(&search); - Itcl_PushStack((ClientData)globalNs, &search); -@@ -532,10 +531,10 @@ - - objPtr = Tcl_NewStringObj((char*)NULL, 0); - Tcl_GetCommandFullName(interp, cmd, objPtr); -- name = Tcl_GetStringFromObj(objPtr, (int*)NULL); -+ cmdName = Tcl_GetString(objPtr); - } else { -- name = Tcl_GetCommandName(interp, cmd); -- objPtr = Tcl_NewStringObj(name, -1); -+ cmdName = Tcl_GetCommandName(interp, cmd); -+ objPtr = Tcl_NewStringObj(cmdName, -1); - } - - if (originalCmd) { -@@ -543,9 +542,10 @@ - } - Tcl_CreateHashEntry(&unique, (char*)cmd, &newEntry); - -- if (newEntry && (!pattern || Tcl_StringMatch(name, pattern))) { -+ if (newEntry && -+ (!pattern || Tcl_StringMatch(cmdName, pattern))) { - Tcl_ListObjAppendElement((Tcl_Interp*)NULL, -- listPtr, objPtr); -+ Tcl_GetObjResult(interp), objPtr); - } - } - entry = Tcl_NextHashEntry(&place); -@@ -565,7 +565,6 @@ - Tcl_DeleteHashTable(&unique); - Itcl_DeleteStack(&search); - -- Tcl_SetObjResult(interp, listPtr); - return TCL_OK; - } - -@@ -598,8 +597,8 @@ - ItclClass *classDefn = NULL; - ItclClass *isaDefn = NULL; - -- char *name, *token; -- CONST char *cmdName; -+ char *name = NULL, *token = NULL; -+ CONST char *cmdName = NULL; - int pos, newEntry, match, handledActiveNs; - ItclObject *contextObj; - Tcl_HashTable unique; -@@ -609,7 +608,7 @@ - Tcl_Command cmd, originalCmd; - Namespace *nsPtr; - Command *cmdPtr; -- Tcl_Obj *listPtr, *objPtr; -+ Tcl_Obj *objPtr; - - /* - * Parse arguments: -@@ -617,7 +616,7 @@ - */ - pos = 0; - while (++pos < objc) { -- token = Tcl_GetStringFromObj(objv[pos], (int*)NULL); -+ token = Tcl_GetString(objv[pos]); - if (*token != '-') { - if (!pattern) { - pattern = token; -@@ -627,7 +626,7 @@ - } - } - else if ((pos+1 < objc) && (strcmp(token,"-class") == 0)) { -- name = Tcl_GetStringFromObj(objv[pos+1], (int*)NULL); -+ name = Tcl_GetString(objv[pos+1]); - classDefn = Itcl_FindClass(interp, name, /* autoload */ 1); - if (classDefn == NULL) { - return TCL_ERROR; -@@ -635,7 +634,7 @@ - pos++; - } - else if ((pos+1 < objc) && (strcmp(token,"-isa") == 0)) { -- name = Tcl_GetStringFromObj(objv[pos+1], (int*)NULL); -+ name = Tcl_GetString(objv[pos+1]); - isaDefn = Itcl_FindClass(interp, name, /* autoload */ 1); - if (isaDefn == NULL) { - return TCL_ERROR; -@@ -669,7 +668,6 @@ - * in this interpreter. If we find any commands that - * represent objects, report them. - */ -- listPtr = Tcl_NewListObj(0, (Tcl_Obj* CONST*)NULL); - - Itcl_InitStack(&search); - Itcl_PushStack((ClientData)globalNs, &search); -@@ -709,7 +707,7 @@ - - objPtr = Tcl_NewStringObj((char*)NULL, 0); - Tcl_GetCommandFullName(interp, cmd, objPtr); -- name = Tcl_GetStringFromObj(objPtr, (int*)NULL); -+ cmdName = Tcl_GetString(objPtr); - } else { - cmdName = Tcl_GetCommandName(interp, cmd); - objPtr = Tcl_NewStringObj(cmdName, -1); -@@ -718,7 +716,8 @@ - Tcl_CreateHashEntry(&unique, (char*)cmd, &newEntry); - - match = 0; -- if (newEntry && (!pattern || Tcl_StringMatch(name, pattern))) { -+ if (newEntry && -+ (!pattern || Tcl_StringMatch(cmdName, pattern))) { - if (!classDefn || (contextObj->classDefn == classDefn)) { - if (!isaDefn) { - match = 1; -@@ -736,10 +735,9 @@ - - if (match) { - Tcl_ListObjAppendElement((Tcl_Interp*)NULL, -- listPtr, objPtr); -+ Tcl_GetObjResult(interp), objPtr); - } else { -- Tcl_IncrRefCount(objPtr); /* throw away the name */ -- Tcl_DecrRefCount(objPtr); -+ Tcl_DecrRefCount(objPtr); /* throw away the name */ - } - } - entry = Tcl_NextHashEntry(&place); -@@ -759,7 +757,6 @@ - Tcl_DeleteHashTable(&unique); - Itcl_DeleteStack(&search); - -- Tcl_SetObjResult(interp, listPtr); - return TCL_OK; - } - -@@ -821,9 +818,8 @@ - } - else if (result != TCL_OK) { - char mesg[256], *name; -- name = Tcl_GetStringFromObj(objv[0], (int*)NULL); -- sprintf(mesg, "\n (%.100s body line %d)", -- name, interp->errorLine); -+ name = Tcl_GetString(objv[0]); -+ sprintf(mesg, "\n (%.100s body line %d)", name, interp->errorLine); - Tcl_AddErrorInfo(interp, mesg); - } - -@@ -865,7 +861,7 @@ - * then delete them. - */ - for (i=1; i < objc; i++) { -- name = Tcl_GetStringFromObj(objv[i], (int*)NULL); -+ name = Tcl_GetString(objv[i]); - cdefn = Itcl_FindClass(interp, name, /* autoload */ 1); - if (cdefn == NULL) { - return TCL_ERROR; -@@ -873,7 +869,7 @@ - } - - for (i=1; i < objc; i++) { -- name = Tcl_GetStringFromObj(objv[i], (int*)NULL); -+ name = Tcl_GetString(objv[i]); - cdefn = Itcl_FindClass(interp, name, /* autoload */ 0); - - if (cdefn) { ---- generic/itcl_cmds.c.orig Sun Dec 25 15:16:04 2005 -+++ generic/itcl_cmds.c Sun Dec 25 15:28:16 2005 -@@ -996,7 +996,7 @@ - * then return it as is. - */ - token = Tcl_GetStringFromObj(objv[1], (int*)NULL); -- if (*token == ':' && *(token+1) == ':') { -+ if (strncmp(token, "::", 2) == 0) { - Tcl_SetObjResult(interp, objv[1]); - return TCL_OK; - } diff --git a/lang/itcl/files/patch-tests+ensemble.test b/lang/itcl/files/patch-tests+ensemble.test deleted file mode 100644 index 7470860d29bc..000000000000 --- a/lang/itcl/files/patch-tests+ensemble.test +++ /dev/null @@ -1,32 +0,0 @@ -=================================================================== -RCS file: /cvsroot/incrtcl/incrTcl/itcl/tests/ensemble.test,v -retrieving revision 1.3 -retrieving revision 1.4 -diff -u -r1.3 -r1.4 ---- tests/ensemble.test 2000/06/01 20:34:35 1.3 -+++ tests/ensemble.test 2001/11/05 19:42:11 1.4 -@@ -6,7 +6,7 @@ - # mmclennan@lucent.com - # http://www.tcltk.com/itcl - # --# RCS: $Id: ensemble.test,v 1.3 2000/06/01 20:34:35 wart Exp $ -+# RCS: $Id: ensemble.test,v 1.4 2001/11/05 19:42:11 hobbs Exp $ - # ---------------------------------------------------------------------- - # Copyright (c) 1993-1998 Lucent Technologies, Inc. - # ====================================================================== -@@ -45,8 +45,13 @@ - } {{one: 1} {two: 2 3} {three: 3 4 5}} - - test ensemble-1.5 {invoking parts with improper arguments} { -- list [catch "test_numbers three x" msg] $msg --} {1 {no value given for parameter "y" to "test_numbers three"}} -+ set res [catch "test_numbers three x" msg] -+ if {[package vsatisfies [package provide Tcl] 8.4]} { -+ lappend res [string match "wrong # args*" $msg] -+ } else { -+ lappend res [string match "no value given*" $msg] -+ } -+} {1 1} - - test ensemble-1.6 {errors trigger a usage summary} { - list [catch "test_numbers foo x y" msg] $msg |