summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4>2000-07-18 10:51:46 +0000
committernathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4>2000-07-18 10:51:46 +0000
commit5fc46eb513613682066e2b4f5d3339ab178edb53 (patch)
tree5deeac2d02bcf3d621dad304deb63176e3842216
parent57679d39e268ff50988684edc4a8b8ee3e0f9785 (diff)
downloadgcc-5fc46eb513613682066e2b4f5d3339ab178edb53.tar.gz
* typeck.c (comp_target_parms): Remove obsolete parameter.
(comp_target_types): Adjust. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@35118 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/cp/ChangeLog5
-rw-r--r--gcc/cp/typeck.c23
2 files changed, 10 insertions, 18 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index dc9754b8015..4aa940379a7 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,8 @@
+2000-07-18 Nathan Sidwell <nathan@codesourcery.com>
+
+ * typeck.c (comp_target_parms): Remove obsolete parameter.
+ (comp_target_types): Adjust.
+
2000-07-17 Jason Merrill <jason@redhat.com>
* typeck.c (mark_addressable): Never set TREE_USED.
diff --git a/gcc/cp/typeck.c b/gcc/cp/typeck.c
index c85e3d16f96..16a50c37bbf 100644
--- a/gcc/cp/typeck.c
+++ b/gcc/cp/typeck.c
@@ -46,7 +46,7 @@ static tree convert_for_assignment PARAMS ((tree, tree, const char *, tree,
int));
static tree pointer_int_sum PARAMS ((enum tree_code, tree, tree));
static tree rationalize_conditional_expr PARAMS ((enum tree_code, tree));
-static int comp_target_parms PARAMS ((tree, tree, int));
+static int comp_target_parms PARAMS ((tree, tree));
static int comp_ptr_ttypes_real PARAMS ((tree, tree, int));
static int comp_ptr_ttypes_const PARAMS ((tree, tree));
static int comp_ptr_ttypes_reinterpret PARAMS ((tree, tree));
@@ -1251,7 +1251,7 @@ comp_target_types (ttl, ttr, nptrs)
argsr = TREE_CHAIN (argsr);
}
- switch (comp_target_parms (argsl, argsr, 1))
+ switch (comp_target_parms (argsl, argsr))
{
case 0:
return 0;
@@ -1472,9 +1472,8 @@ compparms (parms1, parms2)
(jason 17 Apr 1997) */
static int
-comp_target_parms (parms1, parms2, strict)
+comp_target_parms (parms1, parms2)
tree parms1, parms2;
- int strict;
{
register tree t1 = parms1, t2 = parms2;
int warn_contravariance = 0;
@@ -1504,13 +1503,7 @@ comp_target_parms (parms1, parms2, strict)
/* If one parmlist is shorter than the other,
they fail to match, unless STRICT is <= 0. */
if (t1 == 0 || t2 == 0)
- {
- if (strict > 0)
- return 0;
- if (strict < 0)
- return 1 + warn_contravariance;
- return ((t1 && TREE_PURPOSE (t1)) + warn_contravariance);
- }
+ return 0;
p1 = TREE_VALUE (t1);
p2 = TREE_VALUE (t2);
if (same_type_p (p1, p2))
@@ -1523,11 +1516,6 @@ comp_target_parms (parms1, parms2, strict)
|| (TREE_CODE (p1) == REFERENCE_TYPE
&& TREE_CODE (p2) == REFERENCE_TYPE))
{
- if (strict <= 0
- && (TYPE_MAIN_VARIANT (TREE_TYPE (p1))
- == TYPE_MAIN_VARIANT (TREE_TYPE (p2))))
- continue;
-
/* The following is wrong for contravariance,
but many programs depend on it. */
if (TREE_TYPE (p1) == void_type_node)
@@ -1550,8 +1538,7 @@ comp_target_parms (parms1, parms2, strict)
warn_contravariance = 1;
continue;
}
- if (strict != 0)
- return 0;
+ return 0;
}
}
return warn_contravariance ? -1 : 1;