summaryrefslogtreecommitdiffstats
path: root/generic
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2022-03-31 16:33:47 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2022-03-31 16:33:47 (GMT)
commitc21ba3a0d2f147398eaea4649b607d9eb72ba0ad (patch)
tree7a665667dcd8c092cacc72e3fad57fe2b3ef2be7 /generic
parent471418d41a9b6c90ad576b6c85ae7764d4b04326 (diff)
downloadtcl-c21ba3a0d2f147398eaea4649b607d9eb72ba0ad.zip
tcl-c21ba3a0d2f147398eaea4649b607d9eb72ba0ad.tar.gz
tcl-c21ba3a0d2f147398eaea4649b607d9eb72ba0ad.tar.bz2
more progress
Diffstat (limited to 'generic')
-rw-r--r--generic/tclAssembly.c12
-rw-r--r--generic/tclCompile.c2
-rw-r--r--generic/tclCompile.h4
-rw-r--r--generic/tclDisassemble.c14
4 files changed, 16 insertions, 16 deletions
diff --git a/generic/tclAssembly.c b/generic/tclAssembly.c
index 3abd4fa..4faf679 100644
--- a/generic/tclAssembly.c
+++ b/generic/tclAssembly.c
@@ -1940,7 +1940,7 @@ MoveExceptionRangesToBasicBlock(
envPtr->exceptArrayPtr + savedExceptArrayNext,
exceptionCount * sizeof(ExceptionRange));
for (i = 0; i < exceptionCount; ++i) {
- curr_bb->foreignExceptions[i].nestingLevel -= envPtr->exceptDepth;
+ curr_bb->foreignExceptions[i].nestingLevel1 -= envPtr->exceptDepth;
}
envPtr->exceptArrayNext = savedExceptArrayNext;
}
@@ -4125,9 +4125,9 @@ StackFreshCatches(
catchIndices[catchDepth] =
TclCreateExceptRange(CATCH_EXCEPTION_RANGE, envPtr);
range = envPtr->exceptArrayPtr + catchIndices[catchDepth];
- range->nestingLevel = envPtr->exceptDepth + catchDepth;
+ range->nestingLevel1 = envPtr->exceptDepth + catchDepth;
envPtr->maxExceptDepth=
- TclMax(range->nestingLevel + 1, (int)envPtr->maxExceptDepth);
+ TclMax(range->nestingLevel1 + 1, envPtr->maxExceptDepth);
range->codeOffset = bbPtr->startOffset;
entryPtr = Tcl_FindHashEntry(&assemEnvPtr->labelHash,
@@ -4187,11 +4187,11 @@ RestoreEmbeddedExceptionRanges(
for (i = 0; i < bbPtr->foreignExceptionCount; ++i) {
range = bbPtr->foreignExceptions + i;
rangeIndex = TclCreateExceptRange(range->type, envPtr);
- range->nestingLevel += envPtr->exceptDepth + bbPtr->catchDepth;
+ range->nestingLevel1 += envPtr->exceptDepth + bbPtr->catchDepth;
memcpy(envPtr->exceptArrayPtr + rangeIndex, range,
sizeof(ExceptionRange));
- if (range->nestingLevel >= (int)envPtr->maxExceptDepth) {
- envPtr->maxExceptDepth = range->nestingLevel + 1;
+ if ((int)range->nestingLevel1 >= (int)envPtr->maxExceptDepth) {
+ envPtr->maxExceptDepth = range->nestingLevel1 + 1;
}
}
diff --git a/generic/tclCompile.c b/generic/tclCompile.c
index 72f5a32..96832a9 100644
--- a/generic/tclCompile.c
+++ b/generic/tclCompile.c
@@ -3409,7 +3409,7 @@ TclCreateExceptRange(
rangePtr = &envPtr->exceptArrayPtr[index];
rangePtr->type = type;
- rangePtr->nestingLevel = envPtr->exceptDepth;
+ rangePtr->nestingLevel1 = envPtr->exceptDepth;
rangePtr->codeOffset = TCL_INDEX_NONE;
rangePtr->numCodeBytes = TCL_INDEX_NONE;
rangePtr->breakOffset = TCL_INDEX_NONE;
diff --git a/generic/tclCompile.h b/generic/tclCompile.h
index 297d9cb..50a43d6 100644
--- a/generic/tclCompile.h
+++ b/generic/tclCompile.h
@@ -89,7 +89,7 @@ typedef enum {
typedef struct {
ExceptionRangeType type; /* The kind of ExceptionRange. */
- int nestingLevel; /* Static depth of the exception range. Used
+ size_t nestingLevel1; /* Static depth of the exception range. Used
* to find the most deeply-nested range
* surrounding a PC at runtime. */
size_t codeOffset; /* Offset of the first instruction byte of the
@@ -1584,7 +1584,7 @@ MODULE_SCOPE int TclPushProcCallFrame(void *clientData,
#define ExceptionRangeStarts(envPtr, index) \
(((envPtr)->exceptDepth++), \
((envPtr)->maxExceptDepth = \
- TclMax((int)(envPtr)->exceptDepth, (int)(envPtr)->maxExceptDepth)), \
+ TclMax((envPtr)->exceptDepth, (envPtr)->maxExceptDepth)), \
((envPtr)->exceptArrayPtr[(index)].codeOffset= CurrentOffset(envPtr)))
#define ExceptionRangeEnds(envPtr, index) \
(((envPtr)->exceptDepth--), \
diff --git a/generic/tclDisassemble.c b/generic/tclDisassemble.c
index cf8a154..260fdde 100644
--- a/generic/tclDisassemble.c
+++ b/generic/tclDisassemble.c
@@ -281,7 +281,7 @@ DisassembleByteCodeObj(
codePtr, codePtr->refCount, codePtr->compileEpoch, iPtr, iPtr->compileEpoch);
Tcl_AppendToObj(bufferObj, " Source ", -1);
PrintSourceToObj(bufferObj, codePtr->source,
- TclMin((int)codePtr->numSrcBytes, 55));
+ TclMin(codePtr->numSrcBytes, 55));
GetLocationInformation(codePtr->procPtr, &fileObj, &line);
if (line >= 0 && fileObj != NULL) {
Tcl_AppendPrintfToObj(bufferObj, "\n File \"%s\" Line %d",
@@ -358,8 +358,8 @@ DisassembleByteCodeObj(
ExceptionRange *rangePtr = &codePtr->exceptArrayPtr[i];
Tcl_AppendPrintfToObj(bufferObj,
- " %d: level %d, %s, pc %" TCL_Z_MODIFIER "u-%" TCL_Z_MODIFIER "u, ",
- i, rangePtr->nestingLevel,
+ " %d: level %" TCL_Z_MODIFIER "u, %s, pc %" TCL_Z_MODIFIER "u-%" TCL_Z_MODIFIER "u, ",
+ i, rangePtr->nestingLevel1,
(rangePtr->type==LOOP_EXCEPTION_RANGE ? "loop" : "catch"),
rangePtr->codeOffset,
(rangePtr->codeOffset + rangePtr->numCodeBytes - 1));
@@ -1144,15 +1144,15 @@ DisassembleByteCodeAsDicts(
switch (rangePtr->type) {
case LOOP_EXCEPTION_RANGE:
Tcl_ListObjAppendElement(NULL, exn, Tcl_ObjPrintf(
- "type %s level %d from %" TCL_Z_MODIFIER "u to %" TCL_Z_MODIFIER "u break %" TCL_Z_MODIFIER "u continue %" TCL_Z_MODIFIER "u",
- "loop", rangePtr->nestingLevel, rangePtr->codeOffset,
+ "type %s level %" TCL_Z_MODIFIER "u from %" TCL_Z_MODIFIER "u to %" TCL_Z_MODIFIER "u break %" TCL_Z_MODIFIER "u continue %" TCL_Z_MODIFIER "u",
+ "loop", rangePtr->nestingLevel1, rangePtr->codeOffset,
rangePtr->codeOffset + rangePtr->numCodeBytes - 1,
rangePtr->breakOffset, rangePtr->continueOffset));
break;
case CATCH_EXCEPTION_RANGE:
Tcl_ListObjAppendElement(NULL, exn, Tcl_ObjPrintf(
- "type %s level %d from %" TCL_Z_MODIFIER "u to %" TCL_Z_MODIFIER "u catch %" TCL_Z_MODIFIER "u",
- "catch", rangePtr->nestingLevel, rangePtr->codeOffset,
+ "type %s level %" TCL_Z_MODIFIER "u from %" TCL_Z_MODIFIER "u to %" TCL_Z_MODIFIER "u catch %" TCL_Z_MODIFIER "u",
+ "catch", rangePtr->nestingLevel1, rangePtr->codeOffset,
rangePtr->codeOffset + rangePtr->numCodeBytes - 1,
rangePtr->catchOffset));
break;