aboutsummaryrefslogtreecommitdiff
path: root/libbacktrace/dwarf.c
diff options
context:
space:
mode:
Diffstat (limited to 'libbacktrace/dwarf.c')
-rw-r--r--libbacktrace/dwarf.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/libbacktrace/dwarf.c b/libbacktrace/dwarf.c
index b198dea..bd7419b 100644
--- a/libbacktrace/dwarf.c
+++ b/libbacktrace/dwarf.c
@@ -654,6 +654,12 @@ read_attribute (enum dwarf_form form, struct dwarf_buf *buf,
const unsigned char *dwarf_str, size_t dwarf_str_size,
struct attr_val *val)
{
+ /* Avoid warnings about val.u.FIELD may be used uninitialized if
+ this function is inlined. The warnings aren't valid but can
+ occur because the different fields are set and used
+ conditionally. */
+ memset (val, 0, sizeof *val);
+
switch (form)
{
case DW_FORM_addr: