 		Tcl_AppendResult(interp, "\"", argv[1], "\" wasn't opened for writing", (char *)NULL);
 		return TCL_ERROR;
 	}
-	f = filePtr->f2;
+	FILE *f = filePtr->f2;
 	if (f == NULL) {
 		f = filePtr->f;
 	}

				break;
			}
			if (count < 0) {
				Tcl_AppendResult(interp, "error reading stderr output file: ",
					Tcl_UnixError(interp), (char *)NULL);
				break;
			}
			buffer[count] = 0;

		}
		sprintf(interp->result, "%ld", statBuf.st_atime);
		return TCL_OK;
	} else if (c == 'i' && !strncmp(argv[1], "isdirectory", length) && length >= 3) {
		if (argc != 3) {
			argv[1] = "isdirectory";
			goto not3Args;
		}
		statOp = 2;
	} else if (c == 'i' && !strncmp(argv[1], "isfile", length) && length >= 3) {
		if (argc != 3) {
			argv[1] = "isfile";
			goto not3Args;
		}
		statOp = 1;
	} else if (c == 'l' && !strncmp(argv[1], "lstat", length)) {
		if (argc != 4) {
			Tcl_AppendResult(interp, "wrong # args: should be \"", argv[0], " lstat name varName\"", (char *)NULL);
			return TCL_ERROR;
