binutils/Fix-the-handling-of-inlined-frames-in-DWARF-debug-in.patch
2019-12-25 15:42:36 +08:00

60 lines
2.0 KiB
Diff

From 514017551643b962e1ae1a37ed277418dc2919f1 Mon Sep 17 00:00:00 2001
From: Millan Wolff <mail@milianw.de>
Date: Wed, 3 Oct 2018 12:06:09 +0100
Subject: [PATCH 1/2] 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.
---
bfd/dwarf2.c | 2 +-
bfd/section.c | 14 +++++++++-----
2 files changed, 10 insertions(+), 6 deletions(-)
diff --git a/bfd/dwarf2.c b/bfd/dwarf2.c
index a464388cc9..af312b30d5 100644
--- a/bfd/dwarf2.c
+++ b/bfd/dwarf2.c
@@ -2960,7 +2960,7 @@ find_abstract_instance (struct comp_unit * unit,
break;
case DW_AT_specification:
if (!find_abstract_instance (unit, info_ptr, &attr,
- pname, is_linkage,
+ &name, is_linkage,
filename_ptr, linenumber_ptr))
return FALSE;
break;
diff --git a/bfd/section.c b/bfd/section.c
index 7ee3f6915b..cc23922814 100644
--- a/bfd/section.c
+++ b/bfd/section.c
@@ -1457,16 +1457,20 @@ SYNOPSIS
DESCRIPTION
Sets the contents of the section @var{section} in BFD
- @var{abfd} to the data starting in memory at @var{data}. The
- data is written to the output section starting at offset
+ @var{abfd} to the data starting in memory at @var{location}.
+ The data is written to the output section starting at offset
@var{offset} for @var{count} octets.
- Normally <<TRUE>> is returned, else <<FALSE>>. Possible error
- returns are:
+ Normally <<TRUE>> is returned, but <<FALSE>> is returned if
+ there was an error. Possible error returns are:
o <<bfd_error_no_contents>> -
The output section does not have the <<SEC_HAS_CONTENTS>>
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
<<_bfd_set_section_contents>>.
--
2.19.1