This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: conformtest: clean up POSIX expectations for sys/mman.h, sys/stat.h, sys/types.h


On Thu, 12 Jun 2014, Florian Weimer wrote:

> On 05/15/2014 11:43 PM, Joseph S. Myers wrote:
> > Continuing the series of patches to clean up conformtest expectations
> > for "POSIX" (1995/6) based on review of the expectations against the
> > standard, this patch cleans up expectations for sys/mman.h, sys/stat.h
> > and sys/types.h.  Tested x86_64; no new XFAILs needed.
> 
> Could you please provide a precise citation for "POSIX" (1995/6)?  I'm trying
> to get a copy, and want to make sure I get the right one.

"POSIX" in conformtest is testing _POSIX_C_SOURCE=199506L (well, it's 
currently testing _POSIX_C_SOURCE=199912, but there's no difference in 
what they enable in glibc and it should be fixed to test 
_POSIX_C_SOURCE=199506L).  That means the union of the symbols defined by

ISO/IEC 9945-1:1996 (ANSI/IEEE Std 1003.1, 1996 Edition) (ISBN 
1-55937-573-6)

and

ISO/IEC 9945-2:1993 (ANSI/IEEE Std 1003.2-1992) (my copy bears ISBN 
1-55937-255-9 but comes with a correction slip saying it should be 
1-55937-406-3).

For limits.h, stdio.h and unistd.h you need to take the union of the 
symbols from POSIX.1 and POSIX.2.  The other headers are only in one or 
another of the standards.

The last time I checked, the 1993 edition of POSIX.1 (POSIX.1b) was 
available on IEEE Xplore (downloadable as a 42MB PDF given a site 
subscription to IEEE Xplore), but not the 1995/6 or 1990 editions (both of 
which I have in paper form).  I'd hope once the review of "POSIX" is 
complete to rename that standard in conformtest to POSIX95 and extend the 
support to versions that glibc supports but conformtest doesn't currently 
cover (the 2001 edition without XSI extensions, 1993 + POSIX.2, 
POSIX.1:1990 + POSIX.2, POSIX.1:1990).  Once we have POSIX.1:1990 support 
in conformtest we can remove posix/annexc, which is a bit confused about 
what it's testing (it uses _POSIX_SOURCE, i.e. POSIX.1:1990, but the 
expectations are based on a more recent version, probably 1995/6).  With 
C90 Amendment 1 support in conformtest we can remove stdlib/isomac.  With 
both removed, we can eliminate $(native-compile) (see discussion in April 
2012 about how we'd like to do so).

There was some discussion in the Austin Group about making older standards 
and drafts available but I haven't noticed progress there lately.

-- 
Joseph S. Myers
joseph@codesourcery.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]