diff options
author | Nick Clifton <nickc@redhat.com> | 2000-12-31 19:56:04 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2000-12-31 19:56:04 +0000 |
commit | 0fc3347a5cbe0d5c58a4ac3c75d05a93773002fb (patch) | |
tree | 60bc4750fba42e739ec4cbd8e2454f1938fab8f4 /ld | |
parent | 67db5ab439b50465821b98f47679ea9cc184e774 (diff) | |
download | binutils-gdb-0fc3347a5cbe0d5c58a4ac3c75d05a93773002fb.tar.gz |
Fix problems with new EXACTLY_TWO_DASHES command line switch option.
Diffstat (limited to 'ld')
-rw-r--r-- | ld/ChangeLog | 5 | ||||
-rw-r--r-- | ld/lexsup.c | 14 | ||||
-rw-r--r-- | ld/testsuite/ChangeLog | 4 | ||||
-rw-r--r-- | ld/testsuite/ld-srec/srec.exp | 4 |
4 files changed, 22 insertions, 5 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index 2e1b4169e46..18222733a42 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,8 @@ +2000-12-31 Nick Clifton <nickc@redhat.com> + + * lexsup.c (parse_args): Set opterr to 0 and detect unparsed long + options by checking for a return value of '?' not -1. + 2000-12-28 Nick Clifton <nickc@redhat.com> * lexsup.c (struct ld_option): Add new enum value: diff --git a/ld/lexsup.c b/ld/lexsup.c index eb1fc2d86dd..80ccc6e0e2d 100644 --- a/ld/lexsup.c +++ b/ld/lexsup.c @@ -543,14 +543,22 @@ parse_args (argc, argv) /* getopt_long_only is like getopt_long, but '-' as well as '--' can indicate a long option. */ + opterr = 0; optc = getopt_long_only (argc, argv, shortopts, longopts, &longind); - if (optc == -1) - optc = getopt_long (argc, argv, shortopts, really_longopts, &longind); - + if (optc == '?') + { + --optind; + optc = getopt_long (argc, argv, shortopts, really_longopts, &longind); + } + if (optc == -1) break; + switch (optc) { + case '?': + fprintf (stderr, _("%s: unrecognized option '%s'\n"), + program_name, argv[optind - 1]); default: fprintf (stderr, _("%s: use the --help option for usage information\n"), diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog index feca9e11d4a..192e265c550 100644 --- a/ld/testsuite/ChangeLog +++ b/ld/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2000-12-31 Nick Clifton <nickc@redhat.com> + + * ld-srec/srec.exp: Use --oformat instead of -oformat. + 2000-12-09 Nick Clifton <nickc@redhat.com> * ld-selective/selective.exp: Link in libgcc when target is v850. diff --git a/ld/testsuite/ld-srec/srec.exp b/ld/testsuite/ld-srec/srec.exp index 818f847ea0c..f493f98cc68 100644 --- a/ld/testsuite/ld-srec/srec.exp +++ b/ld/testsuite/ld-srec/srec.exp @@ -237,7 +237,7 @@ proc run_srec_test { test objs } { set flags "$flags --defsym __gccmain=0" # ARM targets cannot convert format in the linker - # using the -oformat command line switch + # using the --oformat command line switch setup_xfail "*arm*-*-*" setup_xfail "xscale-*-*" setup_xfail "thumb-*-*" @@ -259,7 +259,7 @@ proc run_srec_test { test objs } { } if { ![ld_simple_link $ld tmpdir/sr1 "$flags $objs"] \ - || ![ld_simple_link $ld tmpdir/sr2.sr "$flags -oformat srec $objs"] } { + || ![ld_simple_link $ld tmpdir/sr2.sr "$flags --oformat srec $objs"] } { setup_xfail "hppa*-*-*elf*" fail $test return |