[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: (c.harding 22613) int vs long in ldapext-ldap-c-api-01



At 08:50 AM 11/19/98 +0000, Chris Harding wrote:
>Hi -
>
>The draft new ISO C standard defines a number of integer types of exact and
>minimum sizes.  Why not use these?

I believe the C API specification should be defined in terms of Standard
C but not require implementations nor applications to be written in
Standard C.  This was the approach taken with POSIX and has suited both
implementors and application developers well.

As such, the C API should only require types/structures/defines that are
available in LCD C (Least Common Denominator C).  Requiring a type which
is widely available would not be wise.

In addition, I feel that implementation provided headers should be:
	1) idempotent
		You can include the same header more than once.
		The effect is as if you included it once.
	2) mutually independent
		No header requires that another header (including
		system headers) be included for it to work properly.
		Nor does the header include (or cause to be included)
		any system header or other header defined by the API.
	3) equivalent to file level declarations
		ldap headers must be included before the application
		refers to anything that the header defines or declares.
	4) well documented
		The draft need to state which headers are required
		by the implementation and details about their content.

(the above was derived from Standard C library header requirements)

The motivation behind these suggestion is to allow implementations
that are C translator neutral and to allow application developers
to use the available features of these C translators.

Kurt