diff options
author | dgp <dgp@users.sourceforge.net> | 2017-12-15 16:50:50 (GMT) |
---|---|---|
committer | dgp <dgp@users.sourceforge.net> | 2017-12-15 16:50:50 (GMT) |
commit | 67f6f5cdb190d17b5178a5d5c8d090440bbc1005 (patch) | |
tree | cbf232910656e5ba9ce6703d5220f37299f28760 /generic/tclObj.c | |
parent | 4fb66d5d55a3239a342ae799da586966fe8326cf (diff) | |
download | tcl-67f6f5cdb190d17b5178a5d5c8d090440bbc1005.zip tcl-67f6f5cdb190d17b5178a5d5c8d090440bbc1005.tar.gz tcl-67f6f5cdb190d17b5178a5d5c8d090440bbc1005.tar.bz2 |
Revert the (int -> size_t) transition of the "cmdEpoch" field of
the struct Command that was part of [ff3f6a12a8d099ef], and related changes.
This change broke the ability of Itcl 3.4 built against Tcl 8.6 headers
to successfully [load] into and operate in a Tcl 8.7 interp.
"Command" is a private struct, and Itcl 3 should have respected that, but
it has not, and changing the size of the cmdEpoch field broke the ability
of Itcl 3 to operate on later fields of the struct, notably the deleteProc,
which it makes extensive use of.
I believe we should keep the change in the Tcl 9 sources.
Diffstat (limited to 'generic/tclObj.c')
-rw-r--r-- | generic/tclObj.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/generic/tclObj.c b/generic/tclObj.c index 1a00011..1aa24f2 100644 --- a/generic/tclObj.c +++ b/generic/tclObj.c @@ -354,7 +354,7 @@ typedef struct ResolvedCmdName { * Before using the cached pointer, we check * if the namespace's epoch was incremented; * if so, this cached pointer is invalid. */ - size_t cmdEpoch; /* Value of the command's cmdEpoch when this + int cmdEpoch; /* Value of the command's cmdEpoch when this * pointer was cached. Before using the cached * pointer, we check if the cmd's epoch was * incremented; if so, the cmd was renamed, |