aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp
diff options
context:
space:
mode:
authorJason Merrill <jason@yorick.cygnus.com>1999-03-10 00:57:44 +0000
committerJason Merrill <jason@gcc.gnu.org>1999-03-09 19:57:44 -0500
commit47898a19f0e80dd31bc9386a346ac7780bfe55a7 (patch)
treec54df60bc5e63d6cfd0256aa9c773e069931fc37 /gcc/cp
parenta5d753c030deada290322846524e369394cfab3a (diff)
downloadgcc-47898a19f0e80dd31bc9386a346ac7780bfe55a7.zip
gcc-47898a19f0e80dd31bc9386a346ac7780bfe55a7.tar.gz
gcc-47898a19f0e80dd31bc9386a346ac7780bfe55a7.tar.bz2
* call.c (add_builtin_candidates): Handle overloaded conversion ops.
From-SVN: r25663
Diffstat (limited to 'gcc/cp')
-rw-r--r--gcc/cp/ChangeLog4
-rw-r--r--gcc/cp/call.c4
2 files changed, 6 insertions, 2 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 7dcdfea..93b5caf 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,7 @@
+1999-03-09 Jason Merrill <jason@yorick.cygnus.com>
+
+ * call.c (add_builtin_candidates): Handle overloaded conversion ops.
+
1999-03-09 Mark Mitchell <mark@markmitchell.com>
* cp-tree.h (flag_access_control): Declare.
diff --git a/gcc/cp/call.c b/gcc/cp/call.c
index 1376303..4e2e253 100644
--- a/gcc/cp/call.c
+++ b/gcc/cp/call.c
@@ -1868,7 +1868,7 @@ add_builtin_candidates (candidates, code, code2, fnname, args, flags)
;
else if (IS_AGGR_TYPE (argtypes[i]))
{
- tree convs = lookup_conversions (argtypes[i]);
+ tree convs;
if (i == 0 && code == MODIFY_EXPR && code2 == NOP_EXPR)
return candidates;
@@ -1890,7 +1890,7 @@ add_builtin_candidates (candidates, code, code2, fnname, args, flags)
for (; convs; convs = TREE_CHAIN (convs))
{
- type = TREE_TYPE (TREE_TYPE (TREE_VALUE (convs)));
+ type = TREE_TYPE (TREE_TYPE (OVL_CURRENT (TREE_VALUE (convs))));
if (i == 0 && ref1
&& (TREE_CODE (type) != REFERENCE_TYPE