From: Luiz Angelo Daros de Luca Date: Sun, 17 Jun 2018 09:34:08 +0000 (+0200) Subject: libdw: Initialize filelist earlier in dwarf_getsrclines.c read_srclines. X-Git-Tag: elfutils-0.173~14 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9e16a100bf8e0d43415253fe8cfd3ba1d8e637d1;p=thirdparty%2Felfutils.git libdw: Initialize filelist earlier in dwarf_getsrclines.c read_srclines. I'm getting this error with 0.172: dwarf_getsrclines.c: In function 'read_srclines': dwarf_getsrclines.c:1074:7: error: 'filelist' may be used uninitialized in this function [-Werror=maybe-uninitialized] free (filelist); ^~~~~~~~~~~~~~~ It seems that gcc is right here as there is "ifs" that go to "out" (where filelist is freed) before freelist is initialized. Signed-off-by: Luiz Angelo Daros de Luca --- diff --git a/libdw/ChangeLog b/libdw/ChangeLog index 329a994da..bed63794f 100644 --- a/libdw/ChangeLog +++ b/libdw/ChangeLog @@ -1,3 +1,7 @@ +2018-06-17 Luiz Angelo Daros de Luca + + * dwarf_getsrclines.c (read_srclines): Intialize filelist early. + 2018-06-15 Mark Wielaard * dwarf_getlocation.c (check_constant_offset): Clarify DW_FORM_data16 diff --git a/libdw/dwarf_getsrclines.c b/libdw/dwarf_getsrclines.c index bb512ec67..851053874 100644 --- a/libdw/dwarf_getsrclines.c +++ b/libdw/dwarf_getsrclines.c @@ -153,6 +153,7 @@ read_srclines (Dwarf *dbg, { int res = -1; + struct filelist *filelist = NULL; size_t nfilelist = 0; size_t ndirlist = 0; @@ -445,7 +446,7 @@ read_srclines (Dwarf *dbg, }, .next = NULL }; - struct filelist *filelist = &null_file; + filelist = &null_file; nfilelist = 1; /* Allocate memory for a new file. For the first MAX_STACK_FILES