possible open() problem again
Jakub Jelinek
jakub at redhat.com
Thu Aug 23 21:05:53 UTC 2007
On Thu, Aug 23, 2007 at 10:45:25PM +0200, Denis Leroy wrote:
> >So
> >int (open)(const char *pathname, int flags, ...)
> >{
> >...
> >}
>
> I can't help but cringe at this horrible open() macro hack we have to
> deal with now. I mean, this was perfectly legal C code and we can't
> compile it ?!
Well, ISO C doesn't cover fcntl.h, if it would, it would certainly not
be a perfectly legal C code, as per ISO C99, 7.1.3/1.
As fcntl.h is a POSIX header, you need to consider that standard
and that standard says that this code is not perfectly legal.
See
http://www.opengroup.org/onlinepubs/009695399/functions/xsh_chap02_01.html#tag_02_01
http://www.opengroup.org/onlinepubs/009695399/basedefs/fcntl.h.html
Jakub
More information about the Fedora-maintainers
mailing list