diff options
| -rw-r--r-- | gcc/cp/ChangeLog | 4 | ||||
| -rw-r--r-- | gcc/cp/call.c | 2 |
2 files changed, 5 insertions, 1 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index be5b930..5d1c6a3 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,7 @@ +1999-05-06 Nathan Sidwell <nathan@acm.org> + + * call.c (build_new_method_call): Use TYPE_MAIN_VARIANT of class. + 1999-05-05 Mark Mitchell <mark@codesourcery.com> * decl2.c (start_objects): Don't let static constructors and diff --git a/gcc/cp/call.c b/gcc/cp/call.c index 7a20421..1dccabcf 100644 --- a/gcc/cp/call.c +++ b/gcc/cp/call.c @@ -3559,7 +3559,7 @@ build_new_method_call (instance, name, args, basetype_path, flags) instance = resolve_offset_ref (instance); if (TREE_CODE (TREE_TYPE (instance)) == REFERENCE_TYPE) instance = convert_from_reference (instance); - basetype = TREE_TYPE (instance); + basetype = TYPE_MAIN_VARIANT (TREE_TYPE (instance)); /* XXX this should be handled before we get here. */ if (! IS_AGGR_TYPE (basetype) |
