diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 39b7ac2ea10..a0488b79554 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +Sat Sep 20 15:31:00 1997 Jason Merrill + + * call.c (build_over_call): Do require_complete_type before + build_cplus_new. + Thu Sep 18 16:47:52 1997 Jason Merrill * search.c (lookup_field): Call complete_type in all cases. diff --git a/gcc/cp/call.c b/gcc/cp/call.c index 48b5abf4743..a080c045ef2 100644 --- a/gcc/cp/call.c +++ b/gcc/cp/call.c @@ -5425,9 +5425,10 @@ build_over_call (fn, convs, args, flags) fn = build_call (fn, TREE_TYPE (TREE_TYPE (TREE_TYPE (fn))), converted_args); if (TREE_TYPE (fn) == void_type_node) return fn; + fn = require_complete_type (fn); if (IS_AGGR_TYPE (TREE_TYPE (fn))) fn = build_cplus_new (TREE_TYPE (fn), fn); - return convert_from_reference (require_complete_type (fn)); + return convert_from_reference (fn); } static tree