rem: varPtr = Tcl_SetVar(interp, argv[1], newList, TCL_LEAVE_ERR_MSG);
add: varPtr = (char*)Tcl_SetVar(interp, argv[1], newList, TCL_LEAVE_ERR_MSG);
context: Tcl_KeyldelCmd(clientData, interp, argc, argv)    ClientData      clientData;    Tcl_Interp     *interp;    int             argc;    char          **argv;{    char           *keyedList, *newList;    char           *varPtr;    if (argc != 3) {        Tcl_AppendResult(interp, tclXWrongArgs, argv[0],            " listvar key", (char *) NULL);        return TCL_ERROR;    }    keyedList = Tcl_GetVar(interp, argv[1], TCL_LEAVE_ERR_MSG);    if (keyedList == NULL)        return TCL_ERROR;    newList = Tcl_DeleteKeyedListField(interp, argv[2], keyedList);    if (newList == NULL)        return TCL_ERROR;    varPtr = Tcl_SetVar(interp, argv[1], newList, TCL_LEAVE_ERR_MSG);    ckfree((char *) newList);    return (varPtr == NULL) ? TCL_ERROR : TCL_OK;}