From kido@vnet.IBM.COM Mon Mar 15 02:55:20 1993 Received: from vnet.IBM.COM ([192.239.48.4]) by dkuug.dk with SMTP id AA28952 (5.65c8/IDA-1.4.4j for ); Mon, 15 Mar 1993 02:55:20 +0100 Message-Id: <199303150155.AA28952@dkuug.dk> Received: from YMTVM8 by vnet.IBM.COM (IBM VM SMTP V2R2) with BSMTP id 3998; Sun, 14 Mar 93 20:54:36 EST Date: Mon, 15 Mar 93 10:54:08 JST From: "Akio Kido" To: sc22wg15@dkuug.dk, sc22wg20@dkuug.dk, XoJIG@xopen.co.uk, sig-international@osf.org, uojlg-bse@uiap.ui.org, efischer@donald.aix.kingston.ibm.com Subject: MSE 4.1.mm X-Charset: ASCII X-Char-Esc: 29 .SK .H 1 Library .P Various portions of clause 7 of \*(AC are adjusted to include the following specifications. Each subclause to be extended usually has a correspondingly titled subclause in this portion of this amendment. .H 2 "Definitions of terms" .eX 7.1.1 .P A .I "wide character" is a code value (a bit pattern) of an object of type .Cf wchar_t that corresponds to a member of the extended character set.\*F .FS An equivalent definition can be found in subclause 6.1.3.4 of \*(AC. .FE .P A .I "null wide character" is a wide character with value zero. .P A .I "wide string" is a contiguous sequence of wide characters terminated by and including the first null wide character. A ``pointer to'' a wide string is a pointer to its initial (lowest addressed) wide character. The ``length'' of a wide string is the number of wide characters preceding the null wide character and its ``value'' is the sequence of code values of the contained wide characters, in order. .P A .I "shift sequence" is a contiguous sequence of bytes within a multibyte string that causes a change in shift state. (See \*(AC subclause 5.2.1.2.) Shift sequences shall not have corresponding wide characters; they are instead taken to be an adjunct to an adjacent multibyte character.\*F .FS For state-dependent encodings, the values for .Cf MB_CUR_MAX and .Cf MB_LEN_MAX must thus be large enough to count all the bytes in any complete multibyte character plus at least one adjacent shift sequence of maximum length. Whether these counts provide for more than one shift sequence is the implementation's choice. .FE .H 2 "Standard headers" .eX 7.1.2 The list of standard headers is adjusted to include two new standard headers, .Cf and .Cf . .H 2 "Errors \*(Cw\fP" .eX 7.1.4 The list of macros defined in .Cf is adjusted to include a new macro, .Cf EILSEQ . .H 2 "Alternative spellings \*(Cw\fP" .P The header .Cf defines the following eleven macros (on the left) that expand to the corresponding tokens (on the right): .Cb and && and_eq &= bitand & bitor \*| compl \*~ ne != not ! or \*|\*| or_eq \*|= xor ^ xor_eq ^= .Ce