x86: correct "-Q" option handling
authorJan Beulich <jbeulich@suse.com>
Thu, 4 Jul 2019 08:36:41 +0000 (10:36 +0200)
committerJan Beulich <jbeulich@suse.com>
Thu, 4 Jul 2019 08:36:41 +0000 (10:36 +0200)
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
gas/config/tc-i386.c

index ab00f14..c8eb546 100644 (file)
@@ -1,5 +1,11 @@
 2019-07-04  Jan Beulich  <jbeulich@suse.com>
 
+       * 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  <jbeulich@suse.com>
+
        * config/obj-elf.c (obj_elf_type): Check for conflicts between
        old and new types.
        * config/tc-hppa.h (md_elf_symbol_type_change): New.
index 596dde4..2e60561 100644 (file)
@@ -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