From: Jim Kingdon Date: Tue, 2 Nov 1993 15:16:31 +0000 (+0000) Subject: * stabs.texinfo (Enumerations): Talk about large, negative and X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=ae7016045fc846bb8683cc3cee0b1de429c8b9b0;p=binutils-gdb.git * 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. --- diff --git a/gdb/doc/ChangeLog b/gdb/doc/ChangeLog index 40800af1a09..6835bcc150b 100644 --- a/gdb/doc/ChangeLog +++ b/gdb/doc/ChangeLog @@ -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 diff --git a/gdb/doc/stabs.texinfo b/gdb/doc/stabs.texinfo index 40682541005..71eab8cc4d1 100644 --- a/gdb/doc/stabs.texinfo +++ b/gdb/doc/stabs.texinfo @@ -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