summaryrefslogtreecommitdiff
path: root/gcc/cp/search.c
diff options
context:
space:
mode:
authorMark Mitchell <mark@codesourcery.com>1999-07-23 01:01:16 +0000
committerMark Mitchell <mmitchel@gcc.gnu.org>1999-07-23 01:01:16 +0000
commit27b8d0cd535f663df34c8264ee48e3034a663c38 (patch)
tree7ab5ead2d1ccd9e6e12bd7904bc7fecc99b3fe43 /gcc/cp/search.c
parentac1d97ceb67feea6e4e37e14a8bc86c5851574c3 (diff)
downloadgcc-27b8d0cd535f663df34c8264ee48e3034a663c38.tar.gz
call.c (NEED_TEMPORARY_P): New macro.
* call.c (NEED_TEMPORARY_P): New macro. (standard_conversion): Set it, for derived-to-base conversions. (reference_related_p): New function. (reference_compatible_p): Likewise. (convert_class_to_reference): Likewise. (direct_reference_binding): Likewise. (reference_binding): Rework for standards-compliance. (convert_like): Adjust accordingly. (maybe_handle_ref_bind): Simplify; the right conversion sequences are now built up in reference_binding. (initialize_reference): New function. * cp-tree.h (ICS_USER_FLAG): Document. (ICS_THIS_FLAG): Likewise. (ICS_BAD_FLAG): Likewise. (NEED_TEMPORARY_P): Likewise. (cp_lvalue_kind): New type. (real_lvalue_p): Return it. * error.c (dump_expr): Provide more accurate representation for AGGR_INIT_EXPRs. * init.c (expand_default_init): Do not try to perform implicit conversions for a brace-enclosed initializer. * search.c (lookup_conversions): Document. * tree.c (lvalue_p_1): Return a cp_lvalue_kind. Calculate appropriately. (real_lvalue_p): Adjust accordingly. (lvalue_p): Likewise. (build_cplus_new): Don't allow the creation of an abstract class. * typeck.c (convert_for_initialization): Use initialize_reference. From-SVN: r28221
Diffstat (limited to 'gcc/cp/search.c')
-rw-r--r--gcc/cp/search.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/cp/search.c b/gcc/cp/search.c
index f1be6db5fb5..6cde6905c12 100644
--- a/gcc/cp/search.c
+++ b/gcc/cp/search.c
@@ -3150,6 +3150,12 @@ add_conversions (binfo, data)
return NULL_TREE;
}
+/* Return a TREE_LIST containing all the non-hidden user-defined
+ conversion functions for TYPE (and its base-classes). The
+ TREE_VALUE of each node is a FUNCTION_DECL or an OVERLOAD
+ containing the conversion functions. The TREE_PURPOSE is the BINFO
+ from which the conversion functions in this node were selected. */
+
tree
lookup_conversions (type)
tree type;