https://sourceware.org/bugzilla/show_bug.cgi?id=33293
Bug ID: 33293
Summary: readelf should add a newline after 'Properties:'
Product: binutils
Version: 2.46 (HEAD)
Status: NEW
Severity: normal
Priority: P2
Component: binutils
Assignee: unassigned at sourceware dot org
Reporter: sam at gentoo dot org
Target Milestone: ---
```
$ cat dummy.s
# Dummy
.section ".note.GNU-stack"
$ gcc -O2 -mno-direct-extern-access -c dummy.s -o dummy.o
$ gcc -shared -Wl,-z,lam-u57,-z,indirect-extern-access -z nomemory-seal dummy.o
-o lam-u57.so
$ readelf -n lam-u57.so
Displaying notes found in: .note.gnu.build-id
Owner Data size Description
GNU 0x00000014 NT_GNU_BUILD_ID (unique build ID
bitstring)
Build ID: 6055b92fd65e72fdca1a635d49c997adcceb199b
Displaying notes found in: .note.gnu.property
Owner Data size Description
GNU 0x00000040 NT_GNU_PROPERTY_TYPE_0
Properties: 1_needed: indirect external access # <--- 1_needed should be
on a new line, like the others below
x86 feature: LAM_U57
x86 feature used: x86
x86 ISA used: x86-64-baseline
```
It's missing because the alignment and newline happens in the next label in the
loop:
next:
ptr += ((datasz + (size - 1)) & ~ (size - 1));
if (ptr == ptr_end)
break;
if (do_wide)
printf (", ");
else
printf ("\n\t");
I'll test the trivial patch later (\t needed for the first entry that will
follow too):
--- a/binutils/readelf.c
+++ b/binutils/readelf.c
@@ -21325,7 +21325,7 @@ print_gnu_property_note (Filedata * filedata,
Elf_Internal_Note * pnote)
unsigned char * ptr_end = ptr + pnote->descsz;
unsigned int size = is_32bit_elf ? 4 : 8;
- printf (_(" Properties: "));
+ printf (_(" Properties:\n\t"));
if (pnote->descsz < 8 || (pnote->descsz % size) != 0)
{
but there'll be testsuite fallout so I'll wait until the other issues are
sorted.
--
You are receiving this mail because:
You are on the CC list for the bug.