aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Mitchell <mmitchell@usa.net>1998-02-11 22:47:30 +0000
committerMark Mitchell <mmitchell@gcc.gnu.org>1998-02-11 22:47:30 +0000
commit06ab59dfa0a756ffa178714e54c91835aa484f0c (patch)
tree14f8e3fb29ce4d25f41901d540f98927afbec181
parentcc1e5b9ab37880e07285b4a23add86954f1cf0b3 (diff)
downloadgcc-06ab59dfa0a756ffa178714e54c91835aa484f0c.zip
gcc-06ab59dfa0a756ffa178714e54c91835aa484f0c.tar.gz
gcc-06ab59dfa0a756ffa178714e54c91835aa484f0c.tar.bz2
tree.c (is_overloaded_fn): Use really_overloaded_fn.
* tree.c (is_overloaded_fn): Use really_overloaded_fn. (really_overloaded_fn): Move check here from is_overloaded_fn. (get_first_fn): Use really_overloaded_fn and is_overloaded_fn. From-SVN: r17863
-rw-r--r--gcc/cp/ChangeLog6
-rw-r--r--gcc/cp/tree.c32
2 files changed, 18 insertions, 20 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index e944c6e..8534f1a 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,9 @@
+Wed Feb 11 16:42:04 1998 Mark Mitchell <mmitchell@usa.net>
+
+ * tree.c (is_overloaded_fn): Use really_overloaded_fn.
+ (really_overloaded_fn): Move check here from is_overloaded_fn.
+ (get_first_fn): Use really_overloaded_fn and is_overloaded_fn.
+
Mon Feb 9 22:23:31 1998 Mark Mitchell <mmitchell@usa.net>
* cp-tree.h (push_template_decl): Return the decl passed in, or an
diff --git a/gcc/cp/tree.c b/gcc/cp/tree.c
index 6ad5740..1bd60f1 100644
--- a/gcc/cp/tree.c
+++ b/gcc/cp/tree.c
@@ -1299,39 +1299,31 @@ int
is_overloaded_fn (x)
tree x;
{
- if (TREE_CODE (x) == FUNCTION_DECL
- || TREE_CODE (x) == TEMPLATE_ID_EXPR
- || DECL_FUNCTION_TEMPLATE_P (x))
- return 1;
-
- if (TREE_CODE (x) == TREE_LIST
- && (TREE_CODE (TREE_VALUE (x)) == FUNCTION_DECL
- || DECL_FUNCTION_TEMPLATE_P (TREE_VALUE (x))))
- return 1;
-
- return 0;
+ return (TREE_CODE (x) == FUNCTION_DECL
+ || TREE_CODE (x) == TEMPLATE_ID_EXPR
+ || DECL_FUNCTION_TEMPLATE_P (x)
+ || really_overloaded_fn (x));
}
int
really_overloaded_fn (x)
tree x;
{
- return TREE_CODE (x) != FUNCTION_DECL
- && is_overloaded_fn (x);
+ return (TREE_CODE (x) == TREE_LIST
+ && (TREE_CODE (TREE_VALUE (x)) == FUNCTION_DECL
+ || DECL_FUNCTION_TEMPLATE_P (TREE_VALUE (x))));
}
tree
get_first_fn (from)
tree from;
{
- if (TREE_CODE (from) == FUNCTION_DECL
- || TREE_CODE (from) == TEMPLATE_ID_EXPR
- || DECL_FUNCTION_TEMPLATE_P (from))
- return from;
+ my_friendly_assert (is_overloaded_fn (from), 9);
- my_friendly_assert (TREE_CODE (from) == TREE_LIST, 9);
-
- return TREE_VALUE (from);
+ if (really_overloaded_fn (from))
+ return TREE_VALUE (from);
+ else
+ return from;
}
int