Commit 238109cd by Jason Merrill

search.c (lookup_field): Call complete_type in all cases.

	* search.c (lookup_field): Call complete_type in all cases.

Fixes CLN problems.

	* decl.c (finish_function): Just warn about flowing off the end.

From-SVN: r15555
parent 6020d360
Thu Sep 18 16:47:52 1997 Jason Merrill <jason@yorick.cygnus.com>
* search.c (lookup_field): Call complete_type in all cases.
* decl.c (finish_function): Just warn about flowing off the end.
Wed Sep 17 10:31:25 1997 Jason Merrill <jason@yorick.cygnus.com> Wed Sep 17 10:31:25 1997 Jason Merrill <jason@yorick.cygnus.com>
* decl.c (grokparms): Don't bash a permanent list node if we're * decl.c (grokparms): Don't bash a permanent list node if we're
...@@ -306,11 +312,12 @@ Tue Sep 2 10:27:08 1997 Richard Henderson <rth@cygnus.com> ...@@ -306,11 +312,12 @@ Tue Sep 2 10:27:08 1997 Richard Henderson <rth@cygnus.com>
* typeck.c (build_ptrmemfunc1): Clean up ptr->int cast warnings. * typeck.c (build_ptrmemfunc1): Clean up ptr->int cast warnings.
Mon Sep 1 13:19:04 1997 Jason Merrill <jason@yorick.cygnus.com> Mon Sep 1 13:19:04 1997 Eugene Mamchits <eugin@ips.ras.ru>
* call.c (add_builtin_candidate): Add missing TREE_TYPE. * call.c (add_builtin_candidate): Add missing TREE_TYPE.
(compare_ics): Likewise. (compare_ics): Likewise.
From someone whose name I've lost (sorry).
Mon Sep 1 13:19:04 1997 Jason Merrill <jason@yorick.cygnus.com>
* call.c (joust): Warn about choosing one conversion op over * call.c (joust): Warn about choosing one conversion op over
another because of 'this' argument when the other return type is another because of 'this' argument when the other return type is
......
...@@ -12264,7 +12264,7 @@ finish_function (lineno, call_poplevel, nested) ...@@ -12264,7 +12264,7 @@ finish_function (lineno, call_poplevel, nested)
{ {
/* If this function returns non-void and control can drop through, /* If this function returns non-void and control can drop through,
complain. */ complain. */
cp_pedwarn ("control reaches end of non-void function `%D'", fndecl); cp_warning ("control reaches end of non-void function `%D'", fndecl);
} }
/* With just -W, complain only if function returns both with /* With just -W, complain only if function returns both with
and without a value. */ and without a value. */
......
...@@ -1206,12 +1206,15 @@ lookup_field (xbasetype, name, protect, want_type) ...@@ -1206,12 +1206,15 @@ lookup_field (xbasetype, name, protect, want_type)
} }
else if (IS_AGGR_TYPE_CODE (TREE_CODE (xbasetype))) else if (IS_AGGR_TYPE_CODE (TREE_CODE (xbasetype)))
{ {
type = complete_type (xbasetype); type = xbasetype;
basetype_path = TYPE_BINFO (type); basetype_path = TYPE_BINFO (type);
BINFO_VIA_PUBLIC (basetype_path) = 1; BINFO_VIA_PUBLIC (basetype_path) = 1;
BINFO_INHERITANCE_CHAIN (basetype_path) = NULL_TREE; BINFO_INHERITANCE_CHAIN (basetype_path) = NULL_TREE;
} }
else my_friendly_abort (97); else
my_friendly_abort (97);
complete_type (type);
if (CLASSTYPE_MTABLE_ENTRY (type)) if (CLASSTYPE_MTABLE_ENTRY (type))
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment