This is the mail archive of the
gdb@sourceware.org
mailing list for the GDB project.
Re: recursive bug in dwarf2read.c
Daniel Jacobowitz <drow@false.org> writes:
> On Wed, Dec 09, 2009 at 10:55:30AM +0000, Gaius Mulley wrote:
>>
>> Hi,
>>
>> I think there is a bug in dwarf2read.c which can be exposed by
>> attempting to set a break point at RealIO_WriteFixed in this
>> executable.
>>
>> I acknowledge the (gnu modula-2 generated executable) could probably
>> be at fault, nevertheless it does contain cyclic data structures which
>> are not explicitly created in the same way as C. For example:
>>
>>
>> TYPE
>> ScanState = PROCEDURE (CHAR, VAR ScanClass, VAR ScanState);
>
> See e.g. this from read_structure_type:
>
> /* We need to add the type field to the die immediately so we don't
> infinitely recurse when dealing with pointers to the structure
> type within the structure itself. */
> set_die_type (die, type, cu);
>
> It looks as if read_subroutine_type does not do that, but now has to.
Hi Daniel,
thanks for the pointer - I'll work on a patch for this..
regards,
Gaius