|
@@ -1,5 +1,6 @@
|
|
|
/* Declarations for getopt.
|
|
|
- Copyright (C) 1989-1994, 1996-1999, 2001 Free Software Foundation, Inc.
|
|
|
+ Copyright (C) 1989-1994,1996-1999,2001,2003,2004
|
|
|
+ Free Software Foundation, Inc.
|
|
|
This file is part of the GNU C Library.
|
|
|
|
|
|
The GNU C Library is free software; you can redistribute it and/or
|
|
@@ -34,6 +35,17 @@
|
|
|
# include <ctype.h>
|
|
|
#endif
|
|
|
|
|
|
+#ifndef __THROW
|
|
|
+# ifndef __GNUC_PREREQ
|
|
|
+# define __GNUC_PREREQ(maj, min) (0)
|
|
|
+# endif
|
|
|
+# if defined __cplusplus && __GNUC_PREREQ (2,8)
|
|
|
+# define __THROW throw ()
|
|
|
+# else
|
|
|
+# define __THROW
|
|
|
+# endif
|
|
|
+#endif
|
|
|
+
|
|
|
#ifdef __cplusplus
|
|
|
extern "C" {
|
|
|
#endif
|
|
@@ -133,23 +145,26 @@ struct option
|
|
|
arguments to the option '\0'. This behavior is specific to the GNU
|
|
|
`getopt'. */
|
|
|
|
|
|
+#if defined __GNU_LIBRARY__ || defined __UCLIBC__
|
|
|
/* Many other libraries have conflicting prototypes for getopt, with
|
|
|
differences in the consts, in stdlib.h. To avoid compilation
|
|
|
errors, only prototype getopt for the GNU C library. */
|
|
|
-extern int getopt (int __argc, char *const *__argv, const char *__shortopts);
|
|
|
+extern int getopt (int ___argc, char *const *___argv, const char *__shortopts)
|
|
|
+ __THROW;
|
|
|
+#else /* not __GNU_LIBRARY__ */
|
|
|
+extern int getopt ();
|
|
|
+#endif /* __GNU_LIBRARY__ */
|
|
|
|
|
|
#ifndef __need_getopt
|
|
|
-extern int getopt_long (int __argc, char *const *__argv, const char *__shortopts,
|
|
|
- const struct option *__longopts, int *__longind);
|
|
|
-extern int getopt_long_only (int __argc, char *const *__argv,
|
|
|
+extern int getopt_long (int ___argc, char *const *___argv,
|
|
|
+ const char *__shortopts,
|
|
|
+ const struct option *__longopts, int *__longind)
|
|
|
+ __THROW;
|
|
|
+extern int getopt_long_only (int ___argc, char *const *___argv,
|
|
|
const char *__shortopts,
|
|
|
- const struct option *__longopts, int *__longind);
|
|
|
+ const struct option *__longopts, int *__longind)
|
|
|
+ __THROW;
|
|
|
|
|
|
-/* Internal only. Users should not call this directly. */
|
|
|
-extern int _getopt_internal (int __argc, char *const *__argv,
|
|
|
- const char *__shortopts,
|
|
|
- const struct option *__longopts, int *__longind,
|
|
|
- int __long_only);
|
|
|
#endif
|
|
|
|
|
|
#ifdef __cplusplus
|