>> As you will notice in the sequence of steps in the illustrative code above, in line 6 a fgetc() call to file 'f' is made instead of 'f1'. This situation, a cause of segmentation fault on a non-Cygwin machine, was not encountered by Cygin's gcc compiler. In fact, the code compiles and runs successfully on Cygwin. >> >> Would appreciate assistance with addressing the situation. > > The best approach is to fix your program so that it doesn't use 'f' > after it has been closed. It is not really related to gcc, but just > good practice in general. I would agree. In this instance however I might guess that windows is reusing file handle IDs whereas others machines are not? Your code as a complete program... #include "stdio.h" int main(int argc, char **argv) { char c; FILE * f; f = fopen(argv[1], "r"); fclose(f); FILE * f1; f1 = fopen(argv[1], "r"); while ((c = fgetc(f)) != EOF){ } } Nav