diff options
author | David Malcolm <dmalcolm@redhat.com> | 2016-06-30 14:28:50 +0000 |
---|---|---|
committer | David Malcolm <dmalcolm@gcc.gnu.org> | 2016-06-30 14:28:50 +0000 |
commit | 603107fbb0da3acb1ce296dfef1a592a6451c0b4 (patch) | |
tree | 40d1bc99d4ff173785ae8b7f061698acb8a05f26 /gcc/gcc.c | |
parent | 72fb6bae83446096e467e3713e8e40b2433f8220 (diff) | |
download | gcc-603107fbb0da3acb1ce296dfef1a592a6451c0b4.zip gcc-603107fbb0da3acb1ce296dfef1a592a6451c0b4.tar.gz gcc-603107fbb0da3acb1ce296dfef1a592a6451c0b4.tar.bz2 |
Fix bogus option suggestions for RejectNegative options (PR driver/71651)
gcc/ChangeLog:
PR driver/71651
* gcc.c (driver::build_option_suggestions): Pass "option" to
add_misspelling_candidates.
* opts-common.c (add_misspelling_candidates): Add "option" param;
use it to avoid adding negated forms for options marked with
RejectNegative.
* opts.h (add_misspelling_candidates): Add "option" param.
gcc/testsuite/ChangeLog:
PR driver/71651
* gcc.dg/spellcheck-options-12.c: New test case.
From-SVN: r237880
Diffstat (limited to 'gcc/gcc.c')
-rw-r--r-- | gcc/gcc.c | 9 |
1 files changed, 6 insertions, 3 deletions
@@ -7700,12 +7700,14 @@ driver::build_option_suggestions (void) for (unsigned j = 0; e->values[j].arg != NULL; j++) { char *with_arg = concat (opt_text, e->values[j].arg, NULL); - add_misspelling_candidates (m_option_suggestions, with_arg); + add_misspelling_candidates (m_option_suggestions, option, + with_arg); free (with_arg); } } else - add_misspelling_candidates (m_option_suggestions, opt_text); + add_misspelling_candidates (m_option_suggestions, option, + opt_text); break; case OPT_fsanitize_: @@ -7729,7 +7731,8 @@ driver::build_option_suggestions (void) /* Add with_arg and all of its variant spellings e.g. "-fno-sanitize=address" to candidates (albeit without leading dashes). */ - add_misspelling_candidates (m_option_suggestions, with_arg); + add_misspelling_candidates (m_option_suggestions, option, + with_arg); free (with_arg); } } |