diff options
-rw-r--r-- | libbacktrace/ChangeLog | 4 | ||||
-rw-r--r-- | libbacktrace/dwarf.c | 6 |
2 files changed, 10 insertions, 0 deletions
diff --git a/libbacktrace/ChangeLog b/libbacktrace/ChangeLog index fc5871a..7d2cfda 100644 --- a/libbacktrace/ChangeLog +++ b/libbacktrace/ChangeLog @@ -1,3 +1,7 @@ +2012-11-20 Ian Lance Taylor <iant@google.com> + + * dwarf.c (read_attribute): Always clear val. + 2012-11-13 Ian Lance Taylor <iant@google.com> PR other/55312 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: |