This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
[rfa:doc] Clarify stabs @
- From: Andrew Cagney <ac131313 at redhat dot com>
- To: gdb-patches at sources dot redhat dot com
- Date: Wed, 29 Jan 2003 22:12:41 -0500
- Subject: [rfa:doc] Clarify stabs @
Following up a very old e-mail.
Ok?
Andrew
2003-01-29 Andrew Cagney <ac131313@redhat.com>
* stabs.texinfo (Member Type Descriptor): Clarify description of
`@'. Suggested by Ben Hutchings.
Index: stabs.texinfo
===================================================================
RCS file: /cvs/src/src/gdb/doc/stabs.texinfo,v
retrieving revision 1.8
diff -u -r1.8 stabs.texinfo
--- stabs.texinfo 2 Jan 2003 14:36:48 -0000 1.8
+++ stabs.texinfo 30 Jan 2003 03:06:26 -0000
@@ -2724,11 +2724,22 @@
@node Member Type Descriptor
@section The @samp{@@} Type Descriptor
-The @samp{@@} type descriptor is for a member (class and variable) type.
-It is followed by type information for the offset basetype, a comma, and
-type information for the type of the field being pointed to. (FIXME:
-this is acknowledged to be gibberish. Can anyone say what really goes
-here?).
+The @samp{@@} type descriptor is used together with the @samp{*} type
+descriptor for a pointer-to-non-static-member-data type. It is followed
+by type information for the class (or union), a comma, and type
+information for the member data.
+
+The following C++ source:
+
+@smallexample
+typedef int A::*int_in_a;
+@end smallexample
+
+generates the following stab:
+
+@smallexample
+.stabs "int_in_a:t20=*21=@@19,1",128,0,0,0
+@end smallexample
Note that there is a conflict between this and type attributes
(@pxref{String Field}); both use type descriptor @samp{@@}.