From d4693039f950eefb983a66e3270209b738e4ce8a Mon Sep 17 00:00:00 2001 From: Jan Beulich Date: Thu, 4 Jul 2019 10:36:41 +0200 Subject: [PATCH] x86: correct "-Q" option handling For another patch I wanted to use a sufficiently benign option (simply to be able to specify one, which certain test case invocations require), and I stumbled across -Q in the --help output. Before realizing that this is x86-specific anyway, I've tried and and ran into a mysterious testsuite failure, until I further realized that other than the help text suggests the option requires an argument. Correct the help text, and make the implementation actually match what the comment there has been describing (and what the help text now says). --- gas/ChangeLog | 6 ++++++ gas/config/tc-i386.c | 4 +++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index ab00f146db5..c8eb5461431 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,9 @@ +2019-07-04 Jan Beulich + + * config/tc-i386.c (md_parse_option): Don't blindly accept all + -Q options. + (md_show_usage): Correctly name the ignored -Q option flavors. + 2019-07-04 Jan Beulich * config/obj-elf.c (obj_elf_type): Check for conflicts between diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c index 596dde4da24..2e605611057 100644 --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -11141,6 +11141,8 @@ md_parse_option (int c, const char *arg) /* -Qy, -Qn: SVR4 arguments controlling whether a .comment section should be emitted or not. FIXME: Not implemented. */ case 'Q': + if ((arg[0] != 'y' && arg[0] != 'n') || arg[1]) + return 0; break; /* -V: SVR4 argument to print version ID. */ @@ -11643,7 +11645,7 @@ md_show_usage (FILE *stream) { #if defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF) fprintf (stream, _("\ - -Q ignored\n\ + -Qy, -Qn ignored\n\ -V print assembler version number\n\ -k ignored\n")); #endif -- 2.30.2