From f4452176d8b7d718f50616c6908da8b8a9811bdf Mon Sep 17 00:00:00 2001 From: David Malcolm Date: Thu, 30 Jun 2016 00:05:39 +0000 Subject: Offer suggestions for misspelled --param names. gcc/ChangeLog: * opts.c (handle_param): Use find_param_fuzzy to offer suggestions for misspelled param names. * params.c: Include spellcheck.h. (find_param_fuzzy): New function. * params.h (find_param_fuzzy): New prototype. * spellcheck.c (struct edit_distance_traits): Move to... * spellcheck.h (struct edit_distance_traits): ...here. gcc/testsuite/ChangeLog: * gcc.dg/spellcheck-params.c: New testcase. * gcc.dg/spellcheck-params-2.c: New testcase. From-SVN: r237865 --- gcc/opts.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'gcc/opts.c') diff --git a/gcc/opts.c b/gcc/opts.c index 7406210..f09c520 100644 --- a/gcc/opts.c +++ b/gcc/opts.c @@ -2228,7 +2228,14 @@ handle_param (struct gcc_options *opts, struct gcc_options *opts_set, enum compiler_param index; if (!find_param (arg, &index)) - error_at (loc, "invalid --param name %qs", arg); + { + const char *suggestion = find_param_fuzzy (arg); + if (suggestion) + error_at (loc, "invalid --param name %qs; did you mean %qs?", + arg, suggestion); + else + error_at (loc, "invalid --param name %qs", arg); + } else { if (!param_string_value_p (index, equal + 1, &value)) -- cgit v1.1