Index: generic/nsf.c =================================================================== diff -u -r5ec6b9fc7f2d2d850c82f4fd706dbc898a4a63f5 -r84d881d46b15242127c77e4934e11ad958c383c5 --- generic/nsf.c (.../nsf.c) (revision 5ec6b9fc7f2d2d850c82f4fd706dbc898a4a63f5) +++ generic/nsf.c (.../nsf.c) (revision 84d881d46b15242127c77e4934e11ad958c383c5) @@ -11580,6 +11580,7 @@ if (contextObject != NULL && strncmp(pPtr->type, "virtual", 7) == 0) { Tcl_Obj *formattedObj = NsfParamDefsVirtualFormat(interp, pPtr, contextObject, NsfParamDefsSyntax); + if (formattedObj != NULL) { argsResolved = 1; Tcl_AppendObjToObj(argStringObj, formattedObj); @@ -11588,29 +11589,7 @@ if (argsResolved == 0) { Tcl_AppendLimitedToObj(argStringObj, "?/arg .../?", 11, INT_MAX, NULL); } -#if 0 - NsfParsedParam parsedParam; - int result; - if (strcmp(pPtr->type, "virtualobjectargs") == 0) { - fprintf(stderr, "append virtual object args\n"); - result = GetObjectParameterDefinition(interp, NsfGlobalObjs[NSF_EMPTY], contextObject, NULL, &parsedParam); - } else if (NsfObjectIsClass(contextObject)) { - fprintf(stderr, "append virtual class args\n"); - result = GetObjectParameterDefinition(interp, NsfGlobalObjs[NSF_EMPTY], NULL, (NsfClass *)contextObject, &parsedParam); - } else { - result = TCL_ERROR; - } - if (result == TCL_OK && parsedParam.paramDefs != NULL) { - argsResolved = 1; - Tcl_AppendObjToObj(argStringObj, NsfParamDefsSyntax(interp, parsedParam.paramDefs->paramsPtr, contextObject)); - } - } - if (argsResolved == 0) { - Tcl_AppendLimitedToObj(argStringObj, "?/arg .../?", 11, INT_MAX, NULL); - } -#endif - } else if (pPtr->flags & NSF_ARG_REQUIRED) { if ((pPtr->flags & NSF_ARG_IS_ENUMERATION)) {