Attributes are now linked from use to the table.
[dwarf-doc.git] / dwarf5 / latexdoc / datarepresentation.tex
index 5ff442d..7d500b2 100644 (file)
@@ -697,7 +697,7 @@ value is a 4\dash byte unsigned offset; in the 64\dash bit DWARF format,
 it is an 8\dash byte unsigned offset 
 (see Section \refersec{datarep:32bitand64bitdwarfformats}).
 
-If the DW\-\_AT\-\_use\-\_UTF8 attribute is specified for the
+If the \livelink{chap:DWATuseUTF8}{DW\-\_AT\-\_use\-\_UTF8} attribute is specified for the
 compilation unit entry, string values are encoded using the
 UTF\dash 8 (Unicode Transformation Format\dash 8) from the Universal
 Character Set standard (ISO/IEC 10646\dash 1:1993). Otherwise,
@@ -825,105 +825,105 @@ DW\-\_CHILDREN\-\_yes&0x01 \\ \hline
 \endfoot
   \hline
 \endlastfoot
-DW\-\_AT\-\_sibling&0x01&reference \\
-DW\-\_AT\-\_location&0x02&\livelink{chap:exprloc}{exprloc}, \livelink{chap:loclistptr}{loclistptr}   \\
-DW\-\_AT\-\_name&0x03&string   \\
-DW\-\_AT\-\_ordering&0x09&constant   \\
-DW\-\_AT\-\_byte\-\_size&0x0b&constant, \livelink{chap:exprloc}{exprloc}, reference   \\
-DW\-\_AT\-\_bit\-\_offset&0x0c&constant, \livelink{chap:exprloc}{exprloc}, reference   \\
-DW\-\_AT\-\_bit\-\_size&0x0d&constant, \livelink{chap:exprloc}{exprloc}, reference   \\
-DW\-\_AT\-\_stmt\-\_list&0x10&\livelink{chap:lineptr}{lineptr}   \\
-DW\-\_AT\-\_low\-\_pc&0x11&address   \\
-DW\-\_AT\-\_high\-\_pc&0x12&address, constant   \\
-DW\-\_AT\-\_language&0x13&constant   \\
-DW\-\_AT\-\_discr&0x15&reference   \\
-DW\-\_AT\-\_discr\-\_value&0x16&constant   \\
-DW\-\_AT\-\_visibility&0x17&constant   \\
-DW\-\_AT\-\_import&0x18&reference   \\
-DW\-\_AT\-\_string\-\_length&0x19&\livelink{chap:exprloc}{exprloc}, \livelink{chap:loclistptr}{loclistptr}   \\
-DW\-\_AT\-\_common\-\_reference&0x1a&reference   \\
-DW\-\_AT\-\_comp\-\_dir&0x1b&string   \\
-DW\-\_AT\-\_const\-\_value&0x1c&block, constant, string   \\
-DW\-\_AT\-\_containing\-\_type&0x1d&reference     \\
-DW\-\_AT\-\_default\-\_value&0x1e&reference     \\
-DW\-\_AT\-\_inline&0x20&constant     \\
-DW\-\_AT\-\_is\-\_optional&0x21&flag     \\
-DW\-\_AT\-\_lower\-\_bound&0x22&constant, \livelink{chap:exprloc}{exprloc}, reference     \\
-DW\-\_AT\-\_producer&0x25&string     \\
-DW\-\_AT\-\_prototyped&0x27&flag     \\
-DW\-\_AT\-\_return\-\_addr&0x2a&\livelink{chap:exprloc}{exprloc}, \livelink{chap:loclistptr}{loclistptr}     \\
+\livelink{chap:DWATsibling}{DW\-\_AT\-\_sibling}&0x01&reference \\
+\livelink{chap:DWATlocation}{DW\-\_AT\-\_location}&0x02&\livelink{chap:exprloc}{exprloc}, \livelink{chap:loclistptr}{loclistptr}   \\
+\livelink{chap:DWATname}{DW\-\_AT\-\_name}&0x03&string   \\
+\livelink{chap:DWATordering}{DW\-\_AT\-\_ordering}&0x09&constant   \\
+\livelink{chap:DWATbytesize}{DW\-\_AT\-\_byte\-\_size}&0x0b&constant, \livelink{chap:exprloc}{exprloc}, reference   \\
+\livelink{chap:DWATbitoffset}{DW\-\_AT\-\_bit\-\_offset}&0x0c&constant, \livelink{chap:exprloc}{exprloc}, reference   \\
+\livelink{chap:DWATbitsize}{DW\-\_AT\-\_bit\-\_size}&0x0d&constant, \livelink{chap:exprloc}{exprloc}, reference   \\
+\livelink{chap:DWATstmtlist}{DW\-\_AT\-\_stmt\-\_list}&0x10&\livelink{chap:lineptr}{lineptr}   \\
+\livelink{chap:DWATlowpc}{DW\-\_AT\-\_low\-\_pc}&0x11&address   \\
+\livelink{chap:DWAThighpc}{DW\-\_AT\-\_high\-\_pc}&0x12&address, constant   \\
+\livelink{chap:DWATlanguage}{DW\-\_AT\-\_language}&0x13&constant   \\
+\livelink{chap:DWATdiscr}{DW\-\_AT\-\_discr}&0x15&reference   \\
+\livelink{chap:DWATdiscrvalue}{DW\-\_AT\-\_discr\-\_value}&0x16&constant   \\
+\livelink{chap:DWATvisibility}{DW\-\_AT\-\_visibility}&0x17&constant   \\
+\livelink{chap:DWATimport}{DW\-\_AT\-\_import}&0x18&reference   \\
+\livelink{chap:DWATstringlength}{DW\-\_AT\-\_string\-\_length}&0x19&\livelink{chap:exprloc}{exprloc}, \livelink{chap:loclistptr}{loclistptr}   \\
+\livelink{chap:DWATcommonreference}{DW\-\_AT\-\_common\-\_reference}&0x1a&reference   \\
+\livelink{chap:DWATcompdir}{DW\-\_AT\-\_comp\-\_dir}&0x1b&string   \\
+\livelink{chap:DWATconstvalue}{DW\-\_AT\-\_const\-\_value}&0x1c&block, constant, string   \\
+\livelink{chap:DWATcontainingtype}{DW\-\_AT\-\_containing\-\_type}&0x1d&reference     \\
+\livelink{chap:DWATdefaultvalue}{DW\-\_AT\-\_default\-\_value}&0x1e&reference     \\
+\livelink{chap:DWATinline}{DW\-\_AT\-\_inline}&0x20&constant     \\
+\livelink{chap:DWATisoptional}{DW\-\_AT\-\_is\-\_optional}&0x21&flag     \\
+\livelink{chap:DWATlowerbound}{DW\-\_AT\-\_lower\-\_bound}&0x22&constant, \livelink{chap:exprloc}{exprloc}, reference     \\
+\livelink{chap:DWATproducer}{DW\-\_AT\-\_producer}&0x25&string     \\
+\livelink{chap:DWATprototyped}{DW\-\_AT\-\_prototyped}&0x27&flag     \\
+\livelink{chap:DWATreturnaddr}{DW\-\_AT\-\_return\-\_addr}&0x2a&\livelink{chap:exprloc}{exprloc}, \livelink{chap:loclistptr}{loclistptr}     \\
 % FIXME: lower case , not Constant
-DW\-\_AT\-\_start\-\_scope&0x2c&Constant, \livelink{chap:rangelistptr}{rangelistptr}     \\
-DW\-\_AT\-\_bit\-\_stride&0x2e&constant, \livelink{chap:exprloc}{exprloc}, reference     \\
-DW\-\_AT\-\_upper\-\_bound&0x2f&constant, \livelink{chap:exprloc}{exprloc}, reference     \\
-DW\-\_AT\-\_abstract\-\_origin&0x31&reference     \\
-DW\-\_AT\-\_accessibility&0x32&constant     \\
-DW\-\_AT\-\_address\-\_class&0x33&constant     \\
-DW\-\_AT\-\_artificial&0x34&flag     \\
-DW\-\_AT\-\_base\-\_types&0x35&reference     \\
-DW\-\_AT\-\_calling\-\_convention&0x36&constant     \\
-DW\-\_AT\-\_count&0x37&constant, \livelink{chap:exprloc}{exprloc}, reference     \\
-DW\-\_AT\-\_data\-\_member\-\_location&0x38&constant, \livelink{chap:exprloc}{exprloc}, \livelink{chap:loclistptr}{loclistptr}     \\
-DW\-\_AT\-\_decl\-\_column&0x39&constant     \\
-DW\-\_AT\-\_decl\-\_file&0x3a&constant     \\
-DW\-\_AT\-\_decl\-\_line&0x3b&constant     \\
-DW\-\_AT\-\_declaration&0x3c&flag     \\
-DW\-\_AT\-\_discr\-\_list&0x3d&block     \\
-DW\-\_AT\-\_encoding&0x3e&constant     \\
-DW\-\_AT\-\_external&0x3f&flag     \\
-DW\-\_AT\-\_frame\-\_base&0x40&\livelink{chap:exprloc}{exprloc}, \livelink{chap:loclistptr}{loclistptr}     \\
-DW\-\_AT\-\_friend&0x41&reference     \\
-DW\-\_AT\-\_identifier\-\_case&0x42&constant    \\
-DW\-\_AT\-\_macro\-\_info&0x43&\livelink{chap:macptr}{macptr}    \\
-DW\-\_AT\-\_namelist\-\_item&0x44&reference    \\
-DW\-\_AT\-\_priority&0x45&reference    \\
-DW\-\_AT\-\_segment&0x46&\livelink{chap:exprloc}{exprloc}, \livelink{chap:loclistptr}{loclistptr}    \\
-DW\-\_AT\-\_specification&0x47&reference    \\
-DW\-\_AT\-\_static\-\_link&0x48&\livelink{chap:exprloc}{exprloc}, \livelink{chap:loclistptr}{loclistptr}    \\
-DW\-\_AT\-\_type&0x49&reference    \\
-DW\-\_AT\-\_use\-\_location&0x4a&\livelink{chap:exprloc}{exprloc}, \livelink{chap:loclistptr}{loclistptr}    \\
-DW\-\_AT\-\_variable\-\_parameter&0x4b&flag    \\
-DW\-\_AT\-\_virtuality&0x4c&constant    \\
-DW\-\_AT\-\_vtable\-\_elem\-\_location&0x4d&\livelink{chap:exprloc}{exprloc}, \livelink{chap:loclistptr}{loclistptr}    \\
-
-
-DW\-\_AT\-\_allocated&0x4e&constant, \livelink{chap:exprloc}{exprloc}, reference     \\
-DW\-\_AT\-\_associated&0x4f&constant, \livelink{chap:exprloc}{exprloc}, reference     \\
-DW\-\_AT\-\_data\-\_location&0x50&\livelink{chap:exprloc}{exprloc}     \\
-DW\-\_AT\-\_byte\-\_stride&0x51&constant, \livelink{chap:exprloc}{exprloc}, reference     \\
-DW\-\_AT\-\_entry\-\_pc&0x52&address     \\
-DW\-\_AT\-\_use\-\_UTF8&0x53&flag     \\
-DW\-\_AT\-\_extension&0x54&reference     \\
-DW\-\_AT\-\_ranges&0x55&\livelink{chap:rangelistptr}{rangelistptr}     \\
-DW\-\_AT\-\_trampoline&0x56&address, flag, reference, string     \\
-DW\-\_AT\-\_call\-\_column&0x57&constant     \\
-DW\-\_AT\-\_call\-\_file&0x58&constant     \\
-DW\-\_AT\-\_call\-\_line&0x59&constant     \\
-DW\-\_AT\-\_description&0x5a&string     \\
-DW\-\_AT\-\_binary\-\_scale&0x5b&constant     \\
-DW\-\_AT\-\_decimal\-\_scale&0x5c&constant     \\
-DW\-\_AT\-\_small &0x5d&reference     \\
-DW\-\_AT\-\_decimal\-\_sign&0x5e&constant     \\
-DW\-\_AT\-\_digit\-\_count&0x5f&constant     \\
-DW\-\_AT\-\_picture\-\_string&0x60&string      \\
-DW\-\_AT\-\_mutable&0x61&flag     \\
-
-
-DW\-\_AT\-\_threads\-\_scaled&0x62&flag     \\
-DW\-\_AT\-\_explicit&0x63&flag     \\
-DW\-\_AT\-\_object\-\_pointer&0x64&reference     \\
-DW\-\_AT\-\_endianity&0x65&constant     \\
-DW\-\_AT\-\_elemental&0x66&flag     \\
-DW\-\_AT\-\_pure&0x67&flag     \\
-DW\-\_AT\-\_recursive&0x68&flag     \\
-DW\-\_AT\-\_signature \ddag &0x69&reference     \\ 
-DW\-\_AT\-\_main\-\_subprogram \ddag &0x6a&flag     \\
-DW\-\_AT\-\_data\-\_bit\-\_offset \ddag &0x6b&constant     \\
-DW\-\_AT\-\_const\-\_expr \ddag &0x6c&flag     \\
-DW\-\_AT\-\_enum\-\_class \ddag &0x6d&flag     \\
-DW\-\_AT\-\_linkage\-\_name \ddag &0x6e&string     \\
-DW\-\_AT\-\_lo\-\_user&0x2000 & ---     \\
-DW\-\_AT\-\_hi\-\_user&0x3fff& ---     \\
+\livelink{chap:DWATstartscope}{DW\-\_AT\-\_start\-\_scope}&0x2c&Constant, \livelink{chap:rangelistptr}{rangelistptr}     \\
+\livelink{chap:DWATbitstride}{DW\-\_AT\-\_bit\-\_stride}&0x2e&constant, \livelink{chap:exprloc}{exprloc}, reference     \\
+\livelink{chap:DWATupperbound}{DW\-\_AT\-\_upper\-\_bound}&0x2f&constant, \livelink{chap:exprloc}{exprloc}, reference     \\
+\livelink{chap:DWATabstractorigin}{DW\-\_AT\-\_abstract\-\_origin}&0x31&reference     \\
+\livelink{chap:DWATaccessibility}{DW\-\_AT\-\_accessibility}&0x32&constant     \\
+\livelink{chap:DWATaddressclass}{DW\-\_AT\-\_address\-\_class}&0x33&constant     \\
+\livelink{chap:DWATartificial}{DW\-\_AT\-\_artificial}&0x34&flag     \\
+\livelink{chap:DWATbasetypes}{DW\-\_AT\-\_base\-\_types}&0x35&reference     \\
+\livelink{chap:DWATcallingconvention}{DW\-\_AT\-\_calling\-\_convention}&0x36&constant     \\
+\livelink{chap:DWATcount}{DW\-\_AT\-\_count}&0x37&constant, \livelink{chap:exprloc}{exprloc}, reference     \\
+\livelink{chap:DWATdatamemberlocation}{DW\-\_AT\-\_data\-\_member\-\_location}&0x38&constant, \livelink{chap:exprloc}{exprloc}, \livelink{chap:loclistptr}{loclistptr}     \\
+\livelink{chap:DWATdeclcolumn}{DW\-\_AT\-\_decl\-\_column}&0x39&constant     \\
+\livelink{chap:DWATdeclfile}{DW\-\_AT\-\_decl\-\_file}&0x3a&constant     \\
+\livelink{chap:DWATdeclline}{DW\-\_AT\-\_decl\-\_line}&0x3b&constant     \\
+\livelink{chap:DWATdeclaration}{DW\-\_AT\-\_declaration}&0x3c&flag     \\
+\livelink{chap:DWATdiscrlist}{DW\-\_AT\-\_discr\-\_list}&0x3d&block     \\
+\livelink{chap:DWATencoding}{DW\-\_AT\-\_encoding}&0x3e&constant     \\
+\livelink{chap:DWATexternal}{DW\-\_AT\-\_external}&0x3f&flag     \\
+\livelink{chap:DWATframebase}{DW\-\_AT\-\_frame\-\_base}&0x40&\livelink{chap:exprloc}{exprloc}, \livelink{chap:loclistptr}{loclistptr}     \\
+\livelink{chap:DWATfriend}{DW\-\_AT\-\_friend}&0x41&reference     \\
+\livelink{chap:DWATidentifiercase}{DW\-\_AT\-\_identifier\-\_case}&0x42&constant    \\
+\livelink{chap:DWATmacroinfo}{DW\-\_AT\-\_macro\-\_info}&0x43&\livelink{chap:macptr}{macptr}    \\
+\livelink{chap:DWATnamelistitem}{DW\-\_AT\-\_namelist\-\_item}&0x44&reference    \\
+\livelink{chap:DWATpriority}{DW\-\_AT\-\_priority}&0x45&reference    \\
+\livelink{chap:DWATsegment}{DW\-\_AT\-\_segment}&0x46&\livelink{chap:exprloc}{exprloc}, \livelink{chap:loclistptr}{loclistptr}    \\
+\livelink{chap:DWATspecification}{DW\-\_AT\-\_specification}&0x47&reference    \\
+\livelink{chap:DWATstaticlink}{DW\-\_AT\-\_static\-\_link}&0x48&\livelink{chap:exprloc}{exprloc}, \livelink{chap:loclistptr}{loclistptr}    \\
+\livelink{chap:DWATtype}{DW\-\_AT\-\_type}&0x49&reference    \\
+\livelink{chap:DWATuselocation}{DW\-\_AT\-\_use\-\_location}&0x4a&\livelink{chap:exprloc}{exprloc}, \livelink{chap:loclistptr}{loclistptr}    \\
+\livelink{chap:DWATvariableparameter}{DW\-\_AT\-\_variable\-\_parameter}&0x4b&flag    \\
+\livelink{chap:DWATvirtuality}{DW\-\_AT\-\_virtuality}&0x4c&constant    \\
+\livelink{chap:DWATvtableelemlocation}{DW\-\_AT\-\_vtable\-\_elem\-\_location}&0x4d&\livelink{chap:exprloc}{exprloc}, \livelink{chap:loclistptr}{loclistptr}    \\
+
+
+\livelink{chap:DWATallocated}{DW\-\_AT\-\_allocated}&0x4e&constant, \livelink{chap:exprloc}{exprloc}, reference     \\
+\livelink{chap:DWATassociated}{DW\-\_AT\-\_associated}&0x4f&constant, \livelink{chap:exprloc}{exprloc}, reference     \\
+\livelink{chap:DWATdatalocation}{DW\-\_AT\-\_data\-\_location}&0x50&\livelink{chap:exprloc}{exprloc}     \\
+\livelink{chap:DWATbytestride}{DW\-\_AT\-\_byte\-\_stride}&0x51&constant, \livelink{chap:exprloc}{exprloc}, reference     \\
+\livelink{chap:DWATentrypc}{DW\-\_AT\-\_entry\-\_pc}&0x52&address     \\
+\livelink{chap:DWATuseUTF8}{DW\-\_AT\-\_use\-\_UTF8}&0x53&flag     \\
+\livelink{chap:DWATextension}{DW\-\_AT\-\_extension}&0x54&reference     \\
+\livelink{chap:DWATranges}{DW\-\_AT\-\_ranges}&0x55&\livelink{chap:rangelistptr}{rangelistptr}     \\
+\livelink{chap:DWATtrampoline}{DW\-\_AT\-\_trampoline}&0x56&address, flag, reference, string     \\
+\livelink{chap:DWATcallcolumn}{DW\-\_AT\-\_call\-\_column}&0x57&constant     \\
+\livelink{chap:DWATcallfile}{DW\-\_AT\-\_call\-\_file}&0x58&constant     \\
+\livelink{chap:DWATcallline}{DW\-\_AT\-\_call\-\_line}&0x59&constant     \\
+\livelink{chap:DWATdescription}{DW\-\_AT\-\_description}&0x5a&string     \\
+\livelink{chap:DWATbinaryscale}{DW\-\_AT\-\_binary\-\_scale}&0x5b&constant     \\
+\livelink{chap:DWATdecimalscale}{DW\-\_AT\-\_decimal\-\_scale}&0x5c&constant     \\
+\livelink{chap:DWATsmall}{DW\-\_AT\-\_small} &0x5d&reference     \\
+\livelink{chap:DWATdecimalsign}{DW\-\_AT\-\_decimal\-\_sign}&0x5e&constant     \\
+\livelink{chap:DWATdigitcount}{DW\-\_AT\-\_digit\-\_count}&0x5f&constant     \\
+\livelink{chap:DWATpicturestring}{DW\-\_AT\-\_picture\-\_string}&0x60&string      \\
+\livelink{chap:DWATmutable}{DW\-\_AT\-\_mutable}&0x61&flag     \\
+
+
+\livelink{chap:DWATthreadsscaled}{DW\-\_AT\-\_threads\-\_scaled}&0x62&flag     \\
+\livelink{chap:DWATexplicit}{DW\-\_AT\-\_explicit}&0x63&flag     \\
+\livelink{chap:DWATobjectpointer}{DW\-\_AT\-\_object\-\_pointer}&0x64&reference     \\
+\livelink{chap:DWATendianity}{DW\-\_AT\-\_endianity}&0x65&constant     \\
+\livelink{chap:DWATelemental}{DW\-\_AT\-\_elemental}&0x66&flag     \\
+\livelink{chap:DWATpure}{DW\-\_AT\-\_pure}&0x67&flag     \\
+\livelink{chap:DWATrecursive}{DW\-\_AT\-\_recursive}&0x68&flag     \\
+\livelink{chap:DWATsignature}{DW\-\_AT\-\_signature} \ddag &0x69&reference     \\ 
+\livelink{chap:DWATmainsubprogram}{DW\-\_AT\-\_main\-\_subprogram} \ddag &0x6a&flag     \\
+\livelink{chap:DWATdatabitoffset}{DW\-\_AT\-\_data\-\_bit\-\_offset} \ddag &0x6b&constant     \\
+\livelink{chap:DWATconstexpr}{DW\-\_AT\-\_const\-\_expr} \ddag &0x6c&flag     \\
+\livelink{chap:DWATenumclass}{DW\-\_AT\-\_enum\-\_class} \ddag &0x6d&flag     \\
+\livelink{chap:DWATlinkagename}{DW\-\_AT\-\_linkage\-\_name} \ddag &0x6e&string     \\
+\livetarg{chap:DWATlouser}{DW\-\_AT\-\_lo\-\_user}&0x2000 & ---     \\
+\livetarg{chap:DWAThiuser}{DW\-\_AT\-\_hi\-\_user}&0x3fff& ---     \\
 
 \end{longtable}
 \ddag  Attribute new in DWARF Version 4 
@@ -1227,7 +1227,7 @@ the corresponding compilation unit must be defined
 \section{Base Type Attribute Encodings}
 \label{datarep:basetypeattributeencodings}
 
-The encodings of the constants used in the DW\-\_AT\-\_encoding
+The encodings of the constants used in the \livelink{chap:DWATencoding}{DW\-\_AT\-\_encoding}
 attribute are given in 
 Table \refersec{tab:basetypeencodingvalues}
 
@@ -1269,7 +1269,7 @@ DW\-\_ATE\-\_hi\-\_user & 0xff \\
 
 
 The encodings of the constants used in the 
-DW\-\_AT\-\_decimal\-\_sign attribute 
+\livelink{chap:DWATdecimalsign}{DW\-\_AT\-\_decimal\-\_sign} attribute 
 are given in 
 Table \refersec{tab:decimalsignencodings}.
 
@@ -1297,7 +1297,7 @@ DW\-\_DS\-\_trailing\-\_separate & 0x05  \\
 \end{centering}
 
 The encodings of the constants used in the 
-DW\-\_AT\-\_endianity attribute are given in 
+\livelink{chap:DWATendianity}{DW\-\_AT\-\_endianity} attribute are given in 
 Table \refersec{tab:endianityencodings}.
 
 \begin{centering}
@@ -1324,7 +1324,7 @@ DW\-\_END\-\_hi\-\_user & 0xff \\
 
 \section{Accessibility Codes}
 \label{datarep:accessibilitycodes}
-The encodings of the constants used in the DW\-\_AT\-\_accessibility
+The encodings of the constants used in the \livelink{chap:DWATaccessibility}{DW\-\_AT\-\_accessibility}
 attribute are given in 
 Table \refersec{tab:accessibilityencodings}.
 
@@ -1352,7 +1352,7 @@ DW\-\_ACCESS\-\_private&0x03 \\
 \section{Visibility Codes}
 \label{datarep:visibilitycodes}
 The encodings of the constants used in the 
-DW\-\_AT\-\_visibility attribute are given in 
+\livelink{chap:DWATvisibility}{DW\-\_AT\-\_visibility} attribute are given in 
 Table \refersec{tab:visibilityencodings}. 
 
 \begin{centering}
@@ -1379,7 +1379,7 @@ DW\-\_VIS\-\_qualified&0x03 \\
 \label{datarep:vitualitycodes}
 
 The encodings of the constants used in the 
-DW\-\_AT\-\_virtuality attribute are given in 
+\livelink{chap:DWATvirtuality}{DW\-\_AT\-\_virtuality} attribute are given in 
 Table \refersec{tab:virtualityencodings}.
 
 \begin{centering}
@@ -1406,13 +1406,13 @@ DW\-\_VIRTUALITY\-\_pure\-\_virtual&0x02 \\
 
 The value 
 DW\-\_VIRTUALITY\-\_none is equivalent to the absence of the 
-DW\-\_AT\-\_virtuality
+\livelink{chap:DWATvirtuality}{DW\-\_AT\-\_virtuality}
 attribute.
 
 \section{Source Languages}
 \label{datarep:sourcelanguages}
 
-The encodings of the constants used in the DW\-\_AT\-\_language
+The encodings of the constants used in the \livelink{chap:DWATlanguage}{DW\-\_AT\-\_language}
 attribute are given in 
 Table \refersec{tab:languageencodings}.
 Names marked with
@@ -1422,7 +1422,7 @@ and their associated values are reserved, but the
 languages they represent are not well supported. 
 Table \refersec{tab:languageencodings}
 also shows the default lower bound, if any, assumed for
-an omitted DW\-\_AT\-\_lower\-\_bound attribute in the context of a
+an omitted \livelink{chap:DWATlowerbound}{DW\-\_AT\-\_lower\-\_bound} attribute in the context of a
 \livelink{chap:DWTAGsubrangetype}{DW\-\_TAG\-\_subrange\-\_type} debugging information entry for each
 defined language.
 
@@ -1477,7 +1477,7 @@ DW\-\_ADDR\-\_none is 0.
 \label{datarep:identifiercase}
 
 The encodings of the constants used in the 
-DW\-\_AT\-\_identifier\-\_case attribute are given in 
+\livelink{chap:DWATidentifiercase}{DW\-\_AT\-\_identifier\-\_case} attribute are given in 
 Table \refersec{tab:identifiercaseencodings}.
 
 \begin{centering}
@@ -1502,7 +1502,7 @@ DW\-\_ID\-\_case\-\_insensitive&0x03     \\
 \section{Calling Convention Encodings}
 \label{datarep:callingconventionencodings}
 The encodings of the constants used in the 
-DW\-\_AT\-\_calling\-\_convention attribute are given in
+\livelink{chap:DWATcallingconvention}{DW\-\_AT\-\_calling\-\_convention} attribute are given in
 Table \refersec{tab:callingconventionencodings}.
 
 \begin{centering}
@@ -1531,7 +1531,7 @@ DW\-\_CC\-\_hi\-\_user&0xff     \\
 \label{datarep:inlinecodes}
 
 The encodings of the constants used in the 
-DW\-\_AT\-\_inline attribute are given in 
+\livelink{chap:DWATinline}{DW\-\_AT\-\_inline} attribute are given in 
 Table \refersec{tab:inlineencodings}.
 
 \begin{centering}
@@ -1562,7 +1562,7 @@ DW\-\_INL\-\_declared\-\_inlined&0x03      \\
 \label{datarep:arrayordering}
 
 The encodings of the constants used in the 
-DW\-\_AT\-\_ordering attribute are given in 
+\livelink{chap:DWATordering}{DW\-\_AT\-\_ordering} attribute are given in 
 Table \refersec{tab:orderingencodings}.
 
 \begin{centering}
@@ -1589,7 +1589,7 @@ DW\-\_ORD\-\_col\-\_major&0x01  \\
 \label{datarep:discriminantlists}
 
 The descriptors used in the 
-DW\-\_AT\-\_discr\-\_list attribute are 
+\livelink{chap:DWATdiscrlist}{DW\-\_AT\-\_discr\-\_list} attribute are 
 encoded as 1\dash byte constants. The
 defined values are given in 
 Table \refersec{tab:discriminantdescriptorencodings}.
@@ -2020,7 +2020,7 @@ is nested inside another type or a namespace, append to S
 the type’s context as follows: For each surrounding type
 or namespace, beginning with the outermost such construct,
 append the letter 'C', the DWARF tag of the construct, and
-the name (taken from the DW\-\_AT\-\_name attribute) of the type
+the name (taken from the \livelink{chap:DWATname}{DW\-\_AT\-\_name} attribute) of the type
 or namespace (including its trailing null byte).
 
 \item  Append to S the letter 'D', followed by the DWARF tag of
@@ -2032,57 +2032,57 @@ append to S a marker letter (see below), the DWARF attribute
 code, and the attribute value.
 
 \begin{itemize}
-\item DW\-\_AT\-\_name
-\item DW\-\_AT\-\_accessibility
-\item DW\-\_AT\-\_address\-\_class
-\item DW\-\_AT\-\_allocated
-\item DW\-\_AT\-\_artificial
-\item DW\-\_AT\-\_associated
-\item DW\-\_AT\-\_binary\-\_scale
-\item DW\-\_AT\-\_bit\-\_offset
-\item DW\-\_AT\-\_bit\-\_size
-\item DW\-\_AT\-\_bit\-\_stride
-\item DW\-\_AT\-\_byte\-\_size
-\item DW\-\_AT\-\_byte\-\_stride
-\item DW\-\_AT\-\_const\-\_expr
-\item DW\-\_AT\-\_const\-\_value
-\item DW\-\_AT\-\_containing\-\_type
-\item DW\-\_AT\-\_count
-\item DW\-\_AT\-\_data\-\_bit\-\_offset
-\item DW\-\_AT\-\_data\-\_location
-\item DW\-\_AT\-\_data\-\_member\-\_location
-\item DW\-\_AT\-\_decimal\-\_scale
-\item DW\-\_AT\-\_decimal\-\_sign
-\item DW\-\_AT\-\_default\-\_value
-\item DW\-\_AT\-\_digit\-\_count
-\item DW\-\_AT\-\_discr
-\item DW\-\_AT\-\_discr\-\_list
-\item DW\-\_AT\-\_discr\-\_value
-\item DW\-\_AT\-\_encoding
-\item DW\-\_AT\-\_enum\-\_class
-\item DW\-\_AT\-\_endianity
-\item DW\-\_AT\-\_explicit
-\item DW\-\_AT\-\_is\-\_optional
-\item DW\-\_AT\-\_location
-\item DW\-\_AT\-\_lower\-\_bound
-\item DW\-\_AT\-\_mutable
-\item DW\-\_AT\-\_ordering
-\item DW\-\_AT\-\_picture\-\_string
-\item DW\-\_AT\-\_prototyped
-\item DW\-\_AT\-\_small
-\item DW\-\_AT\-\_segment
-\item DW\-\_AT\-\_string\-\_length
-\item DW\-\_AT\-\_threads\-\_scaled
-\item DW\-\_AT\-\_upper\-\_bound
-\item DW\-\_AT\-\_use\-\_location
-\item DW\-\_AT\-\_use\-\_UTF8
-\item DW\-\_AT\-\_variable\-\_parameter
-\item DW\-\_AT\-\_virtuality
-\item DW\-\_AT\-\_visibility
-\item DW\-\_AT\-\_vtable\-\_elem\-\_location
+\item \livelink{chap:DWATname}{DW\-\_AT\-\_name}
+\item \livelink{chap:DWATaccessibility}{DW\-\_AT\-\_accessibility}
+\item \livelink{chap:DWATaddressclass}{DW\-\_AT\-\_address\-\_class}
+\item \livelink{chap:DWATallocated}{DW\-\_AT\-\_allocated}
+\item \livelink{chap:DWATartificial}{DW\-\_AT\-\_artificial}
+\item \livelink{chap:DWATassociated}{DW\-\_AT\-\_associated}
+\item \livelink{chap:DWATbinaryscale}{DW\-\_AT\-\_binary\-\_scale}
+\item \livelink{chap:DWATbitoffset}{DW\-\_AT\-\_bit\-\_offset}
+\item \livelink{chap:DWATbitsize}{DW\-\_AT\-\_bit\-\_size}
+\item \livelink{chap:DWATbitstride}{DW\-\_AT\-\_bit\-\_stride}
+\item \livelink{chap:DWATbytesize}{DW\-\_AT\-\_byte\-\_size}
+\item \livelink{chap:DWATbytestride}{DW\-\_AT\-\_byte\-\_stride}
+\item \livelink{chap:DWATconstexpr}{DW\-\_AT\-\_const\-\_expr}
+\item \livelink{chap:DWATconstvalue}{DW\-\_AT\-\_const\-\_value}
+\item \livelink{chap:DWATcontainingtype}{DW\-\_AT\-\_containing\-\_type}
+\item \livelink{chap:DWATcount}{DW\-\_AT\-\_count}
+\item \livelink{chap:DWATdatabitoffset}{DW\-\_AT\-\_data\-\_bit\-\_offset}
+\item \livelink{chap:DWATdatalocation}{DW\-\_AT\-\_data\-\_location}
+\item \livelink{chap:DWATdatamemberlocation}{DW\-\_AT\-\_data\-\_member\-\_location}
+\item \livelink{chap:DWATdecimalscale}{DW\-\_AT\-\_decimal\-\_scale}
+\item \livelink{chap:DWATdecimalsign}{DW\-\_AT\-\_decimal\-\_sign}
+\item \livelink{chap:DWATdefaultvalue}{DW\-\_AT\-\_default\-\_value}
+\item \livelink{chap:DWATdigitcount}{DW\-\_AT\-\_digit\-\_count}
+\item \livelink{chap:DWATdiscr}{DW\-\_AT\-\_discr}
+\item \livelink{chap:DWATdiscrlist}{DW\-\_AT\-\_discr\-\_list}
+\item \livelink{chap:DWATdiscrvalue}{DW\-\_AT\-\_discr\-\_value}
+\item \livelink{chap:DWATencoding}{DW\-\_AT\-\_encoding}
+\item \livelink{chap:DWATenumclass}{DW\-\_AT\-\_enum\-\_class}
+\item \livelink{chap:DWATendianity}{DW\-\_AT\-\_endianity}
+\item \livelink{chap:DWATexplicit}{DW\-\_AT\-\_explicit}
+\item \livelink{chap:DWATisoptional}{DW\-\_AT\-\_is\-\_optional}
+\item \livelink{chap:DWATlocation}{DW\-\_AT\-\_location}
+\item \livelink{chap:DWATlowerbound}{DW\-\_AT\-\_lower\-\_bound}
+\item \livelink{chap:DWATmutable}{DW\-\_AT\-\_mutable}
+\item \livelink{chap:DWATordering}{DW\-\_AT\-\_ordering}
+\item \livelink{chap:DWATpicturestring}{DW\-\_AT\-\_picture\-\_string}
+\item \livelink{chap:DWATprototyped}{DW\-\_AT\-\_prototyped}
+\item \livelink{chap:DWATsmall}{DW\-\_AT\-\_small}
+\item \livelink{chap:DWATsegment}{DW\-\_AT\-\_segment}
+\item \livelink{chap:DWATstringlength}{DW\-\_AT\-\_string\-\_length}
+\item \livelink{chap:DWATthreadsscaled}{DW\-\_AT\-\_threads\-\_scaled}
+\item \livelink{chap:DWATupperbound}{DW\-\_AT\-\_upper\-\_bound}
+\item \livelink{chap:DWATuselocation}{DW\-\_AT\-\_use\-\_location}
+\item \livelink{chap:DWATuseUTF8}{DW\-\_AT\-\_use\-\_UTF8}
+\item \livelink{chap:DWATvariableparameter}{DW\-\_AT\-\_variable\-\_parameter}
+\item \livelink{chap:DWATvirtuality}{DW\-\_AT\-\_virtuality}
+\item \livelink{chap:DWATvisibility}{DW\-\_AT\-\_visibility}
+\item \livelink{chap:DWATvtableelemlocation}{DW\-\_AT\-\_vtable\-\_elem\-\_location}
 \end{itemize}
 
-Note that except for the initial DW\-\_AT\-\_name attribute,
+Note that except for the initial \livelink{chap:DWATname}{DW\-\_AT\-\_name} attribute,
 attributes are appended in order according to the alphabetical
 spelling of their identifier.
 
@@ -2113,11 +2113,11 @@ and DW\-\_FORM\-\_block.
 \livelink{chap:DWTAGrvaluereferencetype}{DW\-\_TAG\-\_rvalue\-\_reference\-\_type},
 \livelink{chap:DWTAGptrtomembertype}{DW\-\_TAG\-\_ptr\-\_to\-\_member\-\_type}, 
 or \livelink{chap:DWTAGfriend}{DW\-\_TAG\-\_friend}, and the referenced
-type (via the DW\-\_AT\-\_type or 
-DW\-\_AT\-\_friend attribute) has a
-DW\-\_AT\-\_name attribute, append to S the letter 'N', the DWARF
-attribute code (DW\-\_AT\-\_type or 
-DW\-\_AT\-\_friend), the context of
+type (via the \livelink{chap:DWATtype}{DW\-\_AT\-\_type} or 
+\livelink{chap:DWATfriend}{DW\-\_AT\-\_friend} attribute) has a
+\livelink{chap:DWATname}{DW\-\_AT\-\_name} attribute, append to S the letter 'N', the DWARF
+attribute code (\livelink{chap:DWATtype}{DW\-\_AT\-\_type} or 
+\livelink{chap:DWATfriend}{DW\-\_AT\-\_friend}), the context of
 the type (according to the method in Step 2), the letter 'E',
 and the name of the type. For \livelink{chap:DWTAGfriend}{DW\-\_TAG\-\_friend}, if the referenced
 entry is a \livelink{chap:DWTAGsubprogram}{DW\-\_TAG\-\_subprogram}, the context is omitted and the
@@ -2130,17 +2130,17 @@ name to be used is the ABI-specific name of the subprogram
 \livelink{chap:DWTAGrvaluereferencetype}{DW\-\_TAG\-\_rvalue\-\_reference\-\_type},
 \livelink{chap:DWTAGptrtomembertype}{DW\-\_TAG\-\_ptr\-\_to\-\_member\-\_type}, or 
 \livelink{chap:DWTAGfriend}{DW\-\_TAG\-\_friend}, but has
-a DW\-\_AT\-\_type attribute, or if the referenced type (via
-the DW\-\_AT\-\_type or 
-DW\-\_AT\-\_friend attribute) does not have a
-DW\-\_AT\-\_name attribute, the attribute is processed according to
+a \livelink{chap:DWATtype}{DW\-\_AT\-\_type} attribute, or if the referenced type (via
+the \livelink{chap:DWATtype}{DW\-\_AT\-\_type} or 
+\livelink{chap:DWATfriend}{DW\-\_AT\-\_friend} attribute) does not have a
+\livelink{chap:DWATname}{DW\-\_AT\-\_name} attribute, the attribute is processed according to
 the method in Step 4 for an attribute that refers to another
 type entry.
 
 
 \item Visit each child C of the debugging information
 entry as follows: If C is a nested type entry or a member
-function entry, and has a DW\-\_AT\-\_name attribute, append to
+function entry, and has a \livelink{chap:DWATname}{DW\-\_AT\-\_name} attribute, append to
 S the letter 'S', the tag of C, and its name; otherwise,
 process C recursively by performing Steps 3 through 7,
 appending the result to S. Following the last child (or if
@@ -2151,10 +2151,10 @@ there are no children), append a zero byte.
 
 For the purposes of this algorithm, if a debugging information
 entry S has a 
-DW\-\_AT\-\_specification 
+\livelink{chap:DWATspecification}{DW\-\_AT\-\_specification} 
 attribute that refers to
 another entry D (which has a 
-DW\-\_AT\-\_declaration 
+\livelink{chap:DWATdeclaration}{DW\-\_AT\-\_declaration} 
 attribute),
 then S inherits the attributes and children of D, and S is
 processed as if those attributes and children were present in
@@ -2223,17 +2223,17 @@ a type.}
 \textit{Certain attributes are not included in the type signature:}
 
 \begin{itemize}
-\item \textit{The DW\-\_AT\-\_declaration attribute is not included because it
+\item \textit{The \livelink{chap:DWATdeclaration}{DW\-\_AT\-\_declaration} attribute is not included because it
 indicates that the debugging information entry represents an
 incomplete declaration, and incomplete declarations should
 not be placed in separate type units.}
 
-\item \textit{The DW\-\_AT\-\_description attribute is not included because
+\item \textit{The \livelink{chap:DWATdescription}{DW\-\_AT\-\_description} attribute is not included because
 it does not provide any information unique to the defining
 declaration of the type.}
 
-\item \textit{The DW\-\_AT\-\_decl\-\_file, DW\-\_AT\-\_decl\-\_line, and
-DW\-\_AT\-\_decl\-\_column attributes are not included because they
+\item \textit{The \livelink{chap:DWATdeclfile}{DW\-\_AT\-\_decl\-\_file}, \livelink{chap:DWATdeclline}{DW\-\_AT\-\_decl\-\_line}, and
+\livelink{chap:DWATdeclcolumn}{DW\-\_AT\-\_decl\-\_column} attributes are not included because they
 may vary from one source file to the next, and would prevent
 two otherwise identical type declarations from producing the
 same hash.}