* stabs.texinfo (Enumerations): Talk about large, negative and
authorJim Kingdon <jkingdon@engr.sgi.com>
Tue, 2 Nov 1993 15:16:31 +0000 (15:16 +0000)
committerJim Kingdon <jkingdon@engr.sgi.com>
Tue, 2 Nov 1993 15:16:31 +0000 (15:16 +0000)
octal values.  Clean up cross reference to type attributes.
(String Field): Say that GDB 4.11 supports size attribute.

gdb/doc/ChangeLog
gdb/doc/stabs.texinfo

index 40800af1a09b5582e3a352b65407aa15eb86cc90..6835bcc150b33a931e01c6ef521f52495e5877fb 100644 (file)
@@ -1,3 +1,9 @@
+Tue Nov  2 09:08:37 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
+
+       * stabs.texinfo (Enumerations): Talk about large, negative and
+       octal values.  Clean up cross reference to type attributes.
+       (String Field): Say that GDB 4.11 supports size attribute.
+
 Sun Oct 31 13:31:10 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
 
        * remote.texi (VxWorks Remote): Clarify that rebuilding VxWorks kernel
index 4068254100582a81786c3a6413ac2c003a774da5..71eab8cc4d128fba887079339847bf02acad8318 100644 (file)
@@ -251,7 +251,8 @@ those from the C++ type descriptor @samp{@@}.  The attributes are:
 applies to all variables of this type.
 
 @item s@var{size}
-Size in bits of a variable of this type.
+Size in bits of a variable of this type.  This is fully supported by GDB
+4.11 and later.
 
 @item p@var{integer}
 Pointer class (for checking).  Not sure what this means, or how
@@ -263,17 +264,17 @@ elements are placed more closely in memory, to save memory at the
 expense of speed.
 @end table
 
-All of this can make the string field quite long.  All
-versions of GDB, and some versions of dbx, can handle arbitrarily long
-strings.  But many versions of dbx cretinously limit the strings to
-about 80 characters, so compilers which must work with such dbx's need
-to split the @code{.stabs} directive into several @code{.stabs}
-directives.  Each stab duplicates exactly all but the
-string field.  The string field of
-every stab except the last is marked as continued with a
-double-backslash at the end.  Removing the backslashes and concatenating
-the string fields of each stab produces the original,
-long string.
+All of this can make the string field quite long.  All versions of GDB,
+and some versions of dbx, can handle arbitrarily long strings.  But many
+versions of dbx (or assemblers or linkers, I'm not sure which)
+cretinously limit the strings to about 80 characters, so compilers which
+must work with such systems need to split the @code{.stabs} directive
+into several @code{.stabs} directives.  Each stab duplicates every field
+except the string field.  The string field of every stab except the last
+is marked as continued with a backslash at the end (in the assembly code
+this may be written as a double backslash, depending on the assembler).
+Removing the backslashes and concatenating the string fields of each
+stab produces the original, long string.
 
 @node C Example
 @section A Simple Example in C Source
@@ -1848,13 +1849,17 @@ structure, enumeration, or union tag.  The type descriptor @samp{e},
 following the @samp{22=} of the type definition narrows it down to an
 enumeration type.  Following the @samp{e} is a list of the elements of
 the enumeration.  The format is @samp{@var{name}:@var{value},}.  The
-list of elements ends with @samp{;}.
+list of elements ends with @samp{;}.  The fact that @var{value} is
+specified as an integer can cause problems if the value is large.  GCC
+2.5.2 tries to output it in octal in that case with a leading zero,
+which is probably a good thing, although GDB 4.11 supports octal only in
+cases where decimal is perfectly good.  Negative decimal values are
+supported by both GDB and dbx.
 
 There is no standard way to specify the size of an enumeration type; it
 is determined by the architecture (normally all enumerations types are
-32 bits).  There should be a way to specify an enumeration type of
-another size; type attributes would be one way to do this.  @xref{Stabs
-Format}.
+32 bits).  Type attributes can be used to specify an enumeration type of
+another size for debuggers which support them; see @ref{String Field}.
 
 @node Structures
 @section Structures