From: Thomas Schwinge Date: Wed, 30 Mar 2022 20:22:49 +0000 (+0200) Subject: options: Fix "Multiple different help strings" error diagnostic X-Git-Tag: basepoints/gcc-13~371 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6c0e2645933449461d44fd2dce4fedf94199838c;p=thirdparty%2Fgcc.git options: Fix "Multiple different help strings" error diagnostic This currently causes a confusing litany, for example: options.cc:3245:2: error: #error Multiple different help strings for Wunused-result: #error Multiple different help strings for Wunused-result: ^ options.cc:3246:2: error: 'Warn' was not declared in this scope Warn if a caller of a function, marked with attribute warn_unused_result, does not use its return value. ^ options.cc:3246:7: error: expected '}' before 'if' Warn if a caller of a function, marked with attribute warn_unused_result, does not use its return value. ^ options.cc:3246:7: error: expected ',' or ';' before 'if' options.cc:3256:54: error: expected unqualified-id before ',' token (unsigned short) -1, 0, CLVC_INTEGER, 0, -1, -1 }, ^ [going on for several thousands of lines] Fixed: options.cc:3245:2: error: #error Multiple different help strings for Wunused-result: #error Multiple different help strings for Wunused-result: ^ options.cc:3246:2: error: #error Warn if a caller of a function, marked with attribute warn_unused_result, does not use its return value. #error Warn if a caller of a function, marked with attribute warn_unused_result, does not use its return value. ^ options.cc:3247:2: error: #error TEST. #error TEST. ^ Fix-up for r187437/commit 71caddc5568f59a5990f39226f60979a7fe953ef "optc-gen.awk: Error instead of warning for conflicting help". gcc/ * optc-gen.awk : Fix "Multiple different help strings" error diagnostic. --- diff --git a/gcc/optc-gen.awk b/gcc/optc-gen.awk index f2198b253ad6..b51688d284fc 100644 --- a/gcc/optc-gen.awk +++ b/gcc/optc-gen.awk @@ -316,9 +316,12 @@ for (i = 0; i < n_opts; i++) { flags[i + 1] = flags[i] " " flags[i + 1]; if (help[i + 1] == "") help[i + 1] = help[i] - else if (help[i] != "" && help[i + 1] != help[i]) + else if (help[i] != "" && help[i + 1] != help[i]) { print "#error Multiple different help strings for " \ - opts[i] ":\n\t" help[i] "\n\t" help[i + 1] + opts[i] ":" + print "#error " help[i] + print "#error " help[i + 1] + } i++; back_chain[i] = "N_OPTS";