summaryrefslogtreecommitdiff
path: root/doc/posix-functions/gettimeofday.texi
blob: 568aeb96afa6a7e2b96eb908b16e679d7f76a5ec (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
@node gettimeofday
@section @code{gettimeofday}
@findex gettimeofday

POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/gettimeofday.html}

Gnulib module: gettimeofday

Portability problems fixed by Gnulib:
@itemize
@item
This function is missing on some platforms:
MSVC 14.
@item
This function is declared with a nonstandard function prototype (only one
argument, or ``...'' after the first argument) on some platforms.
@item
On some platforms, the second argument has type @code{struct
timezone*} rather than @code{void *}, making it an error to redeclare
the function with the POSIX signature:
glibc.
However, rather than penalize these systems with a replacement
function, gnulib defines @code{GETTIMEOFDAY_TIMEZONE} to the
appropriate type for use in avoiding a compiler warning if assigning
@code{gettimeofday} to a function pointer.
@item
On some platforms, @code{gettimeofday} clobbers the buffer in which
@code{localtime} returns its result:
Mac OS X 10.0.
@item
This function has only a precision of 15.6 milliseconds on some platforms:
mingw.
@end itemize

Portability problems not fixed by Gnulib:
@itemize
@item
Behavior is non-portable if the second argument to @code{gettimeofday}
is not @code{NULL}.
@end itemize