Do not generate error message about unrecognised command line switches of

other languages.

From-SVN: r30085
This commit is contained in:
Nick Clifton 1999-10-19 13:02:39 +00:00 committed by Nick Clifton
parent 61e8b354cf
commit 0c70c30f29
2 changed files with 41 additions and 1 deletions

View File

@ -1,3 +1,10 @@
Tue Oct 19 14:01:34 1999 Nick Clifton <nickc@cygnus.com>
* toplev.c (main): Do not generate an error message if an
unrecognised command line switch is recognisable by another
language. If extra_warnings are enabled, then generate a
warning message instead.
Tue Oct 19 11:41:12 1999 Mumit Khan <khan@xraylith.wisc.edu>
* c-pragma.h (PRAGMA_INSERT_ATTRIBUTES): Delete macro.

View File

@ -5414,7 +5414,40 @@ main (argc, argv)
? lang_processed : indep_processed);
else
{
warning ("ignoring option `%s'", argv[i]);
const char * option = NULL;
const char * lang = NULL;
unsigned int j;
/* It is possible that the command line switch is not valid for the
current language, but it is valid for another language. In order
to be compatible with previous versions of the compiler (which
did not issue an error message in this case) we check for this
possibilty here. If we do find a match, then if extra_warnings
is set we generate a warning message, otherwise we will just
ignore the option. */
for (j = 0; j < NUM_ELEM (documented_lang_options); j++)
{
option = documented_lang_options[j].option;
if (option == NULL)
lang = documented_lang_options[j].description;
else if (! strncmp (argv[i], option, strlen (option)))
break;
}
if (option)
{
if (extra_warnings)
{
warning ("Ignoring command line option '%s'", argv[i]);
if (lang)
warning ("\
(It is valid for %s but not the selected langauge)", lang);
}
}
else
error ("Unrecognised option `%s'", argv[i]);
i++;
}
}