diff options
Diffstat (limited to 'gnulib/lib/sys_time.in.h')
-rw-r--r-- | gnulib/lib/sys_time.in.h | 40 |
1 files changed, 28 insertions, 12 deletions
diff --git a/gnulib/lib/sys_time.in.h b/gnulib/lib/sys_time.in.h index 2a45a157..c4c2eb5e 100644 --- a/gnulib/lib/sys_time.in.h +++ b/gnulib/lib/sys_time.in.h @@ -39,13 +39,15 @@ # include <time.h> # endif +/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ + /* The definition of _GL_ARG_NONNULL is copied here. */ /* The definition of _GL_WARN_ON_USE is copied here. */ -#ifdef __cplusplus +# ifdef __cplusplus extern "C" { -#endif +# endif # if ! @HAVE_STRUCT_TIMEVAL@ struct timeval @@ -55,15 +57,33 @@ struct timeval }; # endif +# ifdef __cplusplus +} +# endif + # if @GNULIB_GETTIMEOFDAY@ # if @REPLACE_GETTIMEOFDAY@ -# undef gettimeofday -# define gettimeofday rpl_gettimeofday -# endif -# if @REPLACE_GETTIMEOFDAY@ || !@HAVE_GETTIMEOFDAY@ -extern int gettimeofday (struct timeval *restrict, void *restrict) - _GL_ARG_NONNULL ((1)); +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef gettimeofday +# define gettimeofday rpl_gettimeofday +# endif +_GL_FUNCDECL_RPL (gettimeofday, int, + (struct timeval *restrict, void *restrict) + _GL_ARG_NONNULL ((1))); +_GL_CXXALIAS_RPL (gettimeofday, int, + (struct timeval *restrict, void *restrict)); +# else +# if !@HAVE_GETTIMEOFDAY@ +_GL_FUNCDECL_SYS (gettimeofday, int, + (struct timeval *restrict, void *restrict) + _GL_ARG_NONNULL ((1))); +# endif +/* Need to cast, because on glibc systems, by default, the second argument is + struct timezone *. */ +_GL_CXXALIAS_SYS_CAST (gettimeofday, int, + (struct timeval *restrict, void *restrict)); # endif +_GL_CXXALIASWARN (gettimeofday); # elif defined GNULIB_POSIXCHECK # undef gettimeofday # if HAVE_RAW_DECL_GETTIMEOFDAY @@ -72,8 +92,4 @@ _GL_WARN_ON_USE (gettimeofday, "gettimeofday is unportable - " # endif # endif -#ifdef __cplusplus -} -#endif - #endif /* _GL_SYS_TIME_H */ |