>> mincore() is not defined in a standard; newer standards add the
>> <sys/mman.h> include and so it is tested for additional definitions which
>> the standard disallows.
>
>Ah. I was not aware that the standard disallowed anything not explicitly 
>allowed.

There are namespace constraints; and if you add a function to a header
and forget to properly bracket it, you get a nastygram from the standards
tests folks; for headers defined in the standard or indirectly included:

        For UNIX03 mode:
            When _XOPEN_SOURCE is defined with the value 600 and no other
            feature test macros except _POSIX_C_SOURCE<=200112L are defined,
            no other symbols than those defined or reserved by POSIX.1-
            2001/XSH6 (including the XSI option) are made visible.

I got one for:

        Illegal declared or 'typedef'ed symbol: mkstemps

(bug 6395215)


This helps people wanting to compile against strict POSIX and allows you
to use any symbol not declared by POSIX.

>> <sys/types.h> is the wrong include; it probably dates from the time
>> that system headers included few prototypes and all you really needed
>> were the definitions of the types used in the prototypes.
>
>Ok. Should I file a bug? The man page definitely states that <sys/types.h> is 
>the the required header.

Since it does not give the proper declaration that is a bug.

Casper
_______________________________________________
opensolaris-code mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/opensolaris-code

Reply via email to