[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#119974: Bug confirmed



On Mon, Jan 13, 2003 at 07:03:35PM +0100, José Luis González González wrote:
> On Mon, Jan 13, 2003 at 08:02:14AM -0500, H. S. Teoh wrote:
> > So you're saying that even if you ask for POSIX.1b, you still don't get
> > fsync()?
> 
> Yes.  Try this:
> 
> $ cat test.c
> #include <unistd.h>
> void foo (void) { fsync(0); }
> $ gcc -Wall -D_POSIX_C_SOURCE=199309L -c test.c
> test.c: In function `foo':
> test.c:2: warning: implicit declaration of function `fsync'

OK, so this is a bug in unistd.h then.

> > According to my online research, fsync is NOT part of POSIX.1, but it IS a
> > part of POSIX.1b. There was an earlier contention over fsync's semantics
> > that precluded it from being in POSIX.1; but apparently the POSIX people
> > have decided to put it in 1b. Now, whether or not the glibc headers
> > correctly reflect this is something the glibc maintainers should check. 
> 
> Well, if it's part of POSIX then the function prototype is not correctly
> guarded by only the BSD and X/Open flags.  It does not work for those
> who ask for POSIX.1b *but not more*.

Yeah, this should be fixed. One of the official glibc maintainers who has
access to the actual POSIX.1b specs should verify this. 

> > Also, if the glibc docs are confusing, then it should be fixed so that
> > fsync is clearly labelled as POSIX.1b, not just POSIX (which, IIRC, means
> > POSIX.1 only---or at least, that's what the current glibc headers will
> > give you when you ask for POSIX.)
> 
> Please, since you know the details and can point to facts (surely better
> than me), could you file the bug for glibc-doc?

Will do. Thanks.


T

-- 
Let's eat some disquits while we format the biskettes.



Reply to: