aboutsummaryrefslogtreecommitdiff
path: root/gdb/symtab.h
diff options
context:
space:
mode:
authorJohn Gilmore <gnu@cygnus>1991-11-27 09:43:59 +0000
committerJohn Gilmore <gnu@cygnus>1991-11-27 09:43:59 +0000
commitf1d77e90532e9ac4a4362a4e55d7b975cb0be991 (patch)
tree2246c2f3fb742f008789481a8aa17ec0b69a3b27 /gdb/symtab.h
parent7d7ecbddb0308f987cd71ded534823539e719879 (diff)
downloadgdb-f1d77e90532e9ac4a4362a4e55d7b975cb0be991.zip
gdb-f1d77e90532e9ac4a4362a4e55d7b975cb0be991.tar.gz
gdb-f1d77e90532e9ac4a4362a4e55d7b975cb0be991.tar.bz2
Improve G++ debugging support.
Diffstat (limited to 'gdb/symtab.h')
-rw-r--r--gdb/symtab.h26
1 files changed, 4 insertions, 22 deletions
diff --git a/gdb/symtab.h b/gdb/symtab.h
index 8675a76..801bc5f 100644
--- a/gdb/symtab.h
+++ b/gdb/symtab.h
@@ -131,10 +131,9 @@ struct type
For an array type, describes the type of the elements.
For a function or method type, describes the type of the value.
For a range type, describes the type of the full range.
- For a record type, it's the "main variant" of the record type,
- used for computing pointers to members.
Unused otherwise. */
struct type *target_type;
+
/* Type that is a pointer to this type.
Zero if no such pointer-to type is known yet.
The debugger may add the address of such a type
@@ -142,7 +141,6 @@ struct type
struct type *pointer_type;
/* C++: also need a reference type. */
struct type *reference_type;
-
/* Type that is a function returning this type.
Zero if no such function type is known here.
The debugger may add the address of such a type
@@ -189,7 +187,7 @@ struct type
the field number of that pointer in the structure.
For types that are pointer to member types, VPTR_BASETYPE
- ifs the type that this pointer is a member of.
+ is the type that this pointer is a member of.
Unused otherwise. */
struct type *vptr_basetype;
@@ -204,23 +202,10 @@ struct type
} type_specific;
};
-/* C++ language-specific information for TYPE_CODE_STRUCT nodes. */
+/* C++ language-specific information for TYPE_CODE_STRUCT and TYPE_CODE_UNION
+ nodes. */
struct cplus_struct_type
{
- /* Handling of pointers to members:
- TYPE_MAIN_VARIANT is used for pointer and pointer
- to member types. Normally it is the value of the address of its
- containing type. However, for pointers to members, we must be
- able to allocate pointer to member types and look them up
- from some place of reference.
- NEXT_VARIANT is the next element in the chain.
-
- A long time ago (Jul 88; GDB 2.5) Tiemann said that
- MAIN_VARIANT/NEXT_VARIANT may no longer be necessary and that he
- might eliminate it. I don't know whether this is still true (or
- ever was). */
- struct type *next_variant;
-
B_TYPE *virtual_field_bits; /* if base class is virtual */
B_TYPE *private_field_bits;
B_TYPE *protected_field_bits;
@@ -676,8 +661,6 @@ int current_source_line;
#define TYPE_POINTER_TYPE(thistype) (thistype)->pointer_type
#define TYPE_REFERENCE_TYPE(thistype) (thistype)->reference_type
#define TYPE_FUNCTION_TYPE(thistype) (thistype)->function_type
-#define TYPE_MAIN_VARIANT(thistype) (thistype)->target_type
-#define TYPE_NEXT_VARIANT(thistype) (TYPE_CPLUS_SPECIFIC (thistype))->next_variant
#define TYPE_LENGTH(thistype) (thistype)->length
#define TYPE_FLAGS(thistype) (thistype)->flags
#define TYPE_UNSIGNED(thistype) ((thistype)->flags & TYPE_FLAG_UNSIGNED)
@@ -812,7 +795,6 @@ extern int contained_in();
extern struct type *lookup_template_type ();
extern struct type *lookup_reference_type ();
extern struct type *lookup_member_type ();
-extern struct type *lookup_method_type ();
extern void smash_to_method_type ();
void smash_to_member_type (
#ifdef __STDC__