diff options
author | jan.nijtmans <nijtmans@users.sourceforge.net> | 2023-10-04 21:12:59 (GMT) |
---|---|---|
committer | jan.nijtmans <nijtmans@users.sourceforge.net> | 2023-10-04 21:12:59 (GMT) |
commit | 8f1f56d42b418a9e91029a8c59be886facf7cb21 (patch) | |
tree | e56c722c99076cf07c7240789f95436896d39eed /generic/tclTest.c | |
parent | cb6c9c4787b898a85c3b1577906d50d0ba793118 (diff) | |
parent | 600c5b59541d100659c84992a2e118b7eba65e41 (diff) | |
download | tcl-8f1f56d42b418a9e91029a8c59be886facf7cb21.zip tcl-8f1f56d42b418a9e91029a8c59be886facf7cb21.tar.gz tcl-8f1f56d42b418a9e91029a8c59be886facf7cb21.tar.bz2 |
Merge 8.7
Diffstat (limited to 'generic/tclTest.c')
-rw-r--r-- | generic/tclTest.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/generic/tclTest.c b/generic/tclTest.c index 89b1518..a0de5ac 100644 --- a/generic/tclTest.c +++ b/generic/tclTest.c @@ -7917,22 +7917,22 @@ NREUnwind_callback( Tcl_Interp *interp, TCL_UNUSED(int) /*result*/) { - int none; + void *cStackPtr = TclGetCStackPtr(); if (data[0] == INT2PTR(-1)) { - Tcl_NRAddCallback(interp, NREUnwind_callback, &none, INT2PTR(-1), + Tcl_NRAddCallback(interp, NREUnwind_callback, cStackPtr, INT2PTR(-1), INT2PTR(-1), NULL); } else if (data[1] == INT2PTR(-1)) { - Tcl_NRAddCallback(interp, NREUnwind_callback, data[0], &none, + Tcl_NRAddCallback(interp, NREUnwind_callback, data[0], cStackPtr, INT2PTR(-1), NULL); } else if (data[2] == INT2PTR(-1)) { Tcl_NRAddCallback(interp, NREUnwind_callback, data[0], data[1], - &none, NULL); + cStackPtr, NULL); } else { Tcl_Obj *idata[3]; idata[0] = Tcl_NewWideIntObj(((char *) data[1] - (char *) data[0])); idata[1] = Tcl_NewWideIntObj(((char *) data[2] - (char *) data[0])); - idata[2] = Tcl_NewWideIntObj(((char *) &none - (char *) data[0])); + idata[2] = Tcl_NewWideIntObj(((char *) cStackPtr - (char *) data[0])); Tcl_SetObjResult(interp, Tcl_NewListObj(3, idata)); } return TCL_OK; @@ -7971,10 +7971,10 @@ TestNRELevels( NRE_callback *cbPtr = iPtr->execEnvPtr->callbackPtr; if (refDepth == NULL) { - refDepth = &depth; + refDepth = (ptrdiff_t *)TclGetCStackPtr(); } - depth = (refDepth - &depth); + depth = (refDepth - (ptrdiff_t *)TclGetCStackPtr()); levels[0] = Tcl_NewWideIntObj(depth); levels[1] = Tcl_NewWideIntObj(iPtr->numLevels); |