aboutsummaryrefslogtreecommitdiff
path: root/gdb/symtab.h
diff options
context:
space:
mode:
authorPer Bothner <per@bothner.com>1991-10-26 02:05:14 +0000
committerPer Bothner <per@bothner.com>1991-10-26 02:05:14 +0000
commitbcccec8c8d084669c7469b8578448fa18ddbe2f3 (patch)
treeb9d4dc16487be188271c1a72694724d15fe0f25d /gdb/symtab.h
parent5ab580ccf8a55393e038e4c9e90cd57b43e5f02c (diff)
downloadgdb-bcccec8c8d084669c7469b8578448fa18ddbe2f3.zip
gdb-bcccec8c8d084669c7469b8578448fa18ddbe2f3.tar.gz
gdb-bcccec8c8d084669c7469b8578448fa18ddbe2f3.tar.bz2
Various fixes to improve g++ debugging. See ChangeLog.
Diffstat (limited to 'gdb/symtab.h')
-rw-r--r--gdb/symtab.h12
1 files changed, 7 insertions, 5 deletions
diff --git a/gdb/symtab.h b/gdb/symtab.h
index 1f8ff41..d220a83 100644
--- a/gdb/symtab.h
+++ b/gdb/symtab.h
@@ -247,10 +247,12 @@ struct type
/* For virtual functions. */
/* First baseclass that defines this virtual function. */
struct type *fcontext;
+ unsigned int is_const : 1;
+ unsigned int is_volatile : 1;
/* Index into that baseclass's virtual function table,
- minus 1; else if static: VOFFSET_STATIC; else: 0. */
- int voffset;
-# define VOFFSET_STATIC (-1)
+ minus 2; else if static: VOFFSET_STATIC; else: 0. */
+ unsigned long voffset : 30;
+# define VOFFSET_STATIC 1
} *fn_fields;
B_TYPE *private_fn_field_bits;
@@ -729,9 +731,9 @@ int current_source_line;
#define TYPE_FN_FIELD_TYPE(thistype, n) (thistype)[n].type
#define TYPE_FN_FIELD_ARGS(thistype, n) TYPE_ARG_TYPES ((thistype)[n].type)
#define TYPE_FN_FIELD_PHYSNAME(thistype, n) (thistype)[n].physname
-#define TYPE_FN_FIELD_VIRTUAL_P(thistype, n) ((thistype)[n].voffset > 0)
+#define TYPE_FN_FIELD_VIRTUAL_P(thistype, n) ((thistype)[n].voffset > 1)
#define TYPE_FN_FIELD_STATIC_P(thistype, n) ((thistype)[n].voffset == VOFFSET_STATIC)
-#define TYPE_FN_FIELD_VOFFSET(thistype, n) ((thistype)[n].voffset-1)
+#define TYPE_FN_FIELD_VOFFSET(thistype, n) ((thistype)[n].voffset-2)
#define TYPE_FN_FIELD_FCONTEXT(thistype, n) ((thistype)[n].fcontext)
#define TYPE_FN_PRIVATE_BITS(thistype) (thistype).private_fn_field_bits