Subject: Re: [SG16-Unicode] Identifiers in C++
From: Tom Honermann (tom_at_[hidden])
Date: 2019-05-15 12:39:06
Thanks for bringing this to our attention.Â I agree there are
opportunities for improvement here. I filed a new SG16 issue to track this.
I encourage anyone interested in this to sign up to write a paper or
provide additional background material in the issue (e.g., more history
about the current list of ranges, an analysis of UAX#31 and its
applicability to C++, etc...).
On 5/10/19 12:43 PM, JF Bastien wrote:
> Hi C++ àªªà¸Ù±ÆÑ»Éï» á¸Ã¤á¹ á¹¡ ð!
> The current list of valid identifier characters is pretty silly (see
> [*lex.name <http://lex.name>*] 5.10 Identifiers or cppreference
> summary <https://en.cppreference.com/w/cpp/language/identifiers>). It
> allows characters such as zero-width joiner and zero-width space among
> a few silly things (see how bad this can get
> <https://godbolt.org/z/sBJk1k>, h/tÂ Richard Kogelnig).
> I asked where it came from, and IIUC John looked at Unicode and
> cobbled the list of valid ranges manually. That ain't great.
> Is this group interested in fixing things?
> There's already an existing standard for this, maybe it's a thing we
> can adopt as-is or use as a starting point:
> Further, the tooling group was just talking about module names. I
> think we should allow any valid identifier name as module name, and
> look at how this could map to file names for a tooling TR's purpose.
> SG16 Unicode mailing list
SG16 list run by herb.sutter at gmail.com