[Bug preprocessor/9449] UCNs not recognized in identifiers (c++/c99)

joseph at codesourcery dot com gcc-bugzilla@gcc.gnu.org
Tue Feb 22 12:00:00 GMT 2005


------- 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



More information about the Gcc-bugs mailing list