aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason Merrill <jason@gcc.gnu.org>1997-09-18 19:52:48 -0400
committerJason Merrill <jason@gcc.gnu.org>1997-09-18 19:52:48 -0400
commit238109cd665cde1e1263eec736f2930bc0654ffb (patch)
treedbd2d811f0232fd2793a995ed52d1200779efbce
parent6020d3605c14364b52b635a93ef2b93ac39108ba (diff)
downloadgcc-238109cd665cde1e1263eec736f2930bc0654ffb.zip
gcc-238109cd665cde1e1263eec736f2930bc0654ffb.tar.gz
gcc-238109cd665cde1e1263eec736f2930bc0654ffb.tar.bz2
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
-rw-r--r--gcc/cp/ChangeLog11
-rw-r--r--gcc/cp/decl.c2
-rw-r--r--gcc/cp/search.c7
3 files changed, 15 insertions, 5 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 7e1460f..39b7ac2 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,9 @@
+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>
* 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>
* 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.
(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
another because of 'this' argument when the other return type is
diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c
index 1b15358..261ec65 100644
--- a/gcc/cp/decl.c
+++ b/gcc/cp/decl.c
@@ -12264,7 +12264,7 @@ finish_function (lineno, call_poplevel, nested)
{
/* If this function returns non-void and control can drop through,
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
and without a value. */
diff --git a/gcc/cp/search.c b/gcc/cp/search.c
index 078793c..c8e0806 100644
--- a/gcc/cp/search.c
+++ b/gcc/cp/search.c
@@ -1206,12 +1206,15 @@ lookup_field (xbasetype, name, protect, want_type)
}
else if (IS_AGGR_TYPE_CODE (TREE_CODE (xbasetype)))
{
- type = complete_type (xbasetype);
+ type = xbasetype;
basetype_path = TYPE_BINFO (type);
BINFO_VIA_PUBLIC (basetype_path) = 1;
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))
{