C++ Logo


Advanced search

Subject: [SG16-Unicode] Feedback on P1139: Address wording issues related to ISO 10646
From: Hubert Tong (hubert.reinterpretcast_at_[hidden])
Date: 2019-01-30 16:11:56

Where the text says:
If a *universal-character-name* does not correspond to any character in
ISO/IEC 10646 [ ... ].

The note indicates:
ISO/IEC 10646 code points are within the range 0x0-0x10FFFF, inclusive.

I am not certain what the text is meant to say.
Is the intention merely that the numeric value shall be within the UCS
codespace (0x0-0x10FFFF, inclusive)?
Is the intention that the code point shall be one of those that are
assigned to characters by ISO/IEC 10646 (in which case, the additional
limitation on surrogate code points is redundant)?
Is the intention that the code point shall not be one whose basic type is
the noncharacter type?

Also, the paper should probably including something like the following:
Modify in [lex.string],
<del>Within char32_t and char16_t string literals, any
*universal-character-names* shall be within the range 0x0 to 0x10FFFF.</del>

SG16 list run by sg16-owner@lists.isocpp.org