Merge branch 'HEAD' of dwarfgit@dwarfstd.org:dwarf-doc.git
authorRon Brender <ron.brender@gmail.com>
Sun, 15 Jun 2014 19:46:05 +0000 (15:46 -0400)
committerRon Brender <ron.brender@gmail.com>
Sun, 15 Jun 2014 19:46:05 +0000 (15:46 -0400)
dwarf5/latexdoc/changesummary.tex
dwarf5/latexdoc/datarepresentation.tex
dwarf5/latexdoc/dwarf5.tex
dwarf5/latexdoc/dwarfnamecmds.tex
dwarf5/latexdoc/generaldescription.tex
dwarf5/latexdoc/programscope.tex
dwarf5/latexdoc/typeentries.tex

index a6455e6..07af733 100644 (file)
@@ -15,6 +15,7 @@ This change summary is included only in draft versions of this document.
 \begin{longtable}{ll}
 \textbf{Date}  & \textbf{Issue Incorporated or Other Change}   \\ \hline       \\
 \endhead
+5/21/2014       & 121221.1 (character kinds for Fortran, w/o example) \\
 5/16/2014       & 140227.1 (references to within type unit), Walker review comments,  \\
                 & 140331.1 (noreturn attribute) \\
 5/13/2014       & 100909.1 (entry values), 100909.2 (call sites), \\
@@ -49,8 +50,7 @@ This change summary is included only in draft versions of this document.
 6/22/2013      & 100805.1 (value of reference), 100816.1 (remove .debug\_types), \\ 
                & 101014.1, 101111.1, 120218.1 (Go, Modula-3 and Haskell), \\
                & 110803.1 (tls), 110926.1 (DW\_OP\_callx), 121212.1 (type unit)        \\
-               & 121221.1 (location length), 130121.1 (default location) \\
-               & 121123.1 (length in location list entry),             \\
+               & 130121.1 (default location), 121123.1 (length in location list entry),                \\
                & 110110.1 \& 130623.1 (size of string length w/o example)      \\
 6/20/2013      & 090824.1 (coarray)                                                    \\
 6/18/2013      & 100211.1 (OpenCL), add this Change Summary    \\
index 93981a7..5a5d8d4 100644 (file)
@@ -1894,6 +1894,7 @@ Table \refersec{tab:basetypeencodingvalues}
   \hline \emph{Continued on next page}
 \endfoot
   \hline
+  \ddag \ \textit{New in \DWARFVersionV}
 \endlastfoot
 \DWATEaddress&0x01 \\
 \DWATEboolean&0x02 \\
@@ -1909,8 +1910,10 @@ Table \refersec{tab:basetypeencodingvalues}
 \DWATEedited&0x0c \\
 \DWATEsignedfixed&0x0d \\
 \DWATEunsignedfixed&0x0e \\
-\DWATEdecimalfloat{} & 0x0f \\
+\DWATEdecimalfloat & 0x0f \\
 \DWATEUTF{} & 0x10 \\
+\DWATEUCS~\ddag   & 0x11 \\
+\DWATEASCII~\ddag & 0x12 \\
 \DWATElouser{} & 0x80 \\
 \DWATEhiuser{} & \xff \\
 \end{longtable}
@@ -2096,7 +2099,7 @@ defined language.
   \hline \emph{Continued on next page}
 \endfoot
   \hline
-  \dag \ \textit{See text} \\ \ddag \ \textit{New in \addtoindex{DWARF Version 5}}
+  \dag \ \textit{See text} \\ \ddag \ \textit{New in \DWARFVersionV}
 \endlastfoot
 \addtoindexx{ISO-defined language names}
 
index a0e8829..4f83cfa 100644 (file)
@@ -3,7 +3,7 @@
 % If draft is in the document class list, pix are just suggested
 % by an outline, the pic does not appear as a picture.
 %
-\newcommand{\docdate}{May 16, 2014}
+\newcommand{\docdate}{May 27, 2014}
 %
 \usepackage{ifthen}
 \newboolean{isdraft}
index cd16895..4e6efb1 100644 (file)
 \newdwfnamecommands{DWATEunsignedchar}{DW\_ATE\_unsigned\_char}
 \newdwfnamecommands{DWATEunsignedfixed}{DW\_ATE\_unsigned\_fixed}
 \newdwfnamecommands{DWATEUTF}{DW\_ATE\_UTF}
+\newdwfnamecommands{DWATEUCS}{DW\_ATE\_UCS}
+\newdwfnamecommands{DWATEASCII}{DW\_ATE\_ASCII}
 %
 % DW_CC
 %
index 6a2eddc..db95c6b 100644 (file)
@@ -454,8 +454,10 @@ The attributes are listed in Table \referfol{tab:attributenames}.
 \DWATtrampolineTARG
 &\livelinki{chap:DWATtrampolinetargetsubroutine}{Target subroutine}{target subroutine of trampoline} \\
 \DWATtypeTARG
-&\livelinki{chap:DWATtypetypeofdeclaration}{Type of declaration}{type of declaration} \\
-&\livelinki{chap:DWATtypetypeofsubroutinereturn}{Type of subroutine return}{type of subroutine return} \\
+&\livelinki{chap:DWATtypeofcallsite}{Type of call site}{type!of call site} \\
+&\livelinki{char:DWAATtypeofstringtype}{Type of string type components}{type!of string type components} \\
+&\livelinki{chap:DWATtypetypeofsubroutinereturn}{Type of subroutine return}{type!of subroutine return} \\
+&\livelinki{chap:DWATtypetypeofdeclaration}{Type of declaration}{type!of declaration} \\
 \DWATupperboundTARG
 &\livelinki{chap:DWATupperboundupperboundofsubrange}{Upper bound of subrange}{upper bound of subrange} \\
 \DWATuselocationTARG
@@ -1181,10 +1183,10 @@ operation, beginning after the 2\dash byte constant.
 and \DWOPcallrefNAME{} perform
 subroutine calls during evaluation of a DWARF expression or
 location description. 
-For \DWOPcalltwoNAME{} and \DWOPcallfour{}, 
+For \DWOPcalltwoNAME{} and \DWOPcallfourNAME{}, 
 the operand is the 2\dash~ or 4\dash byte unsigned offset, respectively,
 of a debugging information entry in the current compilation
-unit. The \DWOPcallref{} operator has a single operand. In the
+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
index 9f0977e..9b3f332 100644 (file)
@@ -971,7 +971,7 @@ is visible outside of its containing
 compilation unit, that entry has 
 \addtoindexx{external attribute}
 a 
-\DWATexternal{} attribute,
+\DWATexternalNAME{} attribute,
 which is a \livelink{chap:classflag}{flag}.
 
 \textit{Additional attributes for functions that are members of a
@@ -983,11 +983,11 @@ A
 \hypertarget{chap:DWATmainsubprogrammainorstartingsubprogram}{}
 subroutine entry 
 may contain a 
-\DWATmainsubprogram{}
+\DWATmainsubprogramNAME{}
 attribute 
 \addtoindexx{main subprogram attribute}
 which is 
-a \livelink{chap:classflag}{flag} whose presence indicates that the
+a \CLASSflag whose presence indicates that the
 subroutine has been identified as the starting function of
 the program.  If more than one subprogram contains this 
 \nolink{flag},
@@ -1009,7 +1009,7 @@ and will therefore not be safe to call from within a debugger.
 A subroutine entry may 
 \hypertarget{chap:DWATcallingconventionsubprogramcallingconvention}{}
 contain a 
-\DWATcallingconvention{}
+\DWATcallingconventionNAME{}
 attribute, whose value is an 
 \livelink{chap:classconstant}{integer constant}. The set of
 calling convention codes is given in 
@@ -1056,15 +1056,15 @@ A subroutine entry declared with a function prototype style
 declaration may have 
 \addtoindexx{prototyped attribute}
 a 
-\DWATprototyped{} attribute, which is
-a \livelink{chap:classflag}{flag}.
+\DWATprototypedNAME{} attribute, which is
+a \CLASSflag.
 
 \textit{The \addtoindex{Fortran} 
 language allows the keywords \texttt{elemental}, \texttt{pure}
 and \texttt{recursive} to be included as part of the declaration of
 a subroutine; these attributes reflect that usage. These
 attributes are not relevant for languages that do not support
-similar keywords or syntax. In particular, the \DWATrecursive{}
+similar keywords or syntax. In particular, the \DWATrecursiveNAME{}
 attribute is neither needed nor appropriate in languages such
 as \addtoindex{C} 
 where functions support recursion by default.
@@ -1075,7 +1075,7 @@ A subprogram entry
 may have 
 \addtoindexx{elemental attribute}
 a 
-\DWATelemental{} attribute, which
+\DWATelementalNAME{} attribute, which
 is a \livelink{chap:classflag}{flag}. 
 The attribute indicates whether the subroutine
 or entry point was declared with the \doublequote{elemental} keyword
@@ -1086,7 +1086,7 @@ A
 subprogram entry may have 
 \addtoindexx{pure attribute}
 a 
-\DWATpure{} attribute, which is
+\DWATpureNAME{} attribute, which is
 a \livelink{chap:classflag}{flag}. 
 The attribute indicates whether the subroutine was
 declared with the \doublequote{pure} keyword or property.
@@ -1094,14 +1094,15 @@ declared with the \doublequote{pure} keyword or property.
 A 
 \hypertarget{chap:DWATrecursiverecursivepropertyofasubroutine}{}
 subprogram entry may have a 
-\DWATrecursive{} attribute, which
+\DWATrecursiveNAME{} attribute, which
 is a \livelink{chap:classflag}{flag}. 
 The attribute indicates whether the subroutine
 or entry point was declared with the \doublequote{recursive} keyword
 or property.
 
 A subprogram entry may have a 
-\DWATnoreturn\livetargi{chap:DWATnoreturnofsubprogram}{ attribute}{noreturn attribute}, 
+\DWATnoreturnNAME
+\livetargi{chap:DWATnoreturnofsubprogram}{ attribute}{noreturn attribute}, 
 which is a \CLASSflag. The attribute 
 indicates whether the subprogram was declared with the \doublequote{noreturn} keyword or property 
 indicating that the subprogram can be called, but will never return to its caller.
index cfd7d47..b2d5853 100644 (file)
@@ -147,7 +147,9 @@ floating\dash point number \\
 \DWATEsignedfixedTARG{} & signed fixed\dash point scaled integer \\
 \DWATEunsignedfixedTARG& unsigned fixed\dash point scaled integer \\
 \DWATEdecimalfloatTARG{} & decimal floating\dash point number \\ 
-\DWATEUTFTARG{} & \addtoindex{Unicode} character \\
+\DWATEUTFTARG{} & \addtoindex{Unicode} character (two-byte UTF-8) \\
+\DWATEASCIITARG{} & \addtoindex{ASCII} character (one-byte) \\
+\DWATEUCSTARG{} & \addtoindex{ISO 10646} character (four-byte) \\
 \hline
 \end{tabular}
 \end{table}
@@ -164,6 +166,10 @@ represented by a base type entry with a name attribute whose
 value is \doublequote{char16\_t}, an encoding attribute whose value
 is \DWATEUTF{} and a byte size attribute whose value is 2.}
 
+\textit{The \DWATEASCII{} and \DWATEUCS{} encodings are intended for
+the {Fortran 2003} string kinds \texttt{ASCII} (ISO/IEC 646:1991) and
+\texttt{ISO\_10646} (UCS-4 in ISO//IEC 10646:2000).}
+
 The 
 \DWATEpackeddecimal{} 
 and 
@@ -1860,6 +1866,20 @@ whose value is
 a null\dash terminated string containing the string type name as
 it appears in the source program.
 
+\textit{The 
+\addtoindex{Fortran 2003} language standard allows string 
+types that are composed of different types of (same sized) characters. 
+While there is no standard list of character kinds, the kinds
+\addttindex{ASCII} (see \DWATEASCII), \addttindex{ISO\_10646}
+(see \DWATEUCS) and \texttt{DEFAULT} are defined.}
+
+A string type entry may have a \DWATtype{} 
+\livetargi{char:DWAATtypeofstringtype}{attribute}{type attribute!of string type entry}
+describing how each character is encoded and is to be interpreted.  
+The value of this attribute is a \CLASSreference to a 
+\DWTAGbasetype{} base type entry.  If the attribute is absent, 
+then the character is encoded using the system default.
+
 \needlines{4}
 The string type entry may have a 
 \DWATbytesize{} attribute or 
@@ -2239,7 +2259,7 @@ reference to the type of the entities that are dynamically allocated.
        
 A dynamic type entry also has a \DWATdatalocation, and may also
 have \DWATallocated{} and/or \DWATassociated{} attributes as 
-described following (Section 5.15.1). The type referenced by the
+described in Section \referfol{chap:dynamictypeproperties}. The type referenced by the
 \DWATtype{} attribute must not have any of these attributes.
 
 \subsection{Dynamic Type Properties}