[Bug tools/32538] New: unexpected result with addr2line

2025-01-09 Thread pangbw at gmail dot com
https://sourceware.org/bugzilla/show_bug.cgi?id=32538

Bug ID: 32538
   Summary: unexpected result with addr2line
   Product: elfutils
   Version: unspecified
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: tools
  Assignee: unassigned at sourceware dot org
  Reporter: pangbw at gmail dot com
CC: elfutils-devel at sourceware dot org
  Target Milestone: ---

Created attachment 15876
  --> https://sourceware.org/bugzilla/attachment.cgi?id=15876&action=edit
a.out

The addr2line can return the filename and linenumber if specify the elf file
with "-e":

$ ./elfutils/src/addr2line -e a.out 0x1129
/home/bpang/tmp/t.c:1:11

But if not using "-e", it would fail to get the info:

$ ./elfutils/src/addr2line 0x1129
??:0

I think the result should be same for the two invoking. 

By the way, the addr2line from binutils works fine for the both cases.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

Supress false positive warning GCC -O3

2025-01-09 Thread Phi Debian
Building with gcc -O3 bring false positive warning. This is a GCC bug, and
this patch is a work around.

This is reported at
https://sourceware.org/bugzilla/show_bug.cgi?id=32527

Cheers,
Phi
From 3ac65cf6eec36a9a22af378e89bc4d5b148d8713 Mon Sep 17 00:00:00 2001
From: Philippe Benard 
Date: Thu, 9 Jan 2025 14:59:00 +0100
Subject: [PATCH] libcpu: Remove false positive null ptr deref warning for GCC
 -O3

See bugzilla Bug#32527

* libcpu/Makefile.am
i386_lex_CFLAGS += $(subst -O3,-Wno-null-dereference,$(findstring -O3,$(CFLAGS)))

i386_lex_CFLAGS is a make variable to tweak the i386_lex.c.o
specific compile flags. The are already some -W defined there, I'd
like to add one to avoid seeing false warning during build with -O3
compile flag.

GCC 14.2 (as well as 13.x) produce a false positive warning for the
i386 lexer, a bug is filled already against GCC for that, CLANG is
imune.

Signed-off-by: Philippe Benard 
---
 libcpu/Makefile.am | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/libcpu/Makefile.am b/libcpu/Makefile.am
index 32835237..2e87021b 100644
--- a/libcpu/Makefile.am
+++ b/libcpu/Makefile.am
@@ -91,6 +91,8 @@ libeu = ../lib/libeu.a
 
 i386_lex_CFLAGS = -Wno-unused-label -Wno-unused-function -Wno-sign-compare \
 		  -Wno-implicit-fallthrough
+i386_lex_CFLAGS += $(subst -O3,-Wno-null-dereference,$(findstring -O3,$(CFLAGS)))
+
 i386_parse.o: i386_parse.c i386.mnemonics
 i386_lex.o: i386_parse.h
 i386_gendis_LDADD = $(libeu) -lm $(obstack_LIBS)
-- 
2.43.0