summaryrefslogtreecommitdiffstats
path: root/generic
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2022-09-09 12:04:29 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2022-09-09 12:04:29 (GMT)
commit673f931995a184eea390ad5d745cd102312e6343 (patch)
tree64996d15edbe3254b9f8d505324bfa1c9c8c1329 /generic
parent85287d9e6771e7590ae1e765623cce7dbacc7eee (diff)
downloadtcl-673f931995a184eea390ad5d745cd102312e6343.zip
tcl-673f931995a184eea390ad5d745cd102312e6343.tar.gz
tcl-673f931995a184eea390ad5d745cd102312e6343.tar.bz2
Change TclObjInterpProc() to a macro, since extensions should never invoke it directly, always through TclGetObjInterpProc()
Diffstat (limited to 'generic')
-rw-r--r--generic/tclBasic.c1
-rw-r--r--generic/tclIntDecls.h2
-rw-r--r--generic/tclProc.c2
-rw-r--r--generic/tclStubInit.c1
4 files changed, 6 insertions, 0 deletions
diff --git a/generic/tclBasic.c b/generic/tclBasic.c
index 4bacba6..b806c33 100644
--- a/generic/tclBasic.c
+++ b/generic/tclBasic.c
@@ -780,6 +780,7 @@ Tcl_CreateInterp(void)
Tcl_MutexUnlock(&cancelLock);
}
+#undef TclObjInterpProc
if (commandTypeInit == 0) {
TclRegisterCommandTypeName(TclObjInterpProc, "proc");
TclRegisterCommandTypeName(TclEnsembleImplementationCmd, "ensemble");
diff --git a/generic/tclIntDecls.h b/generic/tclIntDecls.h
index 69aee7c..588a1fa 100644
--- a/generic/tclIntDecls.h
+++ b/generic/tclIntDecls.h
@@ -1418,6 +1418,8 @@ extern const TclIntStubs *tclIntStubsPtr;
#undef TclGuessPackageName
#undef TclUnusedStubEntry
#undef TclSetPreInitScript
+#undef TclObjInterpProc
+#define TclObjInterpProc TclGetObjInterpProc()
#ifndef TCL_NO_DEPRECATED
# define TclSetPreInitScript Tcl_SetPreInitScript
# define TclGuessPackageName(fileName, pkgName) ((void)fileName,(void)pkgName,0)
diff --git a/generic/tclProc.c b/generic/tclProc.c
index 9a3785c..059e751 100644
--- a/generic/tclProc.c
+++ b/generic/tclProc.c
@@ -148,6 +148,7 @@ static const Tcl_ObjType lambdaType = {
*----------------------------------------------------------------------
*/
+#undef TclObjInterpProc
int
Tcl_ProcObjCmd(
TCL_UNUSED(ClientData),
@@ -1645,6 +1646,7 @@ TclPushProcCallFrame(
*----------------------------------------------------------------------
*/
+#undef TclObjInterpProc
int
TclObjInterpProc(
ClientData clientData, /* Record describing procedure to be
diff --git a/generic/tclStubInit.c b/generic/tclStubInit.c
index 87c9d0a..ae00b04 100644
--- a/generic/tclStubInit.c
+++ b/generic/tclStubInit.c
@@ -83,6 +83,7 @@
#undef Tcl_UtfAtIndex
#undef Tcl_GetRange
#undef Tcl_GetUniChar
+#undef TclObjInterpProc
#if defined(_WIN32) || defined(__CYGWIN__)
#define TclWinConvertWSAError (void (*)(DWORD))(void *)Tcl_WinConvertError