* c-decl.c (c_decode_option): Accept optional numeric argument to
authordrepper <drepper@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 31 Jan 2000 03:31:26 +0000 (03:31 +0000)
committerdrepper <drepper@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 31 Jan 2000 03:31:26 +0000 (03:31 +0000)
        -Wformat and set warn_format.
        * c-common.c: Don't emit warning about non-constant printf format
        string unless warn_format > 1.

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

gcc/ChangeLog
gcc/c-common.c
gcc/c-decl.c

index 81b8f62..62fd1f6 100644 (file)
@@ -1,3 +1,10 @@
+2000-01-28  Ulrich Drepper  <drepper@redhat.com>
+
+       * c-decl.c (c_decode_option): Accept optional numeric argument to
+       -Wformat and set warn_format.
+       * c-common.c: Don't emit warning about non-constant printf format
+       string unless warn_format > 1.
+
 2000-01-30  Richard Henderson  <rth@cygnus.com>
 
        * alpha.md (return_internal): Allow after reload only.
index 1cfb765..c5899e2 100644 (file)
@@ -1529,7 +1529,7 @@ check_format_info (info, params)
       /* Functions taking a va_list normally pass a non-literal format
         string.  These functions typically are declared with
         first_arg_num == 0, so avoid warning in those cases.  */
-      if (info->first_arg_num != 0)
+      if (info->first_arg_num != 0 && warn_format > 1)
        warning ("format not a string literal, argument types not checked");
       return;
     }
@@ -1541,7 +1541,7 @@ check_format_info (info, params)
       /* Functions taking a va_list normally pass a non-literal format
         string.  These functions typically are declared with
         first_arg_num == 0, so avoid warning in those cases.  */
-      if (info->first_arg_num != 0)
+      if (info->first_arg_num != 0 && warn_format > 1)
        warning ("format not a string literal, argument types not checked");
       return;
     }
index 864ea8b..ed15761 100644 (file)
@@ -677,6 +677,8 @@ c_decode_option (argc, argv)
     warn_traditional = 1;
   else if (!strcmp (p, "-Wno-traditional"))
     warn_traditional = 0;
+  else if (!strncmp (p, "-Wformat=", 9))
+    warn_format = atol (p + 9);
   else if (!strcmp (p, "-Wformat"))
     warn_format = 1;
   else if (!strcmp (p, "-Wno-format"))