Package: binutils-common Version: 2.42-4 Severity: minor Tags: patch Dear Maintainer,
here are some notes and editorial fixes for the manual. The patch is in the attachment. -.- Any program (person), that produces man pages, should check its content for warnings (defects) by using groff -mandoc -t -ww -b -z [ -K utf8 | k ] <file> The same goes for man pages that are used as an input. For a style guide use mandoc -T lint -.- The difference between the formatted outputs can be seen with: nroff -man <file1> > <out1> nroff -man <file2> > <out2> diff -u <out1> <out2> and for groff, using "printf '%s\n%s\n' '.kern 0' '.ss 12 0' | groff -man -Z - " instead of "nroff -man" Add the option "-t", if the file contains a table. Read the output of "diff -u" with "less -R" or similar. -.-. If "man" (man-db) is used to check the manual for warnings, the following must be set: The option "-warnings=w" The environmental variable: export MAN_KEEP_STDERR=yes (or any non-empty value) or (produce only warnings): export MANROFFOPT="-ww -z" export MAN_KEEP_STDERR=yes (or any non-empty value) -.-. Output from "mandoc -T lint readelf.1": (possibly shortened list) mandoc: readelf.1:283:69: STYLE: whitespace at end of input line mandoc: readelf.1:334:90: STYLE: input text line longer than 80 bytes: (\f(CW\*(C`.ARM.exid... mandoc: readelf.1:512:65: STYLE: whitespace at end of input line -.-. Remove space characters at the end of lines. Use "git apply ... --whitespace=fix" to fix extra space issues, or use global configuration "core.whitespace". 283:Using the \fB\-\-unicode=highlight\fR will display the characters as 512:output from this option can also be restricted by the use of the -.-. Change '-' (\-) to '\(en' (en-dash) for a numeric range. GNU gnulib has recently (2023-06-18) updated its "build_aux/update-copyright" to recognize "\(en" in man pages. readelf.1:839:Copyright (c) 1991\-2024 Free Software Foundation, Inc. -.-. Mark a full stop (.) and the exclamation mark (!) with "\&", if it does not mean an end of a sentence. This is a preventive action, the paragraph could be reshaped, e.g., after changes. When typing, one does not always notice when the line wraps after the period. There are too many examples of input lines in manual pages, that end with an abbreviation point. This marking is robust, and independent of the position on the line. It corresponds to "\ " in TeX, and to "@:" in Texinfo. 120:\&\fIelffile\fR... are the object files to be examined. 32\-bit and 800:\&\fBreadelf\fR to print each section header resp. each segment one a -.-. Use the RS/RE macros and nf/fi requests, were no filling is needed, instead of manually indenting text. readelf.1:68: [\fB\-h\fR|\fB\-\-file\-header\fR] readelf.1:69: [\fB\-l\fR|\fB\-\-program\-headers\fR|\fB\-\-segments\fR] readelf.1:70: [\fB\-S\fR|\fB\-\-section\-headers\fR|\fB\-\-sections\fR] readelf.1:71: [\fB\-g\fR|\fB\-\-section\-groups\fR] readelf.1:72: [\fB\-t\fR|\fB\-\-section\-details\fR] readelf.1:73: [\fB\-e\fR|\fB\-\-headers\fR] readelf.1:74: [\fB\-s\fR|\fB\-\-syms\fR|\fB\-\-symbols\fR] readelf.1:75: [\fB\-\-dyn\-syms\fR|\fB\-\-lto\-syms\fR] readelf.1:76: [\fB\-\-sym\-base=[0|8|10|16]\fR] readelf.1:77: [\fB\-\-demangle\fR\fI=style\fR|\fB\-\-no\-demangle\fR] readelf.1:78: [\fB\-\-quiet\fR] readelf.1:79: [\fB\-\-recurse\-limit\fR|\fB\-\-no\-recurse\-limit\fR] readelf.1:80: [\fB\-U\fR \fImethod\fR|\fB\-\-unicode=\fR\fImethod\fR] readelf.1:81: [\fB\-X\fR|\fB\-\-extra\-sym\-info\fR|\fB\-\-no\-extra\-sym\-info\fR] readelf.1:82: [\fB\-n\fR|\fB\-\-notes\fR] readelf.1:83: [\fB\-r\fR|\fB\-\-relocs\fR] readelf.1:84: [\fB\-u\fR|\fB\-\-unwind\fR] readelf.1:85: [\fB\-d\fR|\fB\-\-dynamic\fR] readelf.1:86: [\fB\-V\fR|\fB\-\-version\-info\fR] readelf.1:87: [\fB\-A\fR|\fB\-\-arch\-specific\fR] readelf.1:88: [\fB\-D\fR|\fB\-\-use\-dynamic\fR] readelf.1:89: [\fB\-L\fR|\fB\-\-lint\fR|\fB\-\-enable\-checks\fR] readelf.1:90: [\fB\-x\fR <number or name>|\fB\-\-hex\-dump=\fR<number or name>] readelf.1:91: [\fB\-p\fR <number or name>|\fB\-\-string\-dump=\fR<number or name>] readelf.1:92: [\fB\-R\fR <number or name>|\fB\-\-relocated\-dump=\fR<number or name>] readelf.1:93: [\fB\-z\fR|\fB\-\-decompress\fR] readelf.1:94: [\fB\-c\fR|\fB\-\-archive\-index\fR] readelf.1:95: [\fB\-w[lLiaprmfFsoORtUuTgAck]\fR| readelf.1:96: \fB\-\-debug\-dump\fR[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=frames\-interp,=str,=str\-offsets,=loc,=Ranges,=pubtypes,=trace_info,=trace_abbrev,=trace_aranges,=gdb_index,=addr,=cu_index,=links]] readelf.1:97: [\fB\-wK\fR|\fB\-\-debug\-dump=follow\-links\fR] readelf.1:98: [\fB\-wN\fR|\fB\-\-debug\-dump=no\-follow\-links\fR] readelf.1:99: [\fB\-wD\fR|\fB\-\-debug\-dump=use\-debuginfod\fR] readelf.1:100: [\fB\-wE\fR|\fB\-\-debug\-dump=do\-not\-use\-debuginfod\fR] readelf.1:101: [\fB\-P\fR|\fB\-\-process\-links\fR] readelf.1:102: [\fB\-\-dwarf\-depth=\fR\fIn\fR] readelf.1:103: [\fB\-\-dwarf\-start=\fR\fIn\fR] readelf.1:104: [\fB\-\-ctf=\fR\fIsection\fR] readelf.1:105: [\fB\-\-ctf\-parent=\fR\fIsection\fR] readelf.1:106: [\fB\-\-ctf\-symbols=\fR\fIsection\fR] readelf.1:107: [\fB\-\-ctf\-strings=\fR\fIsection\fR] readelf.1:108: [\fB\-\-sframe=\fR\fIsection\fR] readelf.1:109: [\fB\-I\fR|\fB\-\-histogram\fR] readelf.1:110: [\fB\-v\fR|\fB\-\-version\fR] readelf.1:111: [\fB\-W\fR|\fB\-\-wide\fR] readelf.1:112: [\fB\-T\fR|\fB\-\-silent\-truncation\fR] readelf.1:113: [\fB\-H\fR|\fB\-\-help\fR] readelf.1:114: \fIelffile\fR... -.-. Find a repeated word ! 279 --> as -.-. Strings longer than 3/4 of a standard line length (80) 96 \fB\-\-debug\-dump\fR[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=frames\-interp,=str,=str\-offsets,=loc,=Ranges,=pubtypes,=trace_info,=trace_abbrev,=trace_aranges,=gdb_index,=addr,=cu_index,=links]] 437 .IP \fB\-\-debug\-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=frames\-interp,=str,=str\-offsets,=loc,=Ranges,=pubtypes,=trace_info,=trace_abbrev,=trace_aranges,=gdb_index,=addr,=cu_index,=links,=follow\-links]\fR 4 -.-. Wrong distance between sentences. Separate the sentences and subordinate clauses; each begins on a new line. See man-pages(7) ("Conventions for source file layout") and "info groff" ("Input Conventions"). The best procedure is to always start a new sentence on a new line, at least, if you are typing on a computer. Remember coding: Only one command ("sentence") on each (logical) line. E-mail: Easier to quote exactly the relevant lines. Generally: Easier to edit the sentence. Patches: Less unaffected text. Search for two adjacent words is easier, when they belong to the same line, and the same phrase. The amount of space between sentences in the output can then be controlled with the ".ss" request. N.B The number of lines affected can be too large to be in the patch. 120:\&\fIelffile\fR... are the object files to be examined. 32\-bit and 192:Displays the detailed section information. Implies \fB\-S\fR. 797:Don't break output lines to fit into 80 columns. By default 799:64\-bit ELF files, so that they fit into 80 columns. This option causes 800:\&\fBreadelf\fR to print each section header resp. each segment one a -.-. Split lines longer than 80 characters into two or more lines. Appropriate break points are the end of a sentence and a subordinate clause; after punctuation marks. readelf.1: line 96 length 235 \fB\-\-debug\-dump\fR[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=frames\-interp,=str,=str\-offsets,=loc,=Ranges,=pubtypes,=trace_info,=trace_abbrev,=trace_aranges,=gdb_index,=addr,=cu_index,=links]] readelf.1: line 334 length 90 (\f(CW\*(C`.ARM.exidx\*(C'\fR / \f(CW\*(C`.ARM.extab\*(C'\fR) are currently supported. If readelf.1: line 437 length 246 .IP \fB\-\-debug\-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=frames\-interp,=str,=str\-offsets,=loc,=Ranges,=pubtypes,=trace_info,=trace_abbrev,=trace_aranges,=gdb_index,=addr,=cu_index,=links,=follow\-links]\fR 4 -.-. Remove unnecessary double font change (e.g., \fR\fI) in a row or (better) use a two-fonts macro. 77: [\fB\-\-demangle\fR\fI=style\fR|\fB\-\-no\-demangle\fR] 80: [\fB\-U\fR \fImethod\fR|\fB\-\-unicode=\fR\fImethod\fR] 102: [\fB\-\-dwarf\-depth=\fR\fIn\fR] 103: [\fB\-\-dwarf\-start=\fR\fIn\fR] 104: [\fB\-\-ctf=\fR\fIsection\fR] 105: [\fB\-\-ctf\-parent=\fR\fIsection\fR] 106: [\fB\-\-ctf\-symbols=\fR\fIsection\fR] 107: [\fB\-\-ctf\-strings=\fR\fIsection\fR] 108: [\fB\-\-sframe=\fR\fIsection\fR] 231:.IP \fB\-\-demangle[=\fR\fIstyle\fR\fB]\fR 4 717:.IP \fB\-\-dwarf\-depth=\fR\fIn\fR 4 726:.IP \fB\-\-dwarf\-start=\fR\fIn\fR 4 746:.IP \fB\-\-ctf[=\fR\fIsection\fR\fB]\fR 4 753:.IP \fB\-\-ctf\-parent=\fR\fImember\fR 4 764:.IP \fB\-\-ctf\-symbols=\fR\fIsection\fR 4 767:.IP \fB\-\-ctf\-strings=\fR\fIsection\fR 4 821:.IP \fB@\fR\fIfile\fR 4 -.-. Output from "test-groff -b -mandoc -dAD=l -rF0 -rHY=0 -t -w w -z -K utf8": troff: backtrace: file '<stdin>':96 troff:<stdin>:96: warning: [page 1, 6.3i]: cannot break line troff: backtrace: file '<stdin>':283 troff:<stdin>:283: warning: trailing space in the line troff: backtrace: '/home/bg/git/groff/build/s-tmac/an.tmac':613: macro 'IP' troff: backtrace: file '<stdin>':437 troff:<stdin>:437: warning: [page 4, 10.0i (diversion 'an*paragraph-tag', 0.0i)]: cannot break line troff: backtrace: file '<stdin>':512 troff:<stdin>:512: warning: trailing space in the line -.- The number '100000' changed to '100,000' to make it more readable. -- System Information: Debian Release: trixie/sid APT prefers testing APT policy: (500, 'testing') Architecture: amd64 (x86_64) Kernel: Linux 6.7.12-amd64 (SMP w/2 CPU threads; PREEMPT) Locale: LANG=is_IS.iso88591, LC_CTYPE=is_IS.iso88591 (charmap=ISO-8859-1), LANGUAGE not set Shell: /bin/sh linked to /usr/bin/dash Init: sysvinit (via /sbin/init) -- no debconf information
--- readelf.1 2024-05-27 14:57:44.237544404 +0000 +++ readelf.1.new 2024-05-27 19:25:51.959763620 +0000 @@ -4,7 +4,7 @@ .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) -.if t .sp .5v +.if t .sp 0.5v .if n .sp .. .de Vb \" Begin verbatim text @@ -64,61 +64,71 @@ readelf \- display information about ELF files .SH SYNOPSIS .IX Header "SYNOPSIS" +.nr Wr \w'readelf '\" Indent for the text block readelf [\fB\-a\fR|\fB\-\-all\fR] - [\fB\-h\fR|\fB\-\-file\-header\fR] - [\fB\-l\fR|\fB\-\-program\-headers\fR|\fB\-\-segments\fR] - [\fB\-S\fR|\fB\-\-section\-headers\fR|\fB\-\-sections\fR] - [\fB\-g\fR|\fB\-\-section\-groups\fR] - [\fB\-t\fR|\fB\-\-section\-details\fR] - [\fB\-e\fR|\fB\-\-headers\fR] - [\fB\-s\fR|\fB\-\-syms\fR|\fB\-\-symbols\fR] - [\fB\-\-dyn\-syms\fR|\fB\-\-lto\-syms\fR] - [\fB\-\-sym\-base=[0|8|10|16]\fR] - [\fB\-\-demangle\fR\fI=style\fR|\fB\-\-no\-demangle\fR] - [\fB\-\-quiet\fR] - [\fB\-\-recurse\-limit\fR|\fB\-\-no\-recurse\-limit\fR] - [\fB\-U\fR \fImethod\fR|\fB\-\-unicode=\fR\fImethod\fR] - [\fB\-X\fR|\fB\-\-extra\-sym\-info\fR|\fB\-\-no\-extra\-sym\-info\fR] - [\fB\-n\fR|\fB\-\-notes\fR] - [\fB\-r\fR|\fB\-\-relocs\fR] - [\fB\-u\fR|\fB\-\-unwind\fR] - [\fB\-d\fR|\fB\-\-dynamic\fR] - [\fB\-V\fR|\fB\-\-version\-info\fR] - [\fB\-A\fR|\fB\-\-arch\-specific\fR] - [\fB\-D\fR|\fB\-\-use\-dynamic\fR] - [\fB\-L\fR|\fB\-\-lint\fR|\fB\-\-enable\-checks\fR] - [\fB\-x\fR <number or name>|\fB\-\-hex\-dump=\fR<number or name>] - [\fB\-p\fR <number or name>|\fB\-\-string\-dump=\fR<number or name>] - [\fB\-R\fR <number or name>|\fB\-\-relocated\-dump=\fR<number or name>] - [\fB\-z\fR|\fB\-\-decompress\fR] - [\fB\-c\fR|\fB\-\-archive\-index\fR] - [\fB\-w[lLiaprmfFsoORtUuTgAck]\fR| - \fB\-\-debug\-dump\fR[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=frames\-interp,=str,=str\-offsets,=loc,=Ranges,=pubtypes,=trace_info,=trace_abbrev,=trace_aranges,=gdb_index,=addr,=cu_index,=links]] - [\fB\-wK\fR|\fB\-\-debug\-dump=follow\-links\fR] - [\fB\-wN\fR|\fB\-\-debug\-dump=no\-follow\-links\fR] - [\fB\-wD\fR|\fB\-\-debug\-dump=use\-debuginfod\fR] - [\fB\-wE\fR|\fB\-\-debug\-dump=do\-not\-use\-debuginfod\fR] - [\fB\-P\fR|\fB\-\-process\-links\fR] - [\fB\-\-dwarf\-depth=\fR\fIn\fR] - [\fB\-\-dwarf\-start=\fR\fIn\fR] - [\fB\-\-ctf=\fR\fIsection\fR] - [\fB\-\-ctf\-parent=\fR\fIsection\fR] - [\fB\-\-ctf\-symbols=\fR\fIsection\fR] - [\fB\-\-ctf\-strings=\fR\fIsection\fR] - [\fB\-\-sframe=\fR\fIsection\fR] - [\fB\-I\fR|\fB\-\-histogram\fR] - [\fB\-v\fR|\fB\-\-version\fR] - [\fB\-W\fR|\fB\-\-wide\fR] - [\fB\-T\fR|\fB\-\-silent\-truncation\fR] - [\fB\-H\fR|\fB\-\-help\fR] - \fIelffile\fR... +.RS \n(Wru +.nf +[\fB\-h\fR|\fB\-\-file\-header\fR] +[\fB\-l\fR|\fB\-\-program\-headers\fR|\fB\-\-segments\fR] +[\fB\-S\fR|\fB\-\-section\-headers\fR|\fB\-\-sections\fR] +[\fB\-g\fR|\fB\-\-section\-groups\fR] +[\fB\-t\fR|\fB\-\-section\-details\fR] +[\fB\-e\fR|\fB\-\-headers\fR] +[\fB\-s\fR|\fB\-\-syms\fR|\fB\-\-symbols\fR] +[\fB\-\-dyn\-syms\fR|\fB\-\-lto\-syms\fR] +[\fB\-\-sym\-base=[0|8|10|16]\fR] +[\fB\-\-demangle\fI=style\fR|\fB\-\-no\-demangle\fR] +[\fB\-\-quiet\fR] +[\fB\-\-recurse\-limit\fR|\fB\-\-no\-recurse\-limit\fR] +[\fB\-U\fR \fImethod\fR|\fB\-\-unicode=\fImethod\fR] +[\fB\-X\fR|\fB\-\-extra\-sym\-info\fR|\fB\-\-no\-extra\-sym\-info\fR] +[\fB\-n\fR|\fB\-\-notes\fR] +[\fB\-r\fR|\fB\-\-relocs\fR] +[\fB\-u\fR|\fB\-\-unwind\fR] +[\fB\-d\fR|\fB\-\-dynamic\fR] +[\fB\-V\fR|\fB\-\-version\-info\fR] +[\fB\-A\fR|\fB\-\-arch\-specific\fR] +[\fB\-D\fR|\fB\-\-use\-dynamic\fR] +[\fB\-L\fR|\fB\-\-lint\fR|\fB\-\-enable\-checks\fR] +[\fB\-x\fR \fI<number or name>\fR|\fB\-\-hex\-dump=\fI<number or name>\fR] +[\fB\-p\fR \fI<number or name>\fR|\fB\-\-string\-dump=\fI<number or name>\fR] +[\fB\-R\fR \fI<number or name>\fR|\fB\-\-relocated\-dump=\fI<number or name>\fR] +[\fB\-z\fR|\fB\-\-decompress\fR] +[\fB\-c\fR|\fB\-\-archive\-index\fR] +.fi +[\fB\-w\fR[\fBlLiaprmfFsoORtUuTgAck\fR] | \ +\fB\-\-debug\-dump\fR[\fB=rawline,\:=decodedline,\:=info,\:=abbrev,\:=pubnames,\ +\:=aranges,\:=macro,\:=frames,\:=frames\-interp,\:=str,\:=str\-offsets,\:=loc,\ +\:=Ranges,\:=pubtypes,\:=trace_info,\:=trace_abbrev,\:=trace_aranges,\:=gdb_index,\ +\:=addr,\:=cu_index,\:=links\fR]] +.nf +[\fB\-wK\fR|\fB\-\-debug\-dump=follow\-links\fR] +[\fB\-wN\fR|\fB\-\-debug\-dump=no\-follow\-links\fR] +[\fB\-wD\fR|\fB\-\-debug\-dump=use\-debuginfod\fR] +[\fB\-wE\fR|\fB\-\-debug\-dump=do\-not\-use\-debuginfod\fR] +[\fB\-P\fR|\fB\-\-process\-links\fR] +[\fB\-\-dwarf\-depth=\fIn\fR] +[\fB\-\-dwarf\-start=\fIn\fR] +[\fB\-\-ctf=\fIsection\fR] +[\fB\-\-ctf\-parent=\fIsection\fR] +[\fB\-\-ctf\-symbols=\fIsection\fR] +[\fB\-\-ctf\-strings=\fIsection\fR] +[\fB\-\-sframe=\fIsection\fR] +[\fB\-I\fR|\fB\-\-histogram\fR] +[\fB\-v\fR|\fB\-\-version\fR] +[\fB\-W\fR|\fB\-\-wide\fR] +[\fB\-T\fR|\fB\-\-silent\-truncation\fR] +[\fB\-H\fR|\fB\-\-help\fR] +\fIelffile\fR... +.RE .SH DESCRIPTION .IX Header "DESCRIPTION" \&\fBreadelf\fR displays information about one or more ELF format object files. The options control what particular information to display. .PP -\&\fIelffile\fR... are the object files to be examined. 32\-bit and -64\-bit ELF files are supported, as are archives containing ELF files. +\&\fIelffile\fR...\& are the object files to be examined. +32\-bit and 64\-bit ELF files are supported, as are archives containing ELF +files. .PP This program performs a similar function to \fBobjdump\fR but it goes into more detail and it exists independently of the BFD @@ -181,15 +191,16 @@ has any. .IP \fB\-\-section\-groups\fR 4 .IX Item "--section-groups" .PD -Displays the information contained in the file's section groups, if it -has any. +Displays the information contained in the file's section groups, +if it has any. .IP \fB\-t\fR 4 .IX Item "-t" .PD 0 .IP \fB\-\-section\-details\fR 4 .IX Item "--section-details" .PD -Displays the detailed section information. Implies \fB\-S\fR. +Displays the detailed section information. +Implies \fB\-S\fR. .IP \fB\-s\fR 4 .IX Item "-s" .PD 0 @@ -219,7 +230,7 @@ Displays the contents of any LTO symbol Forces the size field of the symbol table to use the given base. Any unrecognized options will be treated as \fB0\fR. \fB\-\-sym\-base=0\fR represents the default and legacy behaviour. This will output sizes as decimal -for numbers less than 100000. For sizes 100000 and greater hexadecimal notation +for numbers less than 100,000. For sizes 100,000 and greater hexadecimal notation will be used with a 0x prefix. \&\fB\-\-sym\-base=8\fR will give the symbol sizes in octal. \&\fB\-\-sym\-base=10\fR will always give the symbol sizes in decimal. @@ -228,7 +239,7 @@ will be used with a 0x prefix. .IP \fB\-C\fR 4 .IX Item "-C" .PD 0 -.IP \fB\-\-demangle[=\fR\fIstyle\fR\fB]\fR 4 +.IP \fB\-\-demangle[=\fIstyle\fR] 4 .IX Item "--demangle[=style]" .PD Decode (\fIdemangle\fR) low-level symbol names into user-level names. @@ -263,7 +274,7 @@ possible and any bug reports about such .IP "\fB\-U\fR \fI[d|i|l|e|x|h]\fR" 4 .IX Item "-U [d|i|l|e|x|h]" .PD 0 -.IP \fB\-\-unicode=[default|invalid|locale|escape|hex|highlight]\fR 4 +.IP \fB\-\-unicode=\fR[\fBdefault|invalid|locale|escape|hex|highlight\fR] 4 .IX Item "--unicode=[default|invalid|locale|escape|hex|highlight]" .PD Controls the display of non-ASCII characters in identifier names. @@ -273,14 +284,14 @@ locale. All other versions of this opti encoded values and attempt to interpret them. If they cannot be interpreted or if the \fB\-\-unicode=invalid\fR option is used then they are displayed as a sequence of hex bytes, encloses in curly -parethesis characters. +parenthesis characters. .Sp Using the \fB\-\-unicode=escape\fR option will display the characters -as as unicode escape sequences (\fI\euxxxx\fR). Using the +as unicode escape sequences (\eu\fIxxxx\fR). Using the \&\fB\-\-unicode=hex\fR will display the characters as hex byte sequences enclosed between angle brackets. .Sp -Using the \fB\-\-unicode=highlight\fR will display the characters as +Using the \fB\-\-unicode=highlight\fR will display the characters as unicode escape sequences but it will also highlighted them in red, assuming that colouring is supported by the output device. The colouring is intended to draw attention to the presence of unicode @@ -331,8 +342,9 @@ Displays the contents of the file's relo .PD Displays the contents of the file's unwind section, if it has one. Only the unwind sections for IA64 ELF files, as well as ARM unwind tables -(\f(CW\*(C`.ARM.exidx\*(C'\fR / \f(CW\*(C`.ARM.extab\*(C'\fR) are currently supported. If -support is not yet implemented for your architecture you could try +(\f(CW\*(C`.ARM.exidx\*(C'\fR / \f(CW\*(C`.ARM.extab\*(C'\fR) are currently +supported. +If support is not yet implemented for your architecture you could try dumping the contents of the \fI.eh_frames\fR section using the \&\fB\-\-debug\-dump=frames\fR or \fB\-\-debug\-dump=frames\-interp\fR options. @@ -384,19 +396,19 @@ being examined. If used on its own then file(s) will be examined. If used with one of the dumping options then the warning messages will only be produced for the things being displayed. -.IP "\fB\-x <number or name>\fR" 4 +.IP "\fB\-x \fI<number or name>\fR" 4 .IX Item "-x <number or name>" .PD 0 -.IP "\fB\-\-hex\-dump=<number or name>\fR" 4 +.IP "\fB\-\-hex\-dump=\fI<number or name>\fR" 4 .IX Item "--hex-dump=<number or name>" .PD Displays the contents of the indicated section as a hexadecimal bytes. A number identifies a particular section by index in the section table; any other string identifies all sections with that name in the object file. -.IP "\fB\-R <number or name>\fR" 4 +.IP "\fB\-R \fI<number or name>\fR" 4 .IX Item "-R <number or name>" .PD 0 -.IP "\fB\-\-relocated\-dump=<number or name>\fR" 4 +.IP "\fB\-\-relocated\-dump=\fI<number or name>\fR" 4 .IX Item "--relocated-dump=<number or name>" .PD Displays the contents of the indicated section as a hexadecimal @@ -404,10 +416,10 @@ bytes. A number identifies a particular section table; any other string identifies all sections with that name in the object file. The contents of the section will be relocated before they are displayed. -.IP "\fB\-p <number or name>\fR" 4 +.IP "\fB\-p \fI<number or name>\fR" 4 .IX Item "-p <number or name>" .PD 0 -.IP "\fB\-\-string\-dump=<number or name>\fR" 4 +.IP "\fB\-\-string\-dump=\fI<number or name>\fR" 4 .IX Item "--string-dump=<number or name>" .PD Displays the contents of the indicated section as printable strings. @@ -431,12 +443,17 @@ section(s) are not compressed then they Displays the file symbol index information contained in the header part of binary archives. Performs the same function as the \fBt\fR command to \fBar\fR, but without using the BFD library. -.IP \fB\-w[lLiaprmfFsOoRtUuTgAckK]\fR 4 +.IP \fB\-w\fR[\fBlLiaprmfFsOoRtUuTgAckK\fR] 4 .IX Item "-w[lLiaprmfFsOoRtUuTgAckK]" .PD 0 -.IP \fB\-\-debug\-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=frames\-interp,=str,=str\-offsets,=loc,=Ranges,=pubtypes,=trace_info,=trace_abbrev,=trace_aranges,=gdb_index,=addr,=cu_index,=links,=follow\-links]\fR 4 +.\".IP \fB\-\-debug\-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=frames\-interp,=str,=str\-offsets,=loc,=Ranges,=pubtypes,=trace_info,=trace_abbrev,=trace_aranges,=gdb_index,=addr,=cu_index,=links,=follow\-links]\fR 4 +.IP "\fB\-\-debug\-dump\fR[\fB=rawline,\:=decodedline,\:=info,\:=abbrev,\:=pubnames, \ +=aranges,\:=macro,\:=frames,\:=frames\-interp,\:=str,\:=str\-offsets,\:=loc, \ +=Ranges,\:=pubtypes,\:=trace_info,\:=trace_abbrev,\:=trace_aranges,\:=gdb_index, \ +=addr,\:=cu_index,\:=links,\:=follow\-links\fR]" 4 .IX Item "--debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=frames-interp,=str,=str-offsets,=loc,=Ranges,=pubtypes,=trace_info,=trace_abbrev,=trace_aranges,=gdb_index,=addr,=cu_index,=links,=follow-links]" .PD +.br Displays the contents of the DWARF debug sections in the file, if any are present. Compressed debug sections are automatically decompressed (temporarily) before they are displayed. If one or more of the @@ -509,7 +526,7 @@ Displays the contents of the \fB.gdb_ind .IX Item "=info" .PD Displays the contents of the \fB.debug_info\fR section. Note: the -output from this option can also be restricted by the use of the +output from this option can also be restricted by the use of the \&\fB\-\-dwarf\-depth\fR and \fB\-\-dwarf\-start\fR options. .ie n .IP """k""" 4 .el .IP \f(CWk\fR 4 @@ -714,7 +731,7 @@ Note: displaying the contents of \fB.deb \&\fB.debug_static_vars\fR and \fBdebug_weaknames\fR sections is not currently supported. .RE -.IP \fB\-\-dwarf\-depth=\fR\fIn\fR 4 +.IP \fB\-\-dwarf\-depth=\fIn\fR 4 .IX Item "--dwarf-depth=n" Limit the dump of the \f(CW\*(C`.debug_info\*(C'\fR section to \fIn\fR children. This is only useful with \fB\-\-debug\-dump=info\fR. The default is @@ -723,7 +740,7 @@ effect. .Sp With a non-zero value for \fIn\fR, DIEs at or deeper than \fIn\fR levels will not be printed. The range for \fIn\fR is zero-based. -.IP \fB\-\-dwarf\-start=\fR\fIn\fR 4 +.IP \fB\-\-dwarf\-start=\fIn\fR 4 .IX Item "--dwarf-start=n" Print only DIEs beginning with the DIE numbered \fIn\fR. This is only useful with \fB\-\-debug\-dump=info\fR. @@ -743,14 +760,14 @@ Display the contents of non-debug sectio files that are linked to the main file. This option automatically implies the \fB\-wK\fR option, and only sections requested by other command line options will be displayed. -.IP \fB\-\-ctf[=\fR\fIsection\fR\fB]\fR 4 +.IP \fB\-\-ctf\fR[\fB=\fIsection\fR] 4 .IX Item "--ctf[=section]" Display the contents of the specified CTF section. CTF sections themselves contain many subsections, all of which are displayed in order. .Sp By default, display the name of the section named \fI.ctf\fR, which is the name emitted by \fBld\fR. -.IP \fB\-\-ctf\-parent=\fR\fImember\fR 4 +.IP \fB\-\-ctf\-parent=\fImember\fR 4 .IX Item "--ctf-parent=member" If the CTF section contains ambiguously-defined types, it will consist of an archive of many CTF dictionaries, all inheriting from one @@ -761,10 +778,10 @@ function at link time. When looking at created by a linker that uses the name changer to rename the parent archive member, \fB\-\-ctf\-parent\fR can be used to specify the name used for the parent. -.IP \fB\-\-ctf\-symbols=\fR\fIsection\fR 4 +.IP \fB\-\-ctf\-symbols=\fIsection\fR 4 .IX Item "--ctf-symbols=section" .PD 0 -.IP \fB\-\-ctf\-strings=\fR\fIsection\fR 4 +.IP \fB\-\-ctf\-strings=\fIsection\fR 4 .IX Item "--ctf-strings=section" .PD Specify the name of another section from which the CTF file can inherit @@ -794,11 +811,13 @@ Display the version number of readelf. .IP \fB\-\-wide\fR 4 .IX Item "--wide" .PD -Don't break output lines to fit into 80 columns. By default -\&\fBreadelf\fR breaks section header and segment listing lines for -64\-bit ELF files, so that they fit into 80 columns. This option causes -\&\fBreadelf\fR to print each section header resp. each segment one a -single line, which is far more readable on terminals wider than 80 columns. +Don't break output lines to fit into 80 columns. +By default \fBreadelf\fR breaks section header and segment listing lines for +64\-bit ELF files, +so that they fit into 80 columns. +This option causes \fBreadelf\fR to print each section header resp.\& each +segment one a single line, which is far more readable on terminals wider +than 80 columns. .IP \fB\-T\fR 4 .IX Item "-T" .PD 0 @@ -818,7 +837,7 @@ displayed and restoring the old behaviou .IX Item "--help" .PD Display the command-line options understood by \fBreadelf\fR. -.IP \fB@\fR\fIfile\fR 4 +.IP \fB@\fIfile\fR 4 .IX Item "@file" Read command-line options from \fIfile\fR. The options read are inserted in place of the original @\fIfile\fR option. If \fIfile\fR @@ -836,7 +855,7 @@ with a backslash. The \fIfile\fR may it \&\fBobjdump\fR\|(1), and the Info entries for \fIbinutils\fR. .SH COPYRIGHT .IX Header "COPYRIGHT" -Copyright (c) 1991\-2024 Free Software Foundation, Inc. +Copyright (c) 1991\(en2024 Free Software Foundation, Inc. .PP Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3