diff options
author | Nathan Sidwell <nathan@codesourcery.com> | 2001-07-31 16:12:04 +0000 |
---|---|---|
committer | Nathan Sidwell <nathan@gcc.gnu.org> | 2001-07-31 16:12:04 +0000 |
commit | befe7c61462d147b408df88fe8a6f8e14e3ad877 (patch) | |
tree | 3547b7352d8bd1e1b80a28e48e5f9c9608a18e8e /gcc/cp/cp-tree.h | |
parent | dc56ceb766a005fadcd9287e7e72be947936f01a (diff) | |
download | gcc-befe7c61462d147b408df88fe8a6f8e14e3ad877.zip gcc-befe7c61462d147b408df88fe8a6f8e14e3ad877.tar.gz gcc-befe7c61462d147b408df88fe8a6f8e14e3ad877.tar.bz2 |
The 3.0 ABI no longer has vbase pointer fields.
cp:
The 3.0 ABI no longer has vbase pointer fields.
* cp-tree.h (VBASE_NAME, VBASE_NAME_FORMAT, VBASE_NAME_P,
FORMAT_VBASE_NAME): Remove.
* method.c (do_build_copy_constructor): Adjust.
(do_build_assign_ref): Adjust.
* search.c (lookup_field_r): Adjust.
* typeck.c (build_component_ref): Adjust.
The 3.0 ABI always has a vtable pointer at the start of every
polymorphic class.
* rtti.c (build_headof_sub): Remove.
(build_headof): Adjust.
(get_tinfo_decl_dynamic): No need to check flag_rtti
here. Adjust.
(create_real_tinfo_var): Explain why we need a hidden name.
From-SVN: r44515
Diffstat (limited to 'gcc/cp/cp-tree.h')
-rw-r--r-- | gcc/cp/cp-tree.h | 21 |
1 files changed, 0 insertions, 21 deletions
diff --git a/gcc/cp/cp-tree.h b/gcc/cp/cp-tree.h index d5f10e4..c485c43 100644 --- a/gcc/cp/cp-tree.h +++ b/gcc/cp/cp-tree.h @@ -3140,8 +3140,6 @@ extern varray_type local_classes; #define VFIELD_BASE "$vf" #define VFIELD_NAME "_vptr$" #define VFIELD_NAME_FORMAT "_vptr$%s" -#define VBASE_NAME "_vb$" -#define VBASE_NAME_FORMAT "_vb$%s" #define STATIC_NAME_FORMAT "_%s$%s" #define ANON_AGGRNAME_FORMAT "$_%d" @@ -3162,8 +3160,6 @@ extern varray_type local_classes; #define VFIELD_BASE ".vf" #define VFIELD_NAME "_vptr." #define VFIELD_NAME_FORMAT "_vptr.%s" -#define VBASE_NAME "_vb." -#define VBASE_NAME_FORMAT "_vb.%s" #define STATIC_NAME_FORMAT "_%s.%s" #define ANON_AGGRNAME_FORMAT "._%d" @@ -3197,11 +3193,6 @@ extern varray_type local_classes; (!strncmp (IDENTIFIER_POINTER (ID_NODE), VFIELD_NAME, \ sizeof (VFIELD_NAME) - 1)) #define VFIELD_NAME_FORMAT "_vptr_%s" -#define VBASE_NAME "__vb_" -#define VBASE_NAME_P(ID_NODE) \ - (!strncmp (IDENTIFIER_POINTER (ID_NODE), VBASE_NAME, \ - sizeof (VBASE_NAME) - 1)) -#define VBASE_NAME_FORMAT "__vb_%s" #define STATIC_NAME_FORMAT "__static_%s_%s" #define ANON_AGGRNAME_PREFIX "__anon_" @@ -3244,10 +3235,6 @@ extern varray_type local_classes; && IDENTIFIER_POINTER (ID_NODE)[2] == 't' \ && IDENTIFIER_POINTER (ID_NODE)[3] == JOINER) -#define VBASE_NAME_P(ID_NODE) (IDENTIFIER_POINTER (ID_NODE)[1] == 'v' \ - && IDENTIFIER_POINTER (ID_NODE)[2] == 'b' \ - && IDENTIFIER_POINTER (ID_NODE)[3] == JOINER) - #define TEMP_NAME_P(ID_NODE) (!strncmp (IDENTIFIER_POINTER (ID_NODE), AUTO_TEMP_NAME, sizeof (AUTO_TEMP_NAME)-1)) #define VFIELD_NAME_P(ID_NODE) (!strncmp (IDENTIFIER_POINTER (ID_NODE), VFIELD_NAME, sizeof(VFIELD_NAME)-1)) @@ -3261,14 +3248,6 @@ extern varray_type local_classes; && IDENTIFIER_POINTER (ID_NODE)[1] <= '9') #endif /* !defined(NO_DOLLAR_IN_LABEL) || !defined(NO_DOT_IN_LABEL) */ -/* Store the vbase pointer field name for type TYPE into pointer BUF. */ -#define FORMAT_VBASE_NAME(BUF,TYPE) do { \ - char *wbuf = (char *) alloca (TYPE_ASSEMBLER_NAME_LENGTH (TYPE) \ - + sizeof (VBASE_NAME) + 1); \ - sprintf (wbuf, VBASE_NAME_FORMAT, TYPE_ASSEMBLER_NAME_STRING (TYPE)); \ - (BUF) = wbuf; \ -} while (0) - /* Returns non-zero iff NODE is a declaration for the global function `main'. */ #define DECL_MAIN_P(NODE) \ |