More changes from Committee review. This checkin corresponds to
[dwarf-doc.git] / dwarf5 / latexdoc / generaldescription.tex
index e4ec950..6d393c8 100644 (file)
@@ -168,41 +168,55 @@ The attributes are listed in Table \referfol{tab:attributenames}.
 \endfoot
   \hline
 \endlastfoot
+
 \DWATabstractoriginTARG
-&\livelinki{chap:DWATabstractorigininlineinstance}{Inline instances of inline subprograms} {inline instances of inline subprograms} \\
+&\livelinki{chap:DWATabstractorigininlineinstance}
+        {Inline instances of inline subprograms} 
+        {inline instances of inline subprograms} \\
 % Heren livelink we cannot use \dash or \dash{}.
-&\livelinki{chap:DWATabstractoriginoutoflineinstance}{Out-of-line instances of inline subprograms}{out-of-line instances of inline subprograms} \\
+&\livelinki{chap:DWATabstractoriginoutoflineinstance}
+        {Out-of-line instances of inline subprograms}
+        {out-of-line instances of inline subprograms} \\
 \DWATaccessibilityTARG
-&\livelink{chap:DWATaccessibilitycandadadeclarations}{C++ and Ada declarations} \addtoindexx{Ada} \\
-&\livelink{chap:DWATaccessibilitycppbaseclasses}{C++ base classes} \\
-&\livelink{chap:DWATaccessibilitycppinheritedmembers}{C++ inherited members} \\
+&\livelink{chap:DWATaccessibilitycandadadeclarations}
+        {Accessibility of declarations} (\addtoindex{C++}, \addtoindex{Ada}) \\
+&\livelink{chap:DWATaccessibilitycppbaseclasses}
+        {Accessibility of base classes} (\addtoindex{C++}) \\
+&\livelink{chap:DWATaccessibilitycppinheritedmembers}
+        {Accessibility of inherited members} (\addtoindex{C++}) \\
 \DWATaddressclassTARG
-&\livelinki{chap:DWATadressclasspointerorreferencetypes}{Pointer or reference types}{pointer or reference types}  \\
+&\livelinki{chap:DWATadressclasspointerorreferencetypes}
+        {Pointer or reference types}
+        {pointer or reference types}  \\
 &\livelinki{chap:DWATaddressclasssubroutineorsubroutinetype}
-           {Subroutine or subroutine type}
-           {subroutine or subroutine type} \\
+        {Subroutine or subroutine type}
+        {subroutine or subroutine type} \\
 \DWATaddrbaseTARG
 &\livelinki{chap:DWATaddrbaseforaddresstable}{Base offset for address table}{address table} \\
 \DWATalignmentTARG
 &\livelinki{chap:DWATalignmentnondefault}
-           {Non-default alignment of type, subprogram or variable}
-           {non-default alignment} \addtoindexx{alignment!non-default} \\
+        {Non-default alignment of type, subprogram or variable}
+        {non-default alignment} \addtoindexx{alignment!non-default} \\
 \DWATallocatedTARG
-&\livelinki{chap:DWATallocatedallocationstatusoftypes}{Allocation status of types}{allocation status of types}  \\
+&\livelinki{chap:DWATallocatedallocationstatusoftypes}
+        {Allocation status of types}
+        {allocation status of types}  \\
 \DWATartificialTARG
 &\livelinki{chap:DWATartificialobjectsortypesthat}
-           {Objects or types that are not actually declared in the source}
-           {objects or types that are not actually declared in the source}  \\
+        {Objects or types that are not actually declared in the source}
+        {objects or types that are not actually declared in the source}  \\
 \DWATassociatedTARG{} 
-&\livelinki{chap:DWATassociatedassociationstatusoftypes}{Association status of types}{association status of types} \\
+&\livelinki{chap:DWATassociatedassociationstatusoftypes}
+        {Association status of types}
+        {association status of types} \\
 \DWATbasetypesTARG{} 
 &\livelinki{chap:DWATbasetypesprimitivedatatypesofcompilationunit}
-           {Primitive data types of compilation unit}
-           {primitive data types of compilation unit} \\
+        {Primitive data types of compilation unit}
+        {primitive data types of compilation unit} \\
 \DWATbinaryscaleTARG{} 
 &\livelinki{chap:DWATbinaryscalebinaryscalefactorforfixedpointtype}
-           {Binary scale factor for fixed-point type}
-           {binary scale factor for fixed-point type} \\
+        {Binary scale factor for fixed-point type}
+        {binary scale factor for fixed-point type} \\
 %\DWATbitoffsetTARG{} 
 %&\livelinki{chap:DWATbitoffsetbasetypebitlocation}{Base type bit location}{base type bit location} \\
 %&\livelinki{chap:DWATbitoffsetdatamemberbitlocation}{Data member bit location}{data member bit location} \\
@@ -221,7 +235,8 @@ The attributes are listed in Table \referfol{tab:attributenames}.
            {enumeration stride (dimension of array type)} \\
 \DWATbytesizeTARG{} 
 &\livelinki{chap:DWATbytesizedataobjectordatatypesize}
-           {Size of a data object or data type in bytes}{data object or data type size} \\
+           {Size of a data object or data type in bytes}
+           {data object or data type size} \\
 \DWATbytestrideTARG{} 
 &\livelinki{chap:DWATbytestridearrayelementstrideofarraytype}
            {Array element stride (of array type)}
@@ -325,10 +340,16 @@ The attributes are listed in Table \referfol{tab:attributenames}.
 &\livelinki{chap:DWATconstvalueenumerationliteralvalue}{Enumeration literal value}{enumeration literal value} \\
 &\livelinki{chap:DWATconstvaluetemplatevalueparameter}{Template value parameter}{template value parameter} \\
 \DWATconstexprTARG
-&\livelinki{chap:DWATconstexprcompiletimeconstantobject}{Compile-time constant object}{compile-time constant object} \\
-&\livelinki{chap:DWATconstexprcompiletimeconstantfunction}{Compile-time constant function}{compile-time constant function} \\
+&\livelinki{chap:DWATconstexprcompiletimeconstantobject}
+        {Compile-time constant object}
+        {compile-time constant object} \\
+&\livelinki{chap:DWATconstexprcompiletimeconstantfunction}
+        {Compile-time constant function}
+        {compile-time constant function} \\
 \DWATcontainingtypeTARG
-&\livelinki{chap:DWATcontainingtypecontainingtypeofpointertomembertype}{Containing type of pointer to member type}{containing type of pointer to member type} \\
+&\livelinki{chap:DWATcontainingtypecontainingtypeofpointertomembertype}
+        {Containing type of pointer to member type}
+        {containing type of pointer to member type} \\
 \DWATcountTARG
 &\livelinki{chap:DWATcountelementsofsubrangetype}{Elements of subrange type}{elements of breg subrange type} \\
 \DWATdatabitoffsetTARG
@@ -344,13 +365,21 @@ The attributes are listed in Table \referfol{tab:attributenames}.
 \DWATdecimalsignTARG
 &\livelinki{chap:DWATdecimalsigndecimalsignrepresentation}{Decimal sign representation}{decimal sign representation} \\
 \DWATdeclcolumnTARG
-&\livelinki{chap:DWATdeclcolumncolumnpositionofsourcedeclaration}{Column position of source declaration}{column position of source declaration} \\
+&\livelinki{chap:DWATdeclcolumncolumnpositionofsourcedeclaration}
+        {Column position of source declaration}
+        {column position of source declaration} \\
 \DWATdeclfileTARG
-&\livelinki{chap:DWATdeclfilefilecontainingsourcedeclaration}{File containing source declaration}{file containing source declaration} \\
+&\livelinki{chap:DWATdeclfilefilecontainingsourcedeclaration}
+        {File containing source declaration}
+        {file containing source declaration} \\
 \DWATdecllineTARG
-&\livelinki{chap:DWATdecllinelinenumberofsourcedeclaration}{Line number of source declaration}{line number of source declaration} \\
+&\livelinki{chap:DWATdecllinelinenumberofsourcedeclaration}
+        {Line number of source declaration}
+        {line number of source declaration} \\
 \DWATdeclarationTARG
-&\livelinki{chap:DWATdeclarationincompletenondefiningorseparateentitydeclaration}{Incomplete, non-defining, or separate entity declaration}{incomplete, non-defining, or separate entity declaration} \\
+&\livelinki{chap:DWATdeclarationincompletenondefiningorseparateentitydeclaration}
+        {Incomplete, non-defining, or separate entity declaration}
+        {incomplete, non-defining, or separate entity declaration} \\
 \DWATdefaultedTARG
 &\livelinki{chap:DWATdefaulteddef}{Whether a member function has been declared as default}{defaulted attribute} \\
 \DWATdefaultvalueTARG
@@ -358,9 +387,13 @@ The attributes are listed in Table \referfol{tab:attributenames}.
 \DWATdeletedTARG
 &\livelinki{chap:DWATdeleteddef}{Whether a member has been declared as deleted}{Deletion of member function} \\
 \DWATdescriptionTARG{} 
-&\livelinki{chap:DWATdescriptionartificialnameordescription}{Artificial name or description}{artificial name or description} \\
+&\livelinki{chap:DWATdescriptionartificialnameordescription}
+        {Artificial name or description}
+        {artificial name or description} \\
 \DWATdigitcountTARG
-&\livelinki{chap:DWATdigitcountdigitcountforpackeddecimalornumericstringtype}{Digit count for packed decimal or numeric string type}{digit count for packed decimal or numeric string type} \\
+&\livelinki{chap:DWATdigitcountdigitcountforpackeddecimalornumericstringtype}
+        {Digit count for packed decimal or numeric string type}
+        {digit count for packed decimal or numeric string type} \\
 \DWATdiscrTARG
 &\livelinki{chap:DWATdiscrdiscriminantofvariantpart}{Discriminant of variant part}{discriminant of variant part} \\
 \DWATdiscrlistTARG
@@ -372,7 +405,9 @@ The attributes are listed in Table \referfol{tab:attributenames}.
 \DWATdwonameTARG
 &\livelinki{chap:DWATdwonameforunit}{Name of split DWARF object file}{split DWARF object file!object file name} \\
 \DWATelementalTARG
-&\livelinki{chap:DWATelementalelementalpropertyofasubroutine}{Elemental property of a subroutine}{elemental property of a subroutine} \\
+&\livelinki{chap:DWATelementalelementalpropertyofasubroutine}
+        {Elemental property of a subroutine}
+        {elemental property of a subroutine} \\
 \DWATencodingTARG
 &\livelinki{chap:DWATencodingencodingofbasetype}{Encoding of base type}{encoding of base type} \\
 \DWATendianityTARG
@@ -380,16 +415,24 @@ The attributes are listed in Table \referfol{tab:attributenames}.
 \DWATentrypcTARG
 &\livelinki{chap:entryaddressofscope}{Entry address of a scope (compilation unit, \mbox{subprogram,} and so on)}{} \\
 \DWATenumclassTARG
-&\livelinki{chap:DWATenumclasstypesafeenumerationdefinition}{Type safe enumeration definition}{type safe enumeration definition}\\
+&\livelinki{chap:DWATenumclasstypesafeenumerationdefinition}
+        {Type safe enumeration definition}
+        {type safe enumeration definition}\\
 \DWATexplicitTARG
-&\livelinki{chap:DWATexplicitexplicitpropertyofmemberfunction}{Explicit property of member function}{explicit property of member function}\\
+&\livelinki{chap:DWATexplicitexplicitpropertyofmemberfunction}
+        {Explicit property of member function}
+        {explicit property of member function}\\
 \DWATexportsymbolsTARG
-&\livelinki{chap:DWATexportsymbolsofnamespace}{Export (inline) symbols of namespace}
-               {export symbols of a namespace} \\
-&\livelinki{chap:DWATexportsymbolsofstructunionclass}{Export symbols of a structure, union or class}
-               {export symbols of a structure, union or class} \\
+&\livelinki{chap:DWATexportsymbolsofnamespace}
+        {Export (inline) symbols of namespace}
+        {export symbols of a namespace} \\
+&\livelinki{chap:DWATexportsymbolsofstructunionclass}
+        {Export symbols of a structure, union or class}
+        {export symbols of a structure, union or class} \\
 \DWATextensionTARG
-&\livelinki{chap:DWATextensionpreviousnamespaceextensionororiginalnamespace}{Previous namespace extension or original namespace}{previous namespace extension or original namespace}\\
+&\livelinki{chap:DWATextensionpreviousnamespaceextensionororiginalnamespace}
+        {Previous namespace extension or original namespace}
+        {previous namespace extension or original namespace}\\
 \DWATexternalTARG
 &\livelinki{chap:DWATexternalexternalsubroutine}{External subroutine}{external subroutine} \\
 &\livelinki{chap:DWATexternalexternalvariable}{External variable}{external variable} \\
@@ -398,7 +441,9 @@ The attributes are listed in Table \referfol{tab:attributenames}.
 \DWATfriendTARG
 &\livelinki{chap:DWATfriendfriendrelationship}{Friend relationship}{friend relationship} \\
 \DWAThighpcTARG
-&\livelinki{chap:DWAThighpccontiguousrangeofcodeaddresses}{Contiguous range of code addresses}{contiguous range of code addresses} \\
+&\livelinki{chap:DWAThighpccontiguousrangeofcodeaddresses}
+        {Contiguous range of code addresses}
+        {contiguous range of code addresses} \\
 \DWATidentifiercaseTARG
 &\livelinki{chap:DWATidentifiercaseidentifiercaserule}{Identifier case rule}{identifier case rule} \\
 \DWATimportTARG
@@ -415,11 +460,15 @@ The attributes are listed in Table \referfol{tab:attributenames}.
 \DWATlanguageTARG
 &\livelinki{chap:DWATlanguageprogramminglanguage}{Programming language}{programming language} \\
 \DWATlinkagenameTARG
-&\livelinki{chap:DWATlinkagenameobjectfilelinkagenameofanentity}{Object file linkage name of an entity}{object file linkage name of an entity}\\
+&\livelinki{chap:DWATlinkagenameobjectfilelinkagenameofanentity}
+        {Object file linkage name of an entity}
+        {object file linkage name of an entity}\\
 \DWATlocationTARG
 &\livelinki{chap:DWATlocationdataobjectlocation}{Data object location}{data object location}\\
 \DWATlowpcTARG
-&\livelinki{chap:DWATlowpccodeaddressorrangeofaddresses}{Code address or range of addresses}{code address or range of addresses}\\
+&\livelinki{chap:DWATlowpccodeaddressorrangeofaddresses}
+        {Code address or range of addresses}
+        {code address or range of addresses}\\
 \DWATlowerboundTARG
 &\livelinki{chap:DWATlowerboundlowerboundofsubrange}{Lower bound of subrange}{lower bound of subrange} \\
 \DWATmacroinfoTARG
@@ -435,9 +484,13 @@ The attributes are listed in Table \referfol{tab:attributenames}.
                 \addtoindex{C++} and similar languages)} \\
 \DWATmainsubprogramTARG
 &\livelinki{chap:DWATmainsubprogrammainorstartingsubprogram}{Main or starting subprogram}{main or starting subprogram} \\
-&\livelinki{chap:DWATmainsubprogramunitcontainingmainorstartingsubprogram}{Unit containing main or starting subprogram}{unit containing main or starting subprogram}\\
+&\livelinki{chap:DWATmainsubprogramunitcontainingmainorstartingsubprogram}
+        {Unit containing main or starting subprogram}
+        {unit containing main or starting subprogram}\\
 \DWATmutableTARG
-&\livelinki{chap:DWATmutablemutablepropertyofmemberdata}{Mutable property of member data}{mutable property of member data} \\
+&\livelinki{chap:DWATmutablemutablepropertyofmemberdata}
+        {Mutable property of member data}
+        {mutable property of member data} \\
 \DWATnameTARG
 &\livelinki{chap:DWATnamenameofdeclaration}{Name of declaration}{name of declaration}\\
 &\livelinki{chap:DWATnamepathnameofcompilationsource}{Path name of compilation source}{path name of compilation source} \\
@@ -446,11 +499,15 @@ The attributes are listed in Table \referfol{tab:attributenames}.
 \DWATnoreturnTARG
 &\livelinki{chap:DWATnoreturnofsubprogram}{\doublequote{no return} property of a subprogram}{noreturn attribute} \\
 \DWATobjectpointerTARG
-&\livelinki{chap:DWATobjectpointerobjectthisselfpointerofmemberfunction}{Object (\texttt{this}, \texttt{self}) pointer of member function}{object (\texttt{this}, \texttt{self}) pointer of member function}\\
+&\livelinki{chap:DWATobjectpointerobjectthisselfpointerofmemberfunction}
+        {Object (\texttt{this}, \texttt{self}) pointer of member function}
+        {object (\texttt{this}, \texttt{self}) pointer of member function}\\
 \DWATorderingTARG
 &\livelinki{chap:DWATorderingarrayrowcolumnordering}{Array row/column ordering} {array row/column ordering}\\
 \DWATpicturestringTARG
-&\livelinki{chap:DWATpicturestringpicturestringfornumericstringtype}{Picture string for numeric string type}{picture string for numeric string type} \\
+&\livelinki{chap:DWATpicturestringpicturestringfornumericstringtype}
+        {Picture string for numeric string type}
+        {picture string for numeric string type} \\
 \DWATpriorityTARG
 &\livelinki{chap:DWATprioritymodulepriority}{Module priority}{module priority}\\
 \DWATproducerTARG
@@ -460,13 +517,17 @@ The attributes are listed in Table \referfol{tab:attributenames}.
 \DWATpureTARG
 &\livelinki{chap:DWATpurepurepropertyofasubroutine}{Pure property of a subroutine}{pure property of a subroutine} \\
 \DWATrangesTARG
-&\livelinki{chap:DWATrangesnoncontiguousrangeofcodeaddresses}{Non-contiguous range of code addresses}{non-contiguous range of code addresses} \\
+&\livelinki{chap:DWATrangesnoncontiguousrangeofcodeaddresses}
+        {Non-contiguous range of code addresses}
+        {non-contiguous range of code addresses} \\
 \DWATrangesbaseTARG
 &\livelinki{chap:DWATrangesbaseforrangelists}{Base offset for range lists}{ranges lists} \\
 \DWATrankTARG
 &\livelinki{chap:DWATrankofdynamicarray}{Dynamic number of array dimensions}{dynamic number of array dimensions} \\
 \DWATrecursiveTARG
-&\livelinki{chap:DWATrecursiverecursivepropertyofasubroutine}{Recursive property of a subroutine}{recursive property of a subroutine} \\
+&\livelinki{chap:DWATrecursiverecursivepropertyofasubroutine}
+        {Recursive property of a subroutine}
+        {recursive property of a subroutine} \\
 \DWATreferenceTARG
 &\livelink{chap:DWATreferenceofnonstaticmember}
           {\&-qualified non-static member function} \textit{(\addtoindex{C++})} \\
@@ -510,11 +571,13 @@ The attributes are listed in Table \referfol{tab:attributenames}.
            {String length of string type}
            {string length of string type} \\
 \DWATstringlengthbitsizeTARG
-&\livelinki{chap:DWATstringlengthstringlengthofstringtype}{Size of string length of string type}{string length of string type!size of}
- \\
+&\livelinki{chap:DWATstringlengthstringlengthofstringtype}
+           {Size of string length of string type}
+           {string length of string type!size of} \\
 \DWATstringlengthbytesizeTARG
-&\livelinki{chap:DWATstringlengthstringlengthofstringtype}{Size of string length of string type}{string length of string type!size of}
- \\
+&\livelinki{chap:DWATstringlengthstringlengthofstringtype}
+           {Size of string length of string type}
+           {string length of string type!size of} \\
 \DWATstroffsetsbaseTARG
 &\livelinki{chap:DWATstroffsetbaseforindirectstringtable}{Base of string offsets table}{string offsets table} \\
 \DWATthreadsscaledTARG
@@ -529,11 +592,17 @@ The attributes are listed in Table \referfol{tab:attributenames}.
 \DWATupperboundTARG
 &\livelinki{chap:DWATupperboundupperboundofsubrange}{Upper bound of subrange}{upper bound of subrange} \\
 \DWATuselocationTARG
-&\livelinki{chap:DWATuselocationmemberlocationforpointertomembertype}{Member location for pointer to member type}{member location for pointer to member type} \\
+&\livelinki{chap:DWATuselocationmemberlocationforpointertomembertype}
+        {Member location for pointer to member type}
+        {member location for pointer to member type} \\
 \DWATuseUTFeightTARG\addtoindexx{use UTF8 attribute}\addtoindexx{UTF-8}
-&\livelinki{chap:DWATuseUTF8compilationunitusesutf8strings}{Compilation unit uses UTF-8 strings}{compilation unit uses UTF-8 strings} \\
+&\livelinki{chap:DWATuseUTF8compilationunitusesutf8strings}
+        {Compilation unit uses UTF-8 strings}
+        {compilation unit uses UTF-8 strings} \\
 \DWATvariableparameterTARG
-&\livelinki{chap:DWATvariableparameternonconstantparameterflag}{Non-constant parameter flag}{non-constant parameter flag}  \\
+&\livelinki{chap:DWATvariableparameternonconstantparameterflag}
+        {Non-constant parameter flag}
+        {non-constant parameter flag}  \\
 \DWATvirtualityTARG
 &\livelinki{chap:DWATvirtualityvirtualityindication}{Virtuality indication}{virtuality indication} \\
 &\livelinki{chap:DWATvirtualityvirtualityofbaseclass}{Virtuality of base class} {virtuality of base class} \\
@@ -541,7 +610,9 @@ The attributes are listed in Table \referfol{tab:attributenames}.
 \DWATvisibilityTARG
 &\livelinki{chap:DWATvisibilityvisibilityofdeclaration}{Visibility of declaration}{visibility of declaration} \\
 \DWATvtableelemlocationTARG
-&\livelinki{chap:DWATvtableelemlocationvirtualfunctiontablevtableslot}{Virtual function vtable slot}{virtual function vtable slot}\\
+&\livelinki{chap:DWATvtableelemlocationvirtualfunctiontablevtableslot}
+        {Virtual function vtable slot}
+        {virtual function vtable slot}\\
 \end{longtable}
 
 \addtoindexx{address|see {\textit{also} address class}}
@@ -681,7 +752,7 @@ entry in any compilation unit, including one different from
 the unit containing the reference. The third type of reference
 is an indirect reference to a 
 \addtoindexx{type signature}
-type definition using a 64\dash bit \mbox{signature} 
+type definition using a 64-bit \mbox{signature} 
 for that type. The fourth type of reference is a reference from within the 
 \dotdebuginfo{} section of the executable or shared object to
 a debugging information entry in the \dotdebuginfo{} section of 
@@ -796,7 +867,7 @@ the DWARF information.
 
 \textit{%
 For example, if a particular target architecture supports
-both 32\dash bit and 64\dash bit addresses, the compiler will generate
+both 32-bit and 64-bit addresses, the compiler will generate
 an object file which specifies that it contains executable
 code generated for one or the other of these 
 \addtoindexx{size of an address}
@@ -892,11 +963,11 @@ on the target machine.
 \itembfnl{\DWOPconstoneuTARG, \DWOPconsttwouTARG, \DWOPconstfouruTARG, \DWOPconsteightuTARG}
 \DWOPconstnxMARK{}
 The single operand of a \DWOPconstnuNAME{} operation provides a 1,
-2, 4, or 8\dash byte unsigned integer constant, respectively.
+2, 4, or 8-byte unsigned integer constant, respectively.
 
 \itembfnl{\DWOPconstonesTARG, \DWOPconsttwosTARG, \DWOPconstfoursTARG, \DWOPconsteightsTARG}
 The single operand of a \DWOPconstnsNAME{} operation provides a 1,
-2, 4, or 8\dash byte signed integer constant, respectively.
+2, 4, or 8-byte signed integer constant, respectively.
 
 \itembfnl{\DWOPconstuTARG}
 The single operand of the \DWOPconstuNAME{} operation provides
@@ -930,6 +1001,7 @@ require link-time relocation but should not be
 interpreted by the consumer as a relocatable address
 (for example, offsets to thread-local storage).}
 
+\needlines{12}
 \itembfnl{\DWOPconsttypeTARG}
 The \DWOPconsttypeNAME{} operation takes three operands. The first operand 
 is an unsigned LEB128 integer that represents the offset of a debugging
@@ -982,6 +1054,7 @@ The \DWOPbregxNAME{} operation has two operands: a register
 which is specified by an unsigned LEB128\addtoindexx{LEB128!unsigned}
 number, followed by a signed LEB128\addtoindexx{LEB128!signed} offset.
 
+\needlines{8}
 \itembfnl{\DWOPregvaltypeTARG}
 The \DWOPregvaltypeNAME{} operation takes two operands. The first 
 operand is an unsigned LEB128\addtoindexx{LEB128!unsigned} number, 
@@ -1027,7 +1100,7 @@ identifier) at the top of the stack.
 
 \itembfnl{\DWOPpickTARG}
 The single operand of the \DWOPpickNAME{} operation provides a
-1\dash byte index. A copy of the stack entry (including its 
+1-byte index. A copy of the stack entry (including its 
 type identifier) with the specified
 index (0 through 255, inclusive) is pushed onto the stack.
 
@@ -1037,6 +1110,7 @@ in the stack at the top of the stack.
 This is equivalent to a
 \DWOPpick{} operation, with index 1.  
 
+\needlines{4}
 \itembfnl{\DWOPswapTARG}
 The \DWOPswapNAME{} operation swaps the top two stack entries. 
 The entry at the top of the stack (including its type identifier)
@@ -1070,7 +1144,7 @@ The value retrieved from that address is pushed, together with the
 special address type identifier. In
 the \DWOPderefsizeNAME{} operation, however, the size in bytes
 of the data retrieved from the dereferenced address is
-specified by the single operand. This operand is a 1\dash byte
+specified by the single operand. This operand is a 1-byte
 unsigned integral constant whose value may not be larger
 than the \addtoindex{size of an address} on the target machine. The data
 retrieved is zero extended to the size of an address on the
@@ -1124,7 +1198,7 @@ new stack top. In the \DWOPxderefsizeNAME{} operation, however,
 the size in bytes of the data retrieved from the 
 \addtoindexi{dereferenced}{address!dereference operator}
 address is specified by the single operand. This operand is a
-1\dash byte unsigned integral constant whose value may not be larger
+1-byte unsigned integral constant whose value may not be larger
 than the \addtoindex{size of an address} on the target machine. The data
 retrieved is zero extended to the \addtoindex{size of an address} on the
 target machine before being pushed onto the expression stack together
@@ -1356,18 +1430,18 @@ than), \DWOPgtNAME{} (greater than) and \DWOPneNAME{} (not equal to).
 \needlines{6}
 \itembfnl{\DWOPskipTARG}
 \DWOPskipNAME{} is an unconditional branch. Its single operand
-is a 2\dash byte signed integer constant. The 2\dash byte constant is
+is a 2-byte signed integer constant. The 2-byte constant is
 the number of bytes of the DWARF expression to skip forward
 or backward from the current operation, beginning after the
-2\dash byte constant.
+2-byte constant.
 
 \itembfnl{\DWOPbraTARG}
 \DWOPbraNAME{} is a conditional branch. Its single operand is a
-2\dash byte signed integer constant.  This operation pops the
+2-byte signed integer constant.  This operation pops the
 top of stack. If the value popped is not the constant 0,
-the 2\dash byte constant operand is the number of bytes of the
+the 2-byte constant operand is the number of bytes of the
 DWARF expression to skip forward or backward from the current
-operation, beginning after the 2\dash byte constant.
+operation, beginning after the 2-byte constant.
 
 % The following item does not correctly hyphenate leading
 % to an overfull hbox and a visible artifact. 
@@ -1379,12 +1453,12 @@ and \DWOPcallrefNAME{} perform
 DWARF procedure calls during evaluation of a DWARF expression or
 location description. 
 For \DWOPcalltwoNAME{} and \DWOPcallfourNAME{}, 
-the operand is the 2\dash~ or 4\dash byte unsigned offset, respectively,
+the operand is the 2\dash~ or 4-byte unsigned offset, respectively,
 of a debugging information entry in the current compilation
 unit. The \DWOPcallrefNAME{} operator has a single operand. In the
 \thirtytwobitdwarfformat,
-the operand is a 4\dash byte unsigned value;
-in the \sixtyfourbitdwarfformat, it is an 8\dash byte unsigned value
+the operand is a 4-byte unsigned value;
+in the \sixtyfourbitdwarfformat, it is an 8-byte unsigned value
 (see Section \referfol{datarep:32bitand64bitdwarfformats}). 
 The operand is used as the offset of a
 debugging information entry in a 
@@ -1795,8 +1869,7 @@ register but not in memory. The operations in this section are
 used to describe values that exist neither in memory nor in a
 single register.}
 
-\paragraph{Empty Location Descriptions}
-
+\subsubsubsection{Empty Location Descriptions}
 An \addtoindex{empty location description}
 consists of a DWARF expression
 \addtoindexx{location description!empty}
@@ -2140,6 +2213,7 @@ identifies the type of entry. There are five types of entries:
 This entry indicates the end of a location list, and
 contains no further data.
 
+\needlines{6}
 \itembfnl{\DWLLEbaseaddressselectionentryTARG}
 This entry contains an 
 unsigned LEB128\addtoindexx{LEB128!unsigned} value immediately
@@ -2187,7 +2261,7 @@ range for which this location is valid. A single location
 description follows the fields that define the address range.
 \end{enumerate}
 
-
+\needlines{10}
 \section{Types of Program Entities}
 \label{chap:typesofprogramentities}
 \hypertarget{chap:DWATtypetypeofdeclaration}{}
@@ -2381,11 +2455,11 @@ has been specified.
 Name&Value&Meaning  \\
 \hline
 \textit{DW\_ADDR\_none}&   0 & \textit{no class specified} \\
-\textit{DW\_ADDR\_near16}& 1 & \textit{16\dash bit offset, no segment} \\
-\textit{DW\_ADDR\_far16}&  2 & \textit{16\dash bit offset, 16\dash bit segment} \\
-\textit{DW\_ADDR\_huge16}& 3 & \textit{16\dash bit offset, 16\dash bit segment} \\
-\textit{DW\_ADDR\_near32}& 4 & \textit{32\dash bit offset, no segment} \\
-\textit{DW\_ADDR\_far32}&  5 & \textit{32\dash bit offset, 16\dash bit segment} \\
+\textit{DW\_ADDR\_near16}& 1 & \textit{16-bit offset, no segment} \\
+\textit{DW\_ADDR\_far16}&  2 & \textit{16-bit offset, 16-bit segment} \\
+\textit{DW\_ADDR\_huge16}& 3 & \textit{16-bit offset, 16-bit segment} \\
+\textit{DW\_ADDR\_near32}& 4 & \textit{32-bit offset, no segment} \\
+\textit{DW\_ADDR\_far32}&  5 & \textit{32-bit offset, 16-bit segment} \\
 \hline
 \end{tabular}
 \end{table}
@@ -2538,13 +2612,10 @@ debugging information entry
 \addtoindexx{identifier names}
 representing 
 \addtoindexx{names!identifier}
-a program entity
-that has been given a name may have a 
-\DWATname{} attribute,
-whose 
-\addtoindexx{name attribute}
-value is a \livelink{chap:classstring}{string} 
-representing the name as it appears in
+a program entity that has been given a name may have a 
+\DWATname{} 
+attribute\addtoindexx{name attribute}, whose value of 
+\CLASSstring{} represents the name as it appears in
 the source program. A debugging information entry containing
 no name attribute, or containing a name attribute whose value
 consists of a name containing a single null byte, represents
@@ -2951,14 +3022,11 @@ attribute is interpreted in bits.
 \label{chap:linkagenames}
 \textit{Some language implementations, notably 
 \addtoindex{C++} and similar
-languages, 
-make use of implementation-defined names within
-object files that are different from the identifier names
-(see Section \refersec{chap:identifiernames}) of entities as they appear in the
-source. Such names, sometimes known 
-\addtoindexx{names!mangled}
-as 
-\addtoindex{mangled names},
+languages, make use of implementation-defined names within
+object files that are different from the \addtoindex{identifier names}
+(see Section \refersec{chap:identifiernames}) of entities as they 
+appear in the source. Such names, sometimes known as 
+\addtoindex{mangled names}\addtoindexx{names!mangled},
 are used in various ways, such as: to encode additional
 information about an entity, to distinguish multiple entities
 that have the same name, and so on. When an entity has an
@@ -2971,14 +3039,12 @@ that is encoded in the linkage name itself.
 }
 
 % Some trouble maybe with hbox full, so we try optional word breaks.
-A debugging
-information entry may have 
+A debugging information entry may have 
 \addtoindexx{linkage name attribute}
 a 
 \DWATlinkagename{}
-attribute
-whose value is a null-terminated string describing the object
-file linkage name associated with the corresponding entity.
+attribute whose value is a null-terminated string containing the 
+object file linkage name associated with the corresponding entity.
 
 % Some trouble here with hbox full, so we try optional word breaks.
 \textit{Debugging information entries to which \DWATlinkagename{}