From edef8288ec6bbbe0cbbccd935a0ec1f5c0864255 Mon Sep 17 00:00:00 2001 From: Jason Merrill Date: Mon, 29 Mar 1999 01:09:28 +0000 Subject: [PATCH] * pt.c (fn_type_unification): Ignore 'this' parm from conversion ops. From-SVN: r26050 --- gcc/cp/ChangeLog | 4 ++++ gcc/cp/pt.c | 7 ++++--- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 96970ed736e..beee754bb3b 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,7 @@ +1999-03-28 Jason Merrill + + * pt.c (fn_type_unification): Ignore 'this' parm from conversion ops. + 1999-03-27 Mark Mitchell * cp-tree.h (add_friend): Declare. diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c index 8855efa311e..04ca1b3fc35 100644 --- a/gcc/cp/pt.c +++ b/gcc/cp/pt.c @@ -7317,10 +7317,11 @@ fn_type_unification (fn, explicit_targs, targs, args, return_type, if (DECL_CONV_FN_P (fn)) { /* This is a template conversion operator. Use the return types - as well as the argument types. */ + as well as the argument types. We use it instead of 'this', since + we could be comparing conversions from different classes. */ parms = scratch_tree_cons (NULL_TREE, TREE_TYPE (fntype), - parms); - args = scratch_tree_cons (NULL_TREE, return_type, args); + TREE_CHAIN (parms)); + args = scratch_tree_cons (NULL_TREE, return_type, TREE_CHAIN (args)); } /* We allow incomplete unification without an error message here -- 2.30.2