aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorK. Richard Pixley <rich@cygnus>1992-10-16 05:49:54 +0000
committerK. Richard Pixley <rich@cygnus>1992-10-16 05:49:54 +0000
commit4100543aee0f7e77c1a8aec9e150b9e1720b8dcb (patch)
tree12176c95824cba56d13155f5ca1677a3bddcd61a
parentb396595a9c7fd836ef6a559f35d4ebe732990771 (diff)
downloadgdb-4100543aee0f7e77c1a8aec9e150b9e1720b8dcb.zip
gdb-4100543aee0f7e77c1a8aec9e150b9e1720b8dcb.tar.gz
gdb-4100543aee0f7e77c1a8aec9e150b9e1720b8dcb.tar.bz2
use the provided enum for has_arg
-rw-r--r--include/ChangeLog2
-rw-r--r--include/getopt.h38
2 files changed, 25 insertions, 15 deletions
diff --git a/include/ChangeLog b/include/ChangeLog
index 37a19a6..2f038ae 100644
--- a/include/ChangeLog
+++ b/include/ChangeLog
@@ -1,5 +1,7 @@
Thu Oct 15 21:43:22 1992 K. Richard Pixley (rich@sendai.cygnus.com)
+ * getopt.h (struct option): use the provided enum for has_arg.
+
* demangle.h (AUTO_DEMANGLING, GNU_DEMANGLING,
LUCID_DEMANGLING): ultrix compilers require enums to be
enums and ints to be ints and casts where they meet. cast some
diff --git a/include/getopt.h b/include/getopt.h
index f64de31..6f42f80 100644
--- a/include/getopt.h
+++ b/include/getopt.h
@@ -1,9 +1,9 @@
/* Declarations for getopt.
Copyright (C) 1989, 1990, 1991, 1992 Free Software Foundation, Inc.
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2, or (at your option)
+ This program is free software; you can redistribute it and/or modify it
+ under the terms of the GNU Library General Public License as published
+ by the Free Software Foundation; either version 2, or (at your option)
any later version.
This program is distributed in the hope that it will be useful,
@@ -11,13 +11,17 @@
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
+ You should have received a copy of the GNU Library General Public
+ License along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
#ifndef _GETOPT_H
#define _GETOPT_H 1
+#ifdef __cplusplus
+extern "C" {
+#endif
+
/* For communication from `getopt' to the caller.
When `getopt' finds an option that takes an argument,
the argument value is returned here.
@@ -66,6 +70,15 @@ extern int opterr;
one). For long options that have a zero `flag' field, `getopt'
returns the contents of the `val' field. */
+/* Names for the values of the `has_arg' field of `struct option'. */
+
+enum _argtype
+{
+ no_argument,
+ required_argument,
+ optional_argument
+};
+
struct option
{
#if __STDC__
@@ -75,20 +88,11 @@ struct option
#endif
/* has_arg can't be an enum because some compilers complain about
type mismatches in all the code that assumes it is an int. */
- int has_arg;
+ enum _argtype has_arg;
int *flag;
int val;
};
-/* Names for the values of the `has_arg' field of `struct option'. */
-
-enum _argtype
-{
- no_argument,
- required_argument,
- optional_argument
-};
-
#if __STDC__
extern int getopt (int argc, char *const *argv, const char *shortopts);
extern int getopt_long (int argc, char *const *argv, const char *shortopts,
@@ -110,4 +114,8 @@ extern int getopt_long_only ();
extern int _getopt_internal ();
#endif /* not __STDC__ */
+#ifdef __cplusplus
+}
+#endif
+
#endif /* _GETOPT_H */