| 3 |  | "Keep this file name-space clean" means, talk to drepper@gnu.org | 
| 4 |  | before changing it! | 
| 5 |  | Copyright (C) 1987,88,89,90,91,92,93,94,95,96,98,99,2000,2001 | 
| 6 | < | Free Software Foundation, Inc. | 
| 6 | > | Free Software Foundation, Inc. | 
| 7 |  | This file is part of the GNU C Library. | 
| 8 |  |  | 
| 9 |  | The GNU C Library is free software; you can redistribute it and/or | 
| 155 |  |  | 
| 156 |  | /* Describe how to deal with options that follow non-option ARGV-elements. | 
| 157 |  |  | 
| 158 | < | If the caller did not specify anything, | 
| 159 | < | the default is REQUIRE_ORDER if the environment variable | 
| 160 | < | POSIXLY_CORRECT is defined, PERMUTE otherwise. | 
| 158 | > | If the caller did not specify anything, | 
| 159 | > | the default is REQUIRE_ORDER if the environment variable | 
| 160 | > | POSIXLY_CORRECT is defined, PERMUTE otherwise. | 
| 161 |  |  | 
| 162 | < | REQUIRE_ORDER means don't recognize them as options; | 
| 163 | < | stop option processing when the first non-option is seen. | 
| 164 | < | This is what Unix does. | 
| 165 | < | This mode of operation is selected by either setting the environment | 
| 166 | < | variable POSIXLY_CORRECT, or using `+' as the first character | 
| 167 | < | of the list of option characters. | 
| 162 | > | REQUIRE_ORDER means don't recognize them as options; | 
| 163 | > | stop option processing when the first non-option is seen. | 
| 164 | > | This is what Unix does. | 
| 165 | > | This mode of operation is selected by either setting the environment | 
| 166 | > | variable POSIXLY_CORRECT, or using `+' as the first character | 
| 167 | > | of the list of option characters. | 
| 168 |  |  | 
| 169 | < | PERMUTE is the default.  We permute the contents of ARGV as we scan, | 
| 170 | < | so that eventually all the non-options are at the end.  This allows options | 
| 171 | < | to be given in any order, even with programs that were not written to | 
| 172 | < | expect this. | 
| 169 | > | PERMUTE is the default.  We permute the contents of ARGV as we scan, | 
| 170 | > | so that eventually all the non-options are at the end.  This allows options | 
| 171 | > | to be given in any order, even with programs that were not written to | 
| 172 | > | expect this. | 
| 173 |  |  | 
| 174 | < | RETURN_IN_ORDER is an option available to programs that were written | 
| 175 | < | to expect options and other ARGV-elements in any order and that care about | 
| 176 | < | the ordering of the two.  We describe each non-option ARGV-element | 
| 177 | < | as if it were the argument of an option with character code 1. | 
| 178 | < | Using `-' as the first character of the list of option characters | 
| 179 | < | selects this mode of operation. | 
| 174 | > | RETURN_IN_ORDER is an option available to programs that were written | 
| 175 | > | to expect options and other ARGV-elements in any order and that care about | 
| 176 | > | the ordering of the two.  We describe each non-option ARGV-element | 
| 177 | > | as if it were the argument of an option with character code 1. | 
| 178 | > | Using `-' as the first character of the list of option characters | 
| 179 | > | selects this mode of operation. | 
| 180 |  |  | 
| 181 | < | The special argument `--' forces an end of option-scanning regardless | 
| 182 | < | of the value of `ordering'.  In the case of RETURN_IN_ORDER, only | 
| 183 | < | `--' can cause `getopt' to return -1 with `optind' != ARGC.  */ | 
| 181 | > | The special argument `--' forces an end of option-scanning regardless | 
| 182 | > | of the value of `ordering'.  In the case of RETURN_IN_ORDER, only | 
| 183 | > | `--' can cause `getopt' to return -1 with `optind' != ARGC.  */ | 
| 184 |  |  | 
| 185 |  | static enum | 
| 186 | < | { | 
| 187 | < | REQUIRE_ORDER, PERMUTE, RETURN_IN_ORDER | 
| 188 | < | } ordering; | 
| 186 | > | { | 
| 187 | > | REQUIRE_ORDER, PERMUTE, RETURN_IN_ORDER | 
| 188 | > | } ordering; | 
| 189 |  |  | 
| 190 |  | /* Value of POSIXLY_CORRECT environment variable.  */ | 
| 191 |  | static char *posixly_correct; | 
| 268 |  | # endif | 
| 269 |  |  | 
| 270 |  | # ifdef USE_NONOPTION_FLAGS | 
| 271 | < | #  define SWAP_FLAGS(ch1, ch2) \ | 
| 272 | < | if (nonoption_flags_len > 0)                                                \ | 
| 273 | < | {                                                                         \ | 
| 274 | < | char __tmp = __getopt_nonoption_flags[ch1];                             \ | 
| 275 | < | __getopt_nonoption_flags[ch1] = __getopt_nonoption_flags[ch2];          \ | 
| 276 | < | __getopt_nonoption_flags[ch2] = __tmp;                                  \ | 
| 271 | > | #  define SWAP_FLAGS(ch1, ch2)                                          \ | 
| 272 | > | if (nonoption_flags_len > 0)                                          \ | 
| 273 | > | {                                                                   \ | 
| 274 | > | char __tmp = __getopt_nonoption_flags[ch1];                       \ | 
| 275 | > | __getopt_nonoption_flags[ch1] = __getopt_nonoption_flags[ch2];    \ | 
| 276 | > | __getopt_nonoption_flags[ch2] = __tmp;                            \ | 
| 277 |  | } | 
| 278 |  | # else | 
| 279 |  | #  define SWAP_FLAGS(ch1, ch2) | 
| 533 |  | from the shell indicating it is not an option.  The later information | 
| 534 |  | is only used when the used in the GNU libc.  */ | 
| 535 |  | #if defined _LIBC && defined USE_NONOPTION_FLAGS | 
| 536 | < | # define NONOPTION_P (argv[optind][0] != '-' || argv[optind][1] == '\0'       \ | 
| 537 | < | || (optind < nonoption_flags_len                        \ | 
| 536 | > | # define NONOPTION_P (argv[optind][0] != '-' || argv[optind][1] == '\0' \ | 
| 537 | > | || (optind < nonoption_flags_len                  \ | 
| 538 |  | && __getopt_nonoption_flags[optind] == '1')) | 
| 539 |  | #else | 
| 540 |  | # define NONOPTION_P (argv[optind][0] != '-' || argv[optind][1] == '\0') | 
| 621 |  |  | 
| 622 |  | /* Check whether the ARGV-element is a long option. | 
| 623 |  |  | 
| 624 | < | If long_only and the ARGV-element has the form "-f", where f is | 
| 625 | < | a valid short option, don't consider it an abbreviated form of | 
| 626 | < | a long option that starts with f.  Otherwise there would be no | 
| 627 | < | way to give the -f short option. | 
| 624 | > | If long_only and the ARGV-element has the form "-f", where f is | 
| 625 | > | a valid short option, don't consider it an abbreviated form of | 
| 626 | > | a long option that starts with f.  Otherwise there would be no | 
| 627 | > | way to give the -f short option. | 
| 628 |  |  | 
| 629 | < | On the other hand, if there's a long option "fubar" and | 
| 630 | < | the ARGV-element is "-fu", do consider that an abbreviation of | 
| 631 | < | the long option, just like "--fu", and not "-f" with arg "u". | 
| 629 | > | On the other hand, if there's a long option "fubar" and | 
| 630 | > | the ARGV-element is "-fu", do consider that an abbreviation of | 
| 631 | > | the long option, just like "--fu", and not "-f" with arg "u". | 
| 632 |  |  | 
| 633 | < | This distinction seems to be the most useful approach.  */ | 
| 633 | > | This distinction seems to be the most useful approach.  */ | 
| 634 |  |  | 
| 635 |  | if (longopts != NULL | 
| 636 |  | && (argv[optind][1] == '-' | 
| 726 |  | { | 
| 727 |  | if (print_errors) | 
| 728 |  | fprintf (stderr, | 
| 729 | < | _("%s: option `%s' requires an argument\n"), | 
| 730 | < | argv[0], argv[optind - 1]); | 
| 729 | > | _("%s: option `%s' requires an argument\n"), | 
| 730 | > | argv[0], argv[optind - 1]); | 
| 731 |  | nextchar += strlen (nextchar); | 
| 732 |  | optopt = pfound->val; | 
| 733 |  | return optstring[0] == ':' ? ':' : '?'; | 
| 884 |  | { | 
| 885 |  | if (print_errors) | 
| 886 |  | fprintf (stderr, _("\ | 
| 887 | < | %s: option `-W %s' doesn't allow an argument\n"), | 
| 887 | > | %s: option `-W %s' doesn't allow an argument\n"), | 
| 888 |  | argv[0], pfound->name); | 
| 889 |  |  | 
| 890 |  | nextchar += strlen (nextchar); | 
| 915 |  | } | 
| 916 |  | return pfound->val; | 
| 917 |  | } | 
| 918 | < | nextchar = NULL; | 
| 919 | < | return 'W';   /* Let the application handle it.   */ | 
| 918 | > | nextchar = NULL; | 
| 919 | > | return 'W';     /* Let the application handle it.   */ | 
| 920 |  | } | 
| 921 |  | if (temp[1] == ':') | 
| 922 |  | { |