]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
search.c (lookup_field): Call complete_type in all cases.
authorJason Merrill <jason@gcc.gnu.org>
Thu, 18 Sep 1997 23:52:48 +0000 (19:52 -0400)
committerJason Merrill <jason@gcc.gnu.org>
Thu, 18 Sep 1997 23:52:48 +0000 (19:52 -0400)
* 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

gcc/cp/ChangeLog
gcc/cp/decl.c
gcc/cp/search.c

index 7e1460fcb679990816283f3ee51c46cfe7bcfab8..39b7ac2ea10f3407e19a738f19fbd63b3fea5db5 100644 (file)
@@ -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
index 1b153589bea77ae52d8e656b2a3a13ca56604f02..261ec65f185e0a487bf221f53d9f3b0b32dc9b5b 100644 (file)
@@ -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.  */
index 078793c8cfa454eaeb92bdf239a63f82a53c4775..c8e08064630eee42d698daee7801ec1c8f23a87e 100644 (file)
@@ -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))
     {