Implementing Universal Character Names in identifiers
Martin v. Löwis
loewis@informatik.hu-berlin.de
Mon Nov 11 08:36:00 GMT 2002
Neil Booth <neil@daikokuya.co.uk> writes:
> > - In libiberty, provide interfaces that implement UAX15. On
> > reflection, this should be a new <unicode.h> interface set, not
> > tacked onto <safe-ctype.h>.
> >
> > - In cpplib, provide routines that validate individual identifiers
> > against the precise lists in C99 and C++98.
>
> Are you going to do this part? It would be a good start. We could
> do with a function that confirms whether a number is in the ranges
> specified by the standards (separating the two if necessary, although
> IMO that is pedantry in extremis).
I'm still not sure why this should be in libiberty. The list of
acceptable characters is quite specific to the preprocessor.
However, I am working on updating this function for C99.
> We also need something like ucs_digit_p(), since a UCS digit cannot
> start an identifier (something I think you missed in your patch).
It's not an issue for C++: it does not allow UCS digits in an
identifier (nor does it allow what C99 calls "Special characters" -
I'm not even certain whether C99 intends to allow them in identifiers,
and if so, whether on arbitrary positions).
Regards,
Martin
More information about the Gcc-patches
mailing list