This indexes letters f, g, and h.
[dwarf-doc.git] / dwarf5 / latexdoc / dataobject.tex
index a69930f..a986ecd 100644 (file)
@@ -9,13 +9,15 @@ a common \livelink{chap:commonblockentry}{block}.
 
 \section{Data Object Entries}
 \label{chap:dataobjectentries}
+\addtoindexx{data object entries}
 
-
-Program variables, formal parameters and constants are
+Program variables, 
+\addtoindexx{formal parameter entry}
+formal parameters and constants are
 represented by debugging information entries with the tags
-\livetarg{chap:DWTAGvariable}{DW\-\_TAG\-\_variable}, 
-\livetarg{chap:DWTAGformalparameter}{DW\-\_TAG\-\_formal\-\_parameter} and 
-\livetarg{chap:DWTAGconstant}{DW\-\_TAG\-\_constant},
+\livetarg{chap:DWTAGvariable}{DW\-\_TAG\-\_variable}\addtoindexx{variable entry}
+\livetarg{chap:DWTAGformalparameter}{DW\-\_TAG\-\_formal\-\_parameter}\addtoindexx{formal parameter entry} and 
+\livetarg{chap:DWTAGconstant}{DW\-\_TAG\-\_constant}\addtoindexx{constant (data) entry},
 respectively.
 
 \textit{The tag \livelink{chap:DWTAGconstant}{DW\-\_TAG\-\_constant} is used for languages that
@@ -26,13 +28,17 @@ formal parameter or constant may have the following attributes:
 \begin{enumerate}[1.]
 \item A \livelink{chap:DWATname}{DW\-\_AT\-\_name} attribute, whose value is a null-terminated
 string, containing the data object name as it appears in the
-source program.  If a variable entry describes an anonymous
-union, the name attribute is omitted or consists of a single
+source program.  If a variable entry describes 
+an 
+\addtoindex{anonymous union},
+the name attribute is omitted or consists of a single
 zero byte.
 
 \item A \livelink{chap:DWATexternal}{DW\-\_AT\-\_external} attribute, 
 \hypertarget{chap:DWATexternalexternalvariable}
-which is a \livelink{chap:flag}{flag}, if the name
+which 
+\addtoindexx{external attribute}
+is a \livelink{chap:flag}{flag}, if the name
 of a variable is visible outside of its enclosing compilation
 unit.  The definitions of C++ static data members of structures
 or classes are represented by variable entries \nolink{flagged} as
@@ -40,6 +46,7 @@ external. Both file static and local variables in C and C++
 are represented by non-external variable entries.
 
 \item A \livelink{chap:DWATdeclaration}{DW\-\_AT\-\_declaration} attribute, 
+\addtoindexx{declaration attribute}
 which is a \livelink{chap:flag}{flag} that
 indicates whether this entry represents a non-defining
 declaration of an object.
@@ -47,7 +54,10 @@ declaration of an object.
 \item A \livelink{chap:DWATlocation}{DW\-\_AT\-\_location} attribute, whose value describes the
 location of a variable or parameter at run-time.  In a variable
 entry representing the definition of a variable (that is,
-with no \livelink{chap:DWATdeclaration}{DW\-\_AT\-\_declaration} attribute) if no location attribute
+\addtoindexx{declaration attribute}
+with no 
+\livelink{chap:DWATdeclaration}{DW\-\_AT\-\_declaration} attribute) 
+if no location attribute
 is present, or if the location attribute is present but has
 an empty location description (as described in Section 2.6),
 the variable is assumed to exist in the source code but not
@@ -86,7 +96,8 @@ type of the data member whose definition they
 \hypertarget{chap:DWATvariableparameternonconstantparameterflag}
 represent.
 
-\item A \livelink{chap:DWATvariableparameter}{DW\-\_AT\-\_variable\-\_parameter} attribute, 
+\item A \livelink{chap:DWATvariableparameter}{DW\-\_AT\-\_variable\-\_parameter}
+attribute\addtoindexx{variable parameter attribute}, 
 which is a \livelink{chap:flag}{flag},
 if a formal parameter entry represents a parameter whose
 value in the calling function may be modified by the callee..
@@ -98,7 +109,11 @@ value in the calling function cannot be modified by the callee.
 which is a \livelink{chap:flag}{flag}, if a
 parameter entry represents an optional parameter.
 
-\item A \livelink{chap:DWATdefaultvalue}{DW\-\_AT\-\_default\-\_value} attribute for a formal parameter
+\item A \livelink{chap:DWATdefaultvalue}{DW\-\_AT\-\_default\-\_value} attribute 
+\addtoindexx{default value attribute}
+for 
+\addtoindexx{formal parameter entry!with default value}
+a formal parameter
 \hypertarget{chap:DWATdefaultvaluedefaultvalueofparameter}
 entry. The value of this attribute is a reference to the
 debugging information entry for a variable or subroutine,
@@ -145,14 +160,17 @@ containing scope is contiguous, the value of this attribute
 is the offset in bytes of the beginning of the scope for the
 object from the low pc value of the debugging information
 entry that defines its scope. If the containing scope
-is non-contiguous (see Section 2.17.3), the value of this
+is non-contiguous 
+(see \refersec{chap:noncontiguousaddressranges})
+the value of this
 attribute is the offset in bytes of the beginning of the scope
 for the object from the beginning of the first range list entry
 that is not a base selection entry or an end of list entry.
 
 \item Otherwise, the scope of the object is specified using
 a value of class \livelink{chap:rangelistptr}{rangelistptr}. This value indicates the
-beginning of a range list (see Section 2.17.3).
+beginning of a range list
+(see \refersec{chap:noncontiguousaddressranges}).
 \end{enumerate}
 
 
@@ -185,9 +203,15 @@ the containing scope is contiguous. Conversely, the scope of
 an object may not require its own range list even when the
 containing scope is non\dash contiguous.}
 
-\item A \livelink{chap:DWATendianity}{DW\-\_AT\-\_endianity} attribute, whose value is a constant
+\item A \livelink{chap:DWATendianity}{DW\-\_AT\-\_endianity} attribute, 
+whose value 
 \hypertarget{chap:DWATendianityendianityofdata}
-that specifies the endianity of the object. The value of
+is a constant
+\addtoindexx{endianity attribute}
+that 
+\addtoindexx{big-endian encoding|see{endianity attribute}}
+specifies 
+the endianity of the object. The value of
 this attribute specifies an ABI\dash defined byte ordering for
 the value of the object. If omitted, the default endianity
 of data for the given type is assumed.  The set of values
@@ -237,7 +261,9 @@ Section \refersec{chap:linkagenames}.
 \section{Common Block Entries}
 \label{chap:commonblockentries}
 A Fortran \livetargi{chap:fortrancommonblock}{common}{Fortran!common block} \livetargi{chap:commonblockentry}{block}{common block entry} 
-may be described by a debugging
+may 
+\addtoindexx{Fortran!common block}
+be described by a debugging
 information entry with the 
 tag \livetarg{chap:DWTAGcommonblock}{DW\-\_TAG\-\_common\-\_block}. 
 The