(duplicate_decls): When pedantic, warn when any static
authorJim Wilson <wilson@gcc.gnu.org>
Mon, 21 Mar 1994 22:07:03 +0000 (14:07 -0800)
committerJim Wilson <wilson@gcc.gnu.org>
Mon, 21 Mar 1994 22:07:03 +0000 (14:07 -0800)
declaraction follows a non-static.

From-SVN: r6840

gcc/c-decl.c

index a95e7259297cad9256504ac3aed33e8c653c77a3..6fcf45be81ff81cfc9620b3432631443b60c2b3b 100644 (file)
@@ -1576,9 +1576,10 @@ duplicate_decls (newdecl, olddecl)
              && DECL_INITIAL (olddecl) != 0)
            warning_with_decl (newdecl,
                               "`%s' declared inline after its definition");
-         /* It is nice to warn when a function is declared
-            global first and then static.  */
-         if (TREE_CODE (olddecl) == FUNCTION_DECL
+
+         /* If pedantic, warn when static declaration follows a non-static
+            declaration.  Otherwise, do so only for functions.  */
+         if ((pedantic || TREE_CODE (olddecl) == FUNCTION_DECL)
              && TREE_PUBLIC (olddecl)
              && !TREE_PUBLIC (newdecl))
            warning_with_decl (newdecl, "static declaration for `%s' follows non-static");