On Thu, Oct 24, 2024 at 5:08 AM Mark Wielaard <m...@klomp.org> wrote: > > When building with LTO gcc believes elf_fd can be used uninitialized: > > In function ‘sysprof_init_dwfl’, > inlined from ‘sysprof_unwind_cb’ at stacktrace.c:1235:16: > stacktrace.c:1087:7: error: ‘elf_fd’ may be used uninitialized > [-Werror=maybe-uninitialized] > 1087 | close (elf_fd); > | ^ > > This code won't be reached because if find_procfile doesn't initialize > elf_fd, it will return an error. But help the compiler by initializing > elf_fd to -1. > > * src/stacktrace.c (sysprof_init_dwfl): Init elf_fd to -1. > > Signed-off-by: Mark Wielaard <m...@klomp.org> > --- > src/stacktrace.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/src/stacktrace.c b/src/stacktrace.c > index 438cb1dd0d38..b912ca5de502 100644 > --- a/src/stacktrace.c > +++ b/src/stacktrace.c > @@ -1033,7 +1033,7 @@ sysprof_init_dwfl (struct sysprof_unwind_info *sui, > } > > Elf *elf = NULL; > - int elf_fd; > + int elf_fd = -1; > err = find_procfile (dwfl, &pid, &elf, &elf_fd); > if (err < 0) > { > -- > 2.47.0 >
LGTM Thanks, Aaron