diff --git a/components/libc/compilers/common/ctime.c b/components/libc/compilers/common/ctime.c index ec5fa10b78..e474ea8c12 100644 --- a/components/libc/compilers/common/ctime.c +++ b/components/libc/compilers/common/ctime.c @@ -444,7 +444,7 @@ int settimeofday(const struct timeval *tv, const struct timezone *tz) * The tz_dsttime field has never been used under Linux. * Thus, the following is purely of historic interest. */ - if (tv != RT_NULL && tv->tv_usec >= 0 && tv->tv_sec >= 0) + if (tv != RT_NULL && (long)tv->tv_usec >= 0 && (long)tv->tv_sec >= 0) { if (_control_rtc(RT_DEVICE_CTRL_RTC_SET_TIMEVAL, (void *)tv) == RT_EOK) return 0;