Index: TODO =================================================================== diff -u -r65ec5477000f631789c0809b8a832f45e1b634a4 -rc52d87b194492e80c852899ac809e5fef329dd6d --- TODO (.../TODO) (revision 65ec5477000f631789c0809b8a832f45e1b634a4) +++ TODO (.../TODO) (revision c52d87b194492e80c852899ac809e5fef329dd6d) @@ -2553,6 +2553,7 @@ functions. Unfortunately, the lifetime of the strack structures has changed, so we had shuffle some interals around. +- nsf.c: remove unnecessary test when compiled without NRE TODO: - maybe the destructor of a slot should remove the setter/forwarder Index: generic/nsf.c =================================================================== diff -u -r65ec5477000f631789c0809b8a832f45e1b634a4 -rc52d87b194492e80c852899ac809e5fef329dd6d --- generic/nsf.c (.../nsf.c) (revision 65ec5477000f631789c0809b8a832f45e1b634a4) +++ generic/nsf.c (.../nsf.c) (revision c52d87b194492e80c852899ac809e5fef329dd6d) @@ -7485,7 +7485,9 @@ */ static int ProcMethodDispatchFinalize(ClientData data[], Tcl_Interp *interp, int result) { +#if defined(NRE) ParseContext *pcPtr = data[0]; +#endif NsfCallStackContent *cscPtr = data[1]; /*CONST char *methodName = data[2];*/ #if defined(NSF_WITH_ASSERTIONS) @@ -7512,17 +7514,17 @@ } #endif +#if defined(NRE) if ((cscPtr->flags & NSF_CSC_CALL_IS_NRE)) { if (pcPtr) { ParseContextRelease(pcPtr); NsfTclStackFree(interp, pcPtr, "release parse context"); } -#if defined(NRE) result = ObjectDispatchFinalize(interp, cscPtr, result /*, "NRE" , methodName*/); -#endif CscFinish(interp, cscPtr, result, "scripted finalize"); } +#endif return result; }