(rest_of_compilation): Defer compilation of function that were
authorkenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 23 Jan 1994 13:13:51 +0000 (13:13 +0000)
committerkenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 23 Jan 1994 13:13:51 +0000 (13:13 +0000)
specified as inline, whether or not they actually were inlined.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@6413 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/toplev.c

index 569e069..8f08ea9 100644 (file)
@@ -1,5 +1,5 @@
 /* Top level of GNU C compiler
-   Copyright (C) 1987, 1988, 1989, 1992, 1993 Free Software Foundation, Inc.
+   Copyright (C) 1987, 88, 89, 92, 93, 1994 Free Software Foundation, Inc.
 
 This file is part of GNU CC.
 
@@ -2372,9 +2372,11 @@ rest_of_compilation (decl)
       /* If function is inline, and we don't yet know whether to
         compile it by itself, defer decision till end of compilation.
         finish_compilation will call rest_of_compilation again
-        for those functions that need to be output.  */
+        for those functions that need to be output.  Also defer those
+        functions that were marked inline but weren't inlined; they
+        may never be used.  */
 
-      if (DECL_INLINE (decl)
+      if ((specd || DECL_INLINE (decl))
          && ((! TREE_PUBLIC (decl) && ! TREE_ADDRESSABLE (decl)
               && ! flag_keep_inline_functions)
              || DECL_EXTERNAL (decl)))