This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Universal Character Names, v2
Geoff Keating <geoffk@geoffk.org> writes:
> You are right, I forgot about that. Yes, identifier characters (not
> digits) can be contained in preprocessor numbers.
Maybe you can help to interpret an aspect of C99 to me: The Annex is
titled "Universal character names for identifiers", and says
[#1] This clause lists the hexadecimal code values that are
valid in universal character names in identifiers.
But then it has characters listed as "Digits" and "Special characters".
Do these classifications have any significance? If so, which one?
I.e. could I use \u0660 in identifiers? Can I use it to start an
identifier?
I took 6.4.2.1p3 into consideration, which says
# The initial character shall not be a universal character name
# designating a digit.
and came to the following conclusions:
- Only the category named "Digits" has special meaning. All other
characters listed in the annex can appear anywhere in an identifier
an a pp-number.
- A UCN from the "Digits" section may appear both in identifiers
and pp-numbers, but not as the first character.
Do you agree?
Regards,
Martin