From 74e46544476cae3f150dfa7e28c803c3b3bfb7f6 Mon Sep 17 00:00:00 2001 From: "jan.nijtmans" Date: Wed, 27 Mar 2019 23:48:10 +0000 Subject: Make Tcl_StringMatch() into a wrapper macro around Tcl_StringCaseMatch() --- generic/tcl.decls | 2 +- generic/tclDecls.h | 7 +++++-- generic/tclStubInit.c | 2 ++ generic/tclUtil.c | 4 +++- 4 files changed, 11 insertions(+), 4 deletions(-) diff --git a/generic/tcl.decls b/generic/tcl.decls index 5b3afeb..d404d25 100644 --- a/generic/tcl.decls +++ b/generic/tcl.decls @@ -864,7 +864,7 @@ declare 244 {nostub {Don't use this function in a stub-enabled extension}} { void Tcl_StaticPackage(Tcl_Interp *interp, const char *pkgName, Tcl_PackageInitProc *initProc, Tcl_PackageInitProc *safeInitProc) } -declare 245 { +declare 245 {deprecated {No longer in use, changed to macro}} { int Tcl_StringMatch(const char *str, const char *pattern) } declare 246 {deprecated {}} { diff --git a/generic/tclDecls.h b/generic/tclDecls.h index 865c960..c50b41f 100644 --- a/generic/tclDecls.h +++ b/generic/tclDecls.h @@ -754,7 +754,8 @@ EXTERN void Tcl_StaticPackage(Tcl_Interp *interp, Tcl_PackageInitProc *initProc, Tcl_PackageInitProc *safeInitProc); /* 245 */ -EXTERN int Tcl_StringMatch(const char *str, const char *pattern); +TCL_DEPRECATED("No longer in use, changed to macro") +int Tcl_StringMatch(const char *str, const char *pattern); /* 246 */ TCL_DEPRECATED("") int Tcl_TellOld(Tcl_Channel chan); @@ -2176,7 +2177,7 @@ typedef struct TclStubs { int (*tcl_SplitList) (Tcl_Interp *interp, const char *listStr, int *argcPtr, const char ***argvPtr); /* 242 */ void (*tcl_SplitPath) (const char *path, int *argcPtr, const char ***argvPtr); /* 243 */ TCL_DEPRECATED_API("Don't use this function in a stub-enabled extension") void (*tcl_StaticPackage) (Tcl_Interp *interp, const char *pkgName, Tcl_PackageInitProc *initProc, Tcl_PackageInitProc *safeInitProc); /* 244 */ - int (*tcl_StringMatch) (const char *str, const char *pattern); /* 245 */ + TCL_DEPRECATED_API("No longer in use, changed to macro") int (*tcl_StringMatch) (const char *str, const char *pattern); /* 245 */ TCL_DEPRECATED_API("") int (*tcl_TellOld) (Tcl_Channel chan); /* 246 */ TCL_DEPRECATED_API("No longer in use, changed to macro") int (*tcl_TraceVar) (Tcl_Interp *interp, const char *varName, int flags, Tcl_VarTraceProc *proc, ClientData clientData); /* 247 */ int (*tcl_TraceVar2) (Tcl_Interp *interp, const char *part1, const char *part2, int flags, Tcl_VarTraceProc *proc, ClientData clientData); /* 248 */ @@ -4073,6 +4074,8 @@ extern const TclStubs *tclStubsPtr; #define Tcl_GetUnicode(objPtr) Tcl_GetUnicodeFromObj((objPtr), NULL) #undef Tcl_BackgroundError #define Tcl_BackgroundError(interp) Tcl_BackgroundException((interp), TCL_ERROR) +#undef Tcl_StringMatch +#define Tcl_StringMatch(str, pattern) Tcl_StringCaseMatch((str), (pattern), 0) /* * Deprecated Tcl procedures: diff --git a/generic/tclStubInit.c b/generic/tclStubInit.c index b1a1cee..197ed84 100644 --- a/generic/tclStubInit.c +++ b/generic/tclStubInit.c @@ -416,6 +416,8 @@ static int uniCharNcasecmp(const Tcl_UniChar *ucs, const Tcl_UniChar *uct, unsig # define Tcl_FindExecutable 0 # define Tcl_GetUnicode 0 # define TclOldFreeObj 0 +# undef Tcl_StringMatch +# define Tcl_StringMatch 0 # define TclBN_reverse 0 # define TclBN_fast_s_mp_mul_digs 0 # define TclBN_fast_s_mp_sqr 0 diff --git a/generic/tclUtil.c b/generic/tclUtil.c index 0788aed..250a393 100644 --- a/generic/tclUtil.c +++ b/generic/tclUtil.c @@ -2186,6 +2186,7 @@ Tcl_ConcatObj( return resPtr; } +#if !defined(TCL_NO_DEPRECATED) && TCL_MAJOR_VERSION < 9 /* *---------------------------------------------------------------------- * @@ -2204,6 +2205,7 @@ Tcl_ConcatObj( *---------------------------------------------------------------------- */ +#undef Tcl_StringMatch int Tcl_StringMatch( const char *str, /* String. */ @@ -2212,7 +2214,7 @@ Tcl_StringMatch( { return Tcl_StringCaseMatch(str, pattern, 0); } - +#endif /* TCL_NO_DEPRECATED */ /* *---------------------------------------------------------------------- * -- cgit v0.12