On Fri, 18 Jan 2008 22:55:01 +0100 Roland Mainz wrote:
> Erm... (dumb ?!) question: How are POSIX and C99 related in this case -
> is this a superset, subset or extension-like relationship or is this
> somehow else structured ?

> > It may well be that
> > some implementations provide null terminated strings now, but the C99
> > standard doesn't require that and the POSIX standard doesn't require
> > that; so an application that assumes those pointers point to null
> > terminated strings is not portable.

> Is there a way to file a "clarification request" to the POSIX people and
> ask whether multibyte characters (and therefore the terminating '\0')
> are allowed ? Otherwise we can drop the idea of using any arabic symbols
> for |decimal_point| and |thousands_sep| as described in the original
> posting (see
> http://mail.opensolaris.org/pipermail/ksh93-integration-discuss/2008-January/005855.html)
> and have to live with the ASCII stuff (which is AFAIK a bit end-user
> unfriendly...).

even if the standard lconv were changed to handle multibyte
there would still be the issue of how long it would take
implementations to meet the standard
seeing that there may be different owners for each locale within an 
implementation
that could take a while

the failure mode is the worst problem here
the standard as it is specifies 1 byte for the entries in question
a user application that attempts to use more than that one byte
could run into who knows what problems attempting to access
bytes beyond the first in compliant posix implementations


Reply via email to