annotate lib-src/getopt.h @ 33863:2e449f784ca7

(init_from_display_pos): If POS says we're already after an overlay string ending at POS, make sure to pop the iterator because it will be in front of that overlay string. When POS is ZV, we've thereby also ``processed'' overlay strings at ZV.
author Gerd Moellmann <gerd@gnu.org>
date Fri, 24 Nov 2000 19:29:05 +0000
parents 82bf642db65e
children dfb045958eeb
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
16919
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
1 /* Declarations for getopt.
26083
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
2 Copyright (C) 1989,90,91,92,93,94,96,97,98 Free Software Foundation, Inc.
18357
8a1bcc1874f1 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents: 18356
diff changeset
3 NOTE: The canonical source of this file is maintained with the GNU C Library.
18358
0c811fcc11f5 automatically generated from GPLed version
Ulrich Drepper <drepper@redhat.com>
parents: 18357
diff changeset
4 Bugs can be reported to bug-glibc@gnu.org.
18357
8a1bcc1874f1 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents: 18356
diff changeset
5 This program is free software; you can redistribute it and/or modify it
8a1bcc1874f1 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents: 18356
diff changeset
6 under the terms of the GNU General Public License as published by the
8a1bcc1874f1 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents: 18356
diff changeset
7 Free Software Foundation; either version 2, or (at your option) any
8a1bcc1874f1 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents: 18356
diff changeset
8 later version.
16919
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
9
18357
8a1bcc1874f1 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents: 18356
diff changeset
10 This program is distributed in the hope that it will be useful,
8a1bcc1874f1 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents: 18356
diff changeset
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
8a1bcc1874f1 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents: 18356
diff changeset
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
8a1bcc1874f1 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents: 18356
diff changeset
13 GNU General Public License for more details.
16919
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
14
18357
8a1bcc1874f1 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents: 18356
diff changeset
15 You should have received a copy of the GNU General Public License
8a1bcc1874f1 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents: 18356
diff changeset
16 along with this program; if not, write to the Free Software
8a1bcc1874f1 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents: 18356
diff changeset
17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
8a1bcc1874f1 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents: 18356
diff changeset
18 USA. */
16919
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
19
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
20 #ifndef _GETOPT_H
26083
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
21
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
22 #ifndef __need_getopt
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
23 # define _GETOPT_H 1
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
24 #endif
16919
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
25
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
26 #ifdef __cplusplus
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
27 extern "C" {
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
28 #endif
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
29
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
30 /* For communication from `getopt' to the caller.
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
31 When `getopt' finds an option that takes an argument,
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
32 the argument value is returned here.
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
33 Also, when `ordering' is RETURN_IN_ORDER,
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
34 each non-option ARGV-element is returned here. */
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
35
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
36 extern char *optarg;
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
37
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
38 /* Index in ARGV of the next element to be scanned.
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
39 This is used for communication to and from the caller
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
40 and for communication between successive calls to `getopt'.
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
41
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
42 On entry to `getopt', zero means this is the first call; initialize.
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
43
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
44 When `getopt' returns -1, this is the index of the first of the
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
45 non-option elements that the caller should itself scan.
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
46
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
47 Otherwise, `optind' communicates from one call to the next
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
48 how much of ARGV has been scanned so far. */
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
49
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
50 extern int optind;
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
51
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
52 /* Callers store zero here to inhibit the error message `getopt' prints
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
53 for unrecognized options. */
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
54
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
55 extern int opterr;
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
56
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
57 /* Set to an option character which was unrecognized. */
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
58
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
59 extern int optopt;
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
60
26083
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
61 #ifndef __need_getopt
16919
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
62 /* Describe the long-named options requested by the application.
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
63 The LONG_OPTIONS argument to getopt_long or getopt_long_only is a vector
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
64 of `struct option' terminated by an element containing a name which is
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
65 zero.
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
66
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
67 The field `has_arg' is:
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
68 no_argument (or 0) if the option does not take an argument,
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
69 required_argument (or 1) if the option requires an argument,
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
70 optional_argument (or 2) if the option takes an optional argument.
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
71
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
72 If the field `flag' is not NULL, it points to a variable that is set
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
73 to the value given in the field `val' when the option is found, but
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
74 left unchanged if the option is not found.
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
75
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
76 To have a long-named option do something other than set an `int' to
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
77 a compiled-in constant, such as set a value from `optarg', set the
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
78 option's `flag' field to zero and its `val' field to a nonzero
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
79 value (the equivalent single-letter option character, if there is
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
80 one). For long options that have a zero `flag' field, `getopt'
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
81 returns the contents of the `val' field. */
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
82
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
83 struct option
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
84 {
26083
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
85 # if defined __STDC__ && __STDC__
16919
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
86 const char *name;
26083
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
87 # else
16919
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
88 char *name;
26083
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
89 # endif
16919
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
90 /* has_arg can't be an enum because some compilers complain about
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
91 type mismatches in all the code that assumes it is an int. */
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
92 int has_arg;
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
93 int *flag;
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
94 int val;
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
95 };
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
96
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
97 /* Names for the values of the `has_arg' field of `struct option'. */
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
98
26083
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
99 # define no_argument 0
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
100 # define required_argument 1
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
101 # define optional_argument 2
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
102 #endif /* need getopt */
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
103
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
104
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
105 /* Get definitions and prototypes for functions to process the
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
106 arguments in ARGV (ARGC of them, minus the program name) for
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
107 options given in OPTS.
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
108
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
109 Return the option character from OPTS just read. Return -1 when
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
110 there are no more options. For unrecognized options, or options
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
111 missing arguments, `optopt' is set to the option letter, and '?' is
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
112 returned.
16919
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
113
26083
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
114 The OPTS string is a list of characters which are recognized option
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
115 letters, optionally followed by colons, specifying that that letter
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
116 takes an argument, to be placed in `optarg'.
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
117
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
118 If a letter in OPTS is followed by two colons, its argument is
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
119 optional. This behavior is specific to the GNU `getopt'.
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
120
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
121 The argument `--' causes premature termination of argument
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
122 scanning, explicitly telling `getopt' that there are no more
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
123 options.
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
124
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
125 If OPTS begins with `--', then non-option arguments are treated as
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
126 arguments to the option '\0'. This behavior is specific to the GNU
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
127 `getopt'. */
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
128
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
129 #if defined __STDC__ && __STDC__
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
130 # ifdef __GNU_LIBRARY__
16919
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
131 /* Many other libraries have conflicting prototypes for getopt, with
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
132 differences in the consts, in stdlib.h. To avoid compilation
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
133 errors, only prototype getopt for the GNU C library. */
26083
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
134 extern int getopt (int __argc, char *const *__argv, const char *__shortopts);
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
135 # else /* not __GNU_LIBRARY__ */
16919
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
136 extern int getopt ();
26083
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
137 # endif /* __GNU_LIBRARY__ */
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
138
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
139 # ifndef __need_getopt
31132
82bf642db65e fix line endings
Andrew Innes <andrewi@gnu.org>
parents: 26083
diff changeset
140 extern int getopt_long (int argc, char *const *argv, const char *__shortopts,
26083
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
141 const struct option *__longopts, int *__longind);
31132
82bf642db65e fix line endings
Andrew Innes <andrewi@gnu.org>
parents: 26083
diff changeset
142 extern int getopt_long_only (int argc, char *const *argv,
26083
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
143 const char *__shortopts,
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
144 const struct option *__longopts, int *__longind);
16919
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
145
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
146 /* Internal only. Users should not call this directly. */
31132
82bf642db65e fix line endings
Andrew Innes <andrewi@gnu.org>
parents: 26083
diff changeset
147 extern int _getopt_internal (int argc, char *const *argv,
26083
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
148 const char *__shortopts,
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
149 const struct option *__longopts, int *__longind,
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
150 int __long_only);
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
151 # endif
16919
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
152 #else /* not __STDC__ */
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
153 extern int getopt ();
26083
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
154 # ifndef __need_getopt
16919
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
155 extern int getopt_long ();
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
156 extern int getopt_long_only ();
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
157
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
158 extern int _getopt_internal ();
26083
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
159 # endif
16919
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
160 #endif /* __STDC__ */
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
161
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
162 #ifdef __cplusplus
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
163 }
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
164 #endif
16c0c57e8ab2 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents:
diff changeset
165
26083
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
166 /* Make sure we later can get all the definitions and declarations. */
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
167 #undef __need_getopt
134b57acef68 Add support for large files. Merge glibc 2.1.2.
Paul Eggert <eggert@twinsun.com>
parents: 18358
diff changeset
168
18353
6f1608446f88 automatically generated from GPLed version
Paul Eggert <eggert@twinsun.com>
parents: 17965
diff changeset
169 #endif /* getopt.h */