summaryrefslogtreecommitdiff
path: root/gcc/cp/rtti.c
diff options
context:
space:
mode:
authornathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4>2000-03-15 10:40:27 +0000
committernathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4>2000-03-15 10:40:27 +0000
commit378e5add85018d86d89ac85b002098b687c5a6be (patch)
tree46d0cf1f92d537103d11fb0abe8f391478c63425 /gcc/cp/rtti.c
parent991ab8f34a96ef67f080dec099d1423fdfedd08a (diff)
downloadgcc-378e5add85018d86d89ac85b002098b687c5a6be.tar.gz
* cp-tree.h (CPTI_REF_DESC_TYPE, ref_desc_type_node): Remove.
* decl.c (ref_desc_type_node): Undocument. * rtti.c (ptr_ref_initializer): Rename to ... (ptr_initializer): ... here. Adjust comments. (ptmd_initializer): Fix comment thinko. (synthesize_tinfo_var): Remove REFERENCE_TYPE case. (create_tinfo_types): Remove ref_desc_type_node init. * tinfo2.cc (__reference_type_info): Remove. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@32558 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cp/rtti.c')
-rw-r--r--gcc/cp/rtti.c23
1 files changed, 7 insertions, 16 deletions
diff --git a/gcc/cp/rtti.c b/gcc/cp/rtti.c
index 0e72864f028..6774151d267 100644
--- a/gcc/cp/rtti.c
+++ b/gcc/cp/rtti.c
@@ -64,7 +64,7 @@ static tree tinfo_from_decl PARAMS((tree));
static int qualifier_flags PARAMS((tree));
static tree tinfo_base_init PARAMS((tree, tree));
static tree generic_initializer PARAMS((tree, tree));
-static tree ptr_ref_initializer PARAMS((tree, tree));
+static tree ptr_initializer PARAMS((tree, tree));
static tree ptmd_initializer PARAMS((tree, tree));
static int class_hint_flags PARAMS((tree));
static tree class_initializer PARAMS((tree, tree, tree));
@@ -1298,12 +1298,12 @@ generic_initializer (desc, target)
return init;
}
-/* Return the CONSTRUCTOR expr for a type_info of pointer or reference TYPE.
+/* Return the CONSTRUCTOR expr for a type_info of pointer TYPE.
DESC provides information about the particular type_info derivation,
which adds target type and qualifier flags members to the type_info base. */
static tree
-ptr_ref_initializer (desc, target)
+ptr_initializer (desc, target)
tree desc;
tree target;
{
@@ -1322,7 +1322,7 @@ ptr_ref_initializer (desc, target)
return init;
}
-/* Return the CONSTRUCTOR expr for a type_info of pointer or reference TYPE.
+/* Return the CONSTRUCTOR expr for a type_info of pointer to member data TYPE.
DESC provides information about the particular type_info derivation,
which adds target type and qualifier flags members to the type_info base. */
@@ -1427,13 +1427,9 @@ synthesize_tinfo_var (target_type, real_name)
/* These are in the runtime. */
return NULL_TREE;
var_type = ptr_desc_type_node;
- var_init = ptr_ref_initializer (var_type, target_type);
+ var_init = ptr_initializer (var_type, target_type);
}
break;
- case REFERENCE_TYPE:
- var_type = ref_desc_type_node;
- var_init = ptr_ref_initializer (var_type, target_type);
- break;
case ENUMERAL_TYPE:
var_type = enum_desc_type_node;
var_init = generic_initializer (var_type, target_type);
@@ -1704,18 +1700,13 @@ create_tinfo_types ()
("__fundamental_type_info", 0,
NULL);
- /* Pointer and reference type_info. These two fields, qualification mask
- and pointer to the pointed to (referenced) type. */
+ /* Pointer type_info. Adds two fields, qualification mask
+ and pointer to the pointed to type. */
ptr_desc_type_node = create_pseudo_type_info
("__pointer_type_info", 0,
build_lang_decl (FIELD_DECL, NULL_TREE, integer_type_node),
build_lang_decl (FIELD_DECL, NULL_TREE, ptr_type_info),
NULL);
- ref_desc_type_node = create_pseudo_type_info
- ("__reference_type_info", 0,
- build_lang_decl (FIELD_DECL, NULL_TREE, integer_type_node),
- build_lang_decl (FIELD_DECL, NULL_TREE, ptr_type_info),
- NULL);
/* Array, function and enum type_info. No additional fields. */
ary_desc_type_node = create_pseudo_type_info