Hi All,
    
    The 9th assertion of fgetc in "IEEE std 2003.1-1992 Test Methods for
Measuring Conformance to Posix-Part1 System Interface" document states:
    When the stream pointer argument addresses a file descriptor that
is not open for reading, then a call to fgetc()returns a value of 
EOF and sets errno to [EBADF].
The current implementation does not set any errno. It says "No error". 

here is the small program which i compiled using gcc under cygwin and it
prints 'FAILURE: No error'

#include<stdio.h>
#include<errno.h>
int main()
{
        char path[]="./testfile";
        FILE *p;
        p=fopen(path,"w"); /*file descriptor is open for writing!*/
        fgetc(p);       /*must set errno to EBADF*/
        if(errno!=EBADF)
                perror("FAILURE");
        else
                printf("PASS\n");
return 0;
}


Regards,
ghanshyam



--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

Reply via email to