Standards Update, IEEE 1003.1: System services interface

Jason Zions jason at cnd.hp.com
Wed Jul 11 01:13:29 AEST 1990


From:  Jason Zions <jason at cnd.hp.com>

> Since it is planned that all these standards will be unified under the
> umbrella of ISO 9945-1 (or whatever future number the C-binding appears
> unders) it would seem more prudent to have a single feature-test macro,
> such as _POSIX_C_SOURCE, for which for increasing values expose the
> entire POSIX function namespace in historical order.  This would place
> no further requirements upon implementations.  Applications would be
> affected only when being modified to use POSIX extensions:  they would
> then have to honor not only the namespace reservation of the extension,
> but of all of POSIX at the time the extension was standardized.  Note
> that this requirement already exists for any other interfaces added by
> the working group which added the extension.

This makes the assumption that there is indeed a single POSIX name space,
to which pieces are added by the various working groups. This assumption,
while a reasonable one, is in fact not correct.

The various 1003.* working groups are *not* developing separate components
of an overall, integrated POSIX standard. Each POSIX standard stands alone
from all other POSIX standards *except* where that standard deliberately
requires dependencies. For example, 1003.2 is intended to be implementable
on systems which do not offer a 1003.1-compliant interface. So, a
strictly-compliant 1003.2 application *could not* assume the presence of
1003.1 symbols et al., and would be permitted to make use of names
otherwise reserved to 1003.1. Hence, there needs to be a separate
feature-test macro to activate the 1003.2 name space etc.

Worse yet, it appears that one of the POSIX Real Time Profiles may very
well require only a subset of 1003.1; how on earth does one represent
*that* using the _POSIX_C_SOURCE scheme?

Jason Zions


Volume-Number: Volume 20, Number 119



More information about the Comp.std.unix mailing list