summaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>1997-09-18 23:52:48 +0000
committerjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>1997-09-18 23:52:48 +0000
commit487abf669e1b2fb227d698c360f3997c5ec3f232 (patch)
treedbd2d811f0232fd2793a995ed52d1200779efbce /gcc
parent24db272534ecb8907c141e4dd3285226c6a3236e (diff)
downloadgcc-487abf669e1b2fb227d698c360f3997c5ec3f232.tar.gz
* search.c (lookup_field): Call complete_type in all cases.
Fixes CLN problems. * decl.c (finish_function): Just warn about flowing off the end. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@15555 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-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 7e1460fcb67..39b7ac2ea10 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 1b153589bea..261ec65f185 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 078793c8cfa..c8e08064630 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))
{