Мне нужно получить следующий код, работающий независимо от платформы:
timeval tv;
tv.tv_sec = std::numeric_limits<time_t>::max();
Этот код отлично работает под всеми видами ОС Linux и Mac OS X.
К сожалению, в Windows это вернет -1 для tv.tv_sec.
Тогда я подумал о том, чтобы переопределить time_t следующим образом:
typedef int time_t;
Это тоже не сработало, поскольку теперь компилятор жалуется на:
error C2371: 'time_t' : redefinition; different basic types
Как я могу заставить этот код работать независимо от платформы?