------- Additional Comments From joseph at codesourcery dot com 2005-02-22 02:28 ------- Subject: Re: UCNs not recognized in identifiers (c++/c99)
On Mon, 21 Feb 2005, geoffk at geoffk dot org wrote: > My suggestion is that this can be simplified as follows: > > - a CPP token is in the input form. An identifier outside cpp is in > 'internal' form. > - DECL_ASSEMBLER_NAME is in 'output' form. > - The 'diagnostic' form is created from the 'internal' form based > solely on the locale, at the time that a diagnostic is printed. Fine. Now, at present the conversions between these forms are trivial. So the audit required is of everywhere there is an assignment / copy / input / output between different forms to ensure that the appropriate conversions are applied instead of a straight copy as at present. For example, all the places printing IDENTIFIER_POINTER (id) with %qs become no longer valid, as IDENTIFIER_POINTER is in the internal form and %qs simply prints a string; %E may print an identifier as such, converting to the output form, but everywhere using %qs or some other output notation other than %E on an identifier needs checking and fixing. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=9449