c-opts.c (complain_wrong_lang): Add on argument.
authorJakub Jelinek <jakub@redhat.com>
Thu, 12 Jun 2003 14:02:41 +0000 (16:02 +0200)
committerJakub Jelinek <jakub@gcc.gnu.org>
Thu, 12 Jun 2003 14:02:41 +0000 (16:02 +0200)
* c-opts.c (complain_wrong_lang): Add on argument.
Print no- switch if on is false.
(c_common_decode_option): Adjust caller.

From-SVN: r67831

gcc/ChangeLog
gcc/c-opts.c

index ece54b6447c8b338fbf56471c93c37f36bf57f6e..bd4e11812fc3dbe048576b874cf6a8abf9551d6e 100644 (file)
@@ -1,3 +1,9 @@
+2003-06-12  Jakub Jelinek  <jakub@redhat.com>
+
+       * c-opts.c (complain_wrong_lang): Add on argument.
+       Print no- switch if on is false.
+       (c_common_decode_option): Adjust caller.
+
 2003-06-12  Ulrich Weigand  <uweigand@de.ibm.com>
 
        * config/s390/s390.c (s390_emit_prologue): Use LA instead of AR
index 6f449a00bb347c9f7bff77ece3e1a52af59970d7..20884867df4846309f8870e74e8bf74dcbfc5b39 100644 (file)
@@ -102,7 +102,7 @@ static size_t include_cursor;
 
 static void missing_arg PARAMS ((enum opt_code));
 static void set_Wimplicit PARAMS ((int));
-static void complain_wrong_lang PARAMS ((size_t));
+static void complain_wrong_lang PARAMS ((size_t, int));
 static void write_langs PARAMS ((char *, int));
 static void print_help PARAMS ((void));
 static void handle_OPT_d PARAMS ((const char *));
@@ -265,7 +265,7 @@ c_common_handle_option (size_t scode, const char *arg, int on)
   lang_mask = lang_flags[(c_language << 1) + flag_objc];
   if (!(option->flags & lang_mask))
     {
-      complain_wrong_lang (code);
+      complain_wrong_lang (code, on);
       return 1;
     }
 
@@ -1553,8 +1553,9 @@ write_langs (buf, flags)
 
 /* Complain that switch OPT_INDEX does not apply to this front end.  */
 static void
-complain_wrong_lang (opt_index)
+complain_wrong_lang (opt_index, on)
      size_t opt_index;
+     int on;
 {
   char ok_langs[60], bad_langs[60];
   int ok_flags = cl_options[opt_index].flags;
@@ -1562,8 +1563,9 @@ complain_wrong_lang (opt_index)
   write_langs (ok_langs, ok_flags);
   write_langs (bad_langs, ~ok_flags);
   /* Eventually this should become a hard error.  */
-  warning ("\"-%s\" is valid for %s but not for %s",
-          cl_options[opt_index].opt_text, ok_langs, bad_langs);
+  warning ("\"-%c%s%s\" is valid for %s but not for %s",
+          cl_options[opt_index].opt_text[0], on ? "" : "no-",
+          cl_options[opt_index].opt_text + 1, ok_langs, bad_langs);
 }
 
 /* Handle --help output.  */