summaryrefslogtreecommitdiff
path: root/posix/getopt.h
diff options
context:
space:
mode:
Diffstat (limited to 'posix/getopt.h')
-rw-r--r--posix/getopt.h19
1 files changed, 15 insertions, 4 deletions
diff --git a/posix/getopt.h b/posix/getopt.h
index 4283c35b16..53cb2baaf0 100644
--- a/posix/getopt.h
+++ b/posix/getopt.h
@@ -1,5 +1,5 @@
/* Declarations for getopt.
- Copyright (C) 1989-1994, 1996-1999, 2001 Free Software Foundation, Inc.
+ Copyright (C) 1989-1994, 1996-1999,2001,2003 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 +34,14 @@
# include <ctype.h>
#endif
+#ifndef __THROW
+# if defined __cplusplus && __GNUC_PREREQ (2,8)
+# define __THROW throw ()
+# else
+# define __THROW
+# endif
+#endif
+
#ifdef __cplusplus
extern "C" {
#endif
@@ -142,7 +150,8 @@ struct option
/* 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__ */
@@ -150,10 +159,12 @@ extern int getopt ();
# ifndef __need_getopt
extern int getopt_long (int ___argc, char *const *___argv,
const char *__shortopts,
- const struct option *__longopts, int *__longind);
+ 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,