C++ Logo

sg16

Advanced search

Re: [SG16-Unicode] Fwd: New Core Issue: [lex.name]/3.2 under-specifies "uppercase letter"

From: JF Bastien <cxx_at_[hidden]>
Date: Mon, 28 Oct 2019 10:32:13 -0700
I’d like to have a stronger motivation that this. Do we ever intend to use
non-ascii as reserved names? If so, we should wait to resolve TR31 and not
make any change because doing what you propose closes a door. If not (ie
we’ll only ever use A-Z to start reserved names) then your change is
exactly what we’ll want

On Mon, Oct 28, 2019 at 9:39 AM Mathias Stearn <
redbeard0531+isocpp_at_[hidden]> wrote:

> Is it just uppercase letters in the basic source character set, or
> anything considered an uppercase letter in the universal character set
> after phase 1 transcoding and universal-character-name resolution? Or is
> there some other definition of uppercase?
>
> I have a slight preference for restricting to just A-Z so that it doesn't
> require humans or tools to consult the unicode data tables to decide if an
> identifier is safe to use.
>
> Proposed resolution:
>
> Replace [lex.names]/3.2 with:
>
> Each identifier that contains a double underscore __ or begins with an
> underscore followed by an uppercase <del>letter</del><ins>*nondigit*</ins>
> is reserved to the implementation for any use.
>
>
> Alternatively we could either create a new grammar production for
> uppercase *nondigit*s, or just say something like "one of the universal
> characters in the range 0041-005A (A-Z)"
>
>
> _______________________________________________
> SG16 Unicode mailing list
> Unicode_at_[hidden]
> http://www.open-std.org/mailman/listinfo/unicode
>

Received on 2019-10-28 18:32:27