Index: generic/nsf.c =================================================================== diff -u -r7ac9328ee6b3fd77da6da4235e10f29c3c4513de -r3696772f6383ca87f6f4c7716a12843afacdff2f --- generic/nsf.c (.../nsf.c) (revision 7ac9328ee6b3fd77da6da4235e10f29c3c4513de) +++ generic/nsf.c (.../nsf.c) (revision 3696772f6383ca87f6f4c7716a12843afacdff2f) @@ -9176,7 +9176,7 @@ */ if (object->mixinStack) { if (cscPtr->frameType == NSF_CSC_TYPE_ACTIVE_MIXIN) - cscPtr->frameType = NSF_CSC_TYPE_INACTIVE; + cscPtr->frameType = NSF_CSC_TYPE_INACTIVE_MIXIN; /* otherwise move the command pointer forward */ if (isMixinEntry) { @@ -15319,6 +15319,7 @@ if (object && (object->filterStack || object->mixinStack) ) { CallStackUseActiveFrame(interp, &ctx); } + if (!Tcl_Interp_varFramePtr(interp)) { CallStackRestoreSavedFrames(interp, &ctx); return NsfVarErrMsg(interp, "instvar used on ", objectName(object),