Mail Archives: cygwin/2002/10/17/10:09:50
On Thu, 17 Oct 2002, Anurag Sharma wrote:
> Hi All,
>
> I have come across a strange behaviour using native gcc on cygwin. I
> understand that this issue is not 100% relevant to this list, but I am
> hoping some one might have come across this issue before. Apologies for
> any incovinience. I have posted the same on newlib mailing list too.
>
> Consider this short code:
>
> int fd = ::open("/tmp/errnotest", O_RDONLY | O_BINARY);
>
> if (fd == -1) {
> std::cerr << "open failed, errno=" << errno << ", strerror=" << strerror(errno) << std::endl;
> std::cerr << "open failed, errno=" << errno << ", strerror=" << strerror(errno) << std::endl;
> }
>
> If I build the gcc compiler by providing --enable-threads=single option
> in the configure stage, following is the output :
>
> open failed, errno=2, strerror=No such file or directory
> open failed, errno=2, strerror=No such file or directory
>
> This is of course expected.
>
> Hoewever if I build the compiler by providing --enable-threads=posix
> option in the configure stage, the output is as follows :
>
> open failed, errno=2, strerror=No such file or directory
> open failed, errno=0, strerror=No error
>
> That is , after the first call to errno, it is reset!!
>
> Has anyone else experiened this before? Can anyone please help find out
> what exactly is going wrong?
>
> Regards,
>
> Anurag
Anurag,
While I don't know for sure that this is what's happening, have you
considered that operator<< or endl may (re)set errno?
Igor
--
http://cs.nyu.edu/~pechtcha/
|\ _,,,---,,_ pechtcha AT cs DOT nyu DOT edu
ZZZzz /,`.-'`' -. ;-;;,_ igor AT watson DOT ibm DOT com
|,4- ) )-,_. ,\ ( `'-' Igor Pechtchanski
'---''(_/--' `-'\_) fL a.k.a JaguaR-R-R-r-r-r-.-.-. Meow!
"Water molecules expand as they grow warmer" (C) Popular Science, Oct'02, p.51
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
- Raw text -