Skip to content

Fix an implicit declaration of gettimeofday when building for mingw

When building for a mingw target, HAVE_GETTIMEOFDAY is defined (as the gettimeofday function was found), but the #ifdef _WIN32 #else block never tried to include <sys/time.h> (which provides the declaration) and/or <time.h> for such targets. This caused gettimeofday to be used without a prior declaration.

This has been visible as an easily overlooked warning, but Clang 15 changed this into a fatal error by default, when building in C99 mode (or newer). [1] (While Clang 15 still is under development, this may still change before it's released, but the warning is valid in any case.)

Decouple including of those headers from the #ifdef _WIN32 #else block and just check their corresponding availability defines.

[1] https://github.com/llvm/llvm-project/commit/7d644e1215b376ec5e915df9ea2eeb56e2d94626

This fixes issue #8.

Merge request reports