aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Jambor <mjambor@suse.cz>2011-04-26 17:49:22 +0200
committerMartin Jambor <jamborm@gcc.gnu.org>2011-04-26 17:49:22 +0200
commit86262bb186922557dba15c5fa21785837f4006cd (patch)
tree218d95c71f1fa0c5326665282d638411daab546d
parent9c7bd91af7c94d7628b2fa3f8be2e0098f4a2692 (diff)
downloadgcc-86262bb186922557dba15c5fa21785837f4006cd.zip
gcc-86262bb186922557dba15c5fa21785837f4006cd.tar.gz
gcc-86262bb186922557dba15c5fa21785837f4006cd.tar.bz2
class.c (cp_fold_obj_type_ref): Remove.
2011-04-26 Martin Jambor <mjambor@suse.cz> * class.c (cp_fold_obj_type_ref): Remove. * cp-tree.h (cp_fold_obj_type_ref): Remove declaration. From-SVN: r172977
-rw-r--r--gcc/cp/ChangeLog5
-rw-r--r--gcc/cp/class.c28
-rw-r--r--gcc/cp/cp-tree.h1
3 files changed, 5 insertions, 29 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index c0ea9d3..cf477a8 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,8 @@
+2011-04-26 Martin Jambor <mjambor@suse.cz>
+
+ * class.c (cp_fold_obj_type_ref): Remove.
+ * cp-tree.h (cp_fold_obj_type_ref): Remove declaration.
+
2011-04-25 Paolo Carlini <paolo.carlini@oracle.com>
* cp-tree.def: Add a new UNDERLYING_TYPE tree code.
diff --git a/gcc/cp/class.c b/gcc/cp/class.c
index 5578eb2..fa5e00f 100644
--- a/gcc/cp/class.c
+++ b/gcc/cp/class.c
@@ -8377,32 +8377,4 @@ build_rtti_vtbl_entries (tree binfo, vtbl_init_data* vid)
CONSTRUCTOR_APPEND_ELT (vid->inits, NULL_TREE, init);
}
-/* Fold a OBJ_TYPE_REF expression to the address of a function.
- KNOWN_TYPE carries the true type of OBJ_TYPE_REF_OBJECT(REF). */
-
-tree
-cp_fold_obj_type_ref (tree ref, tree known_type)
-{
- HOST_WIDE_INT index = tree_low_cst (OBJ_TYPE_REF_TOKEN (ref), 1);
- HOST_WIDE_INT i = 0;
- tree v = BINFO_VIRTUALS (TYPE_BINFO (known_type));
- tree fndecl;
-
- while (i != index)
- {
- i += (TARGET_VTABLE_USES_DESCRIPTORS
- ? TARGET_VTABLE_USES_DESCRIPTORS : 1);
- v = TREE_CHAIN (v);
- }
-
- fndecl = BV_FN (v);
-
-#ifdef ENABLE_CHECKING
- gcc_assert (tree_int_cst_equal (OBJ_TYPE_REF_TOKEN (ref),
- DECL_VINDEX (fndecl)));
-#endif
-
- return build_address (fndecl);
-}
-
#include "gt-cp-class.h"
diff --git a/gcc/cp/cp-tree.h b/gcc/cp/cp-tree.h
index 1c7a4e6..cb04b24 100644
--- a/gcc/cp/cp-tree.h
+++ b/gcc/cp/cp-tree.h
@@ -4718,7 +4718,6 @@ extern void note_name_declared_in_class (tree, tree);
extern tree get_vtbl_decl_for_binfo (tree);
extern void debug_class (tree);
extern void debug_thunks (tree);
-extern tree cp_fold_obj_type_ref (tree, tree);
extern void set_linkage_according_to_type (tree, tree);
extern void determine_key_method (tree);
extern void check_for_override (tree, tree);