Fix the handling of inlined frames in DWARF debug info.

PR 23715
	* dwarf2.c (find_abstract_instance): Allow recursive invocations
	of find_abstract_instance to override the name variable.
This commit is contained in:
Millan Wolff
2018-10-03 12:06:09 +01:00
committed by Nick Clifton
parent 527b9e87ac
commit c8d3f93237
3 changed files with 16 additions and 6 deletions

View File

@ -1,3 +1,9 @@
2018-10-03 Millan Wolff <mail@milianw.de>
PR 23715
* dwarf2.c (find_abstract_instance): Allow recursive invocations
of find_abstract_instance to override the name variable.
2018-10-03 Nick Clifton <nickc@redhat.com> 2018-10-03 Nick Clifton <nickc@redhat.com>
* po/pt.po: Updated Portuguese translation. * po/pt.po: Updated Portuguese translation.

View File

@ -2962,7 +2962,7 @@ find_abstract_instance (struct comp_unit * unit,
break; break;
case DW_AT_specification: case DW_AT_specification:
if (!find_abstract_instance (unit, info_ptr, &attr, if (!find_abstract_instance (unit, info_ptr, &attr,
pname, is_linkage, &name, is_linkage,
filename_ptr, linenumber_ptr)) filename_ptr, linenumber_ptr))
return FALSE; return FALSE;
break; break;

View File

@ -1457,16 +1457,20 @@ SYNOPSIS
DESCRIPTION DESCRIPTION
Sets the contents of the section @var{section} in BFD Sets the contents of the section @var{section} in BFD
@var{abfd} to the data starting in memory at @var{data}. The @var{abfd} to the data starting in memory at @var{location}.
data is written to the output section starting at offset The data is written to the output section starting at offset
@var{offset} for @var{count} octets. @var{offset} for @var{count} octets.
Normally <<TRUE>> is returned, else <<FALSE>>. Possible error Normally <<TRUE>> is returned, but <<FALSE>> is returned if
returns are: there was an error. Possible error returns are:
o <<bfd_error_no_contents>> - o <<bfd_error_no_contents>> -
The output section does not have the <<SEC_HAS_CONTENTS>> The output section does not have the <<SEC_HAS_CONTENTS>>
attribute, so nothing can be written to it. attribute, so nothing can be written to it.
o and some more too o <<bfd_error_bad_value>> -
The section is unable to contain all of the data.
o <<bfd_error_invalid_operation>> -
The BFD is not writeable.
o and some more too.
This routine is front end to the back end function This routine is front end to the back end function
<<_bfd_set_section_contents>>. <<_bfd_set_section_contents>>.