Ada character types : tree code and DW_AT_encoding

James E Wilson wilson@specifix.com
Thu Aug 11 19:48:00 GMT 2005


Andrew Haley wrote:
> Tom Tromey writes:
>  > I was under the impression that CHAR_TYPE was deprecated, so I
>  > purposely avoided it in gcjx.  I'm not sure where I got that
>  > impression though.
> I can't remember the context either, but I agree with your memory.  I
> think it was discussed a little while ago: the idea was entirely to
> eliminate CHAR_TYPE from the compiler, and that FEs were doing so.

I don't recall the discussion.  I probably didn't realize it was 
relevant to debugger issues at the time.  I don't see anything in the 
source code that says CHAR_TYPE is deprecated.

I see that Nathan posted a patch last December to try to remove some 
CHAR_TYPE support.
     http://gcc.gnu.org/ml/gcc-patches/2004-12/msg00689.html

If people want to do this, it seems reasonable.  However, we are losing 
info potentially valuable to the debugger, because the debugger should 
be printing character types differently than integer types. 
Particularly in languages, unlike C, that have character types distinct 
from the integer types.  It would be nice if this info could be retained 
somehow.

A possible way to solve this problem is to add a single-bit flag to 
INTEGER_TYPE nodes that indicates whether this is actually a character 
type.  Then dwarf2out.c could just check the flag to determine what 
debug info to emit.  It looks like we have a number of flag bits that 
aren't being used in type nodes.  This is much better than trying to do 
string matches against type names to determine what is a character type.
-- 
Jim Wilson, GNU Tools Support, http://www.specifix.com



More information about the Gcc mailing list