[PATCH] [libbacktrace] Initialize st in elf_is_symlink

James Hilliard james.hilliard1@gmail.com
Tue Mar 19 00:58:00 GMT 2019


On Mon, Mar 18, 2019 at 5:46 PM Jeff Law <law@redhat.com> wrote:
>
> On 3/18/19 5:07 PM, James Hilliard wrote:
> > On Mon, Mar 18, 2019 at 4:51 PM Jakub Jelinek <jakub@redhat.com> wrote:
> >>
> >> On Mon, Mar 18, 2019 at 04:41:05PM -0600, James Hilliard wrote:
> >>>> Thanks, but I'm saying that if you look at the code you can see that
> >>>> st is clearly initialized, by the call to lstat.  I would like to see
> >>>> an explanation for why you are seeing that warning before changing the
> >>>> code to disable it.  Initializing st should not be necessary here.
> >>>> For example, perhaps lstat is a macro when compiling libsanitizer; if
> >>>> that is the underlying problem, then we should fix the macro, not this
> >>>> code.
> >>> Yeah, I'm not sure why the compiler thinks lstat isn't initializing st.
> >>> What should I do to debug this further?
> >>
> >> Guess you should start by telling us which OS it is on (I can't reproduce
> >> this warning on x86_64-linux nor i686-linux with glibc 2.28), looking at
> >> preprocessed source to see what exactly lstat does (e.g. if it is some macro
> >> or inline function and what exactly it is doing).
> > I am cross compiling with buildroot master branch using ubuntu 18.10.
> > I am building gcc 8.3.0 and glibc 2.29 for the cross toolchain.
> > The build and target systems are both x86_64.
> Add "-save-temps" to the command line.  That will create a .i file, send
> the .i file along with the command line.
I added --save-temps to the cflags for the gcc package build.
Here's the command line log:
https://gist.githubusercontent.com/jameshilliard/015d972c26d1ec7bbbd1ad2d57d5dd3b/raw/7c848cdfba0967a681401de24ed6f4c86315d2d9/cli.log
Here's the elf.i fille:
https://gist.githubusercontent.com/jameshilliard/2a391d7292f3ba7412fe80e166c0f0e3/raw/63eb16ba9eff0b3ee668b16257b0948b2ca894a0/elf.i
>
> jeff



More information about the Gcc-patches mailing list