This is the mail archive of the gdb@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: dwarf2read.c:read_tag_string_type ()


On Sat, Apr 13, 2002 at 02:34:33PM +0200, Martin Baulig wrote:
> Hi,
> 
> in dwarf2read.c, read_tag_string_type() reads the DW_AT_string_length
> attribute as DW_UNSND(), but according to the DWARF 2 spec, this is a
> location description.
> 
> >From the DWARF 2 spec:
> 
> =====
> 5.8  String Type Entries
> A ``string'' is a sequence of characters that have specific semantics
> and operations that separate them from arrays of characters. Fortran
> is one of the languages that has a string type. A string type is
> represented by a debugging information entry with the tag
> DW_TAG_string_type.  If a name has been given to the string type in
> the source program, then the corresponding string type entry has a
> DW_AT_name attribute whose value is a null-terminated string
> containing the string type name as it appears in the source
> program. The string type entry may have a DW_AT_string_length
> attribute whose value is a location description yielding the location
> where the length of the string is stored in the program.  The string
> type entry may also have a DW_AT_byte_size attribute, whose constant
> value is the size in bytes of the data to be retrieved from the
> location referenced by the string length attribute. If no byte size
> attribute is present, the size of the data to be retrieved is the same
> as the size of an address on the target machine. If no string length
> attribute is present, the string type entry may have a DW_AT_byte_size
> attribute, whose constant value is the length in bytes of the string.
> ====
> 
> Is there any reason for doing this (ie. some compiler is incorrectly
> emitting this attribute) or can this be fixed ?

My guess is that it can be fixed.  GCC doesn't even emit
DW_AT_string_length.  This is waiting on improved location expression
support (coming soon).

-- 
Daniel Jacobowitz                           Carnegie Mellon University
MontaVista Software                         Debian GNU/Linux Developer


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]