Commit 75b9014f authored by Daniel Black's avatar Daniel Black

MDEV-26136: Correct AIX/macOS cast warning (my_time.h)

tv_usec is a (suseconds_t) so we cast to it. Prevents the AIX(gcc-10) warning:

include/my_time.h: In function 'void my_timeval_trunc(timeval*, uint)':
include/my_time.h:249:65: warning: conversion from 'long int' to 'suseconds_t' {aka 'int'} may change value [-Wconversion]
  249 |   tv->tv_usec-= my_time_fraction_remainder(tv->tv_usec, decimals);
      |

macOS is: conversion from 'long int' to '__darwin_suseconds_t' {aka 'int'} may change value

On Windows suseconds_t isn't defined so we use the existing
long return type of my_time_fraction_remainder.

Reviewed by Marko Mäkelä

Closes: #2079
parent c1ab0e6f
...@@ -220,9 +220,12 @@ static inline void my_time_trunc(MYSQL_TIME *ltime, uint decimals) ...@@ -220,9 +220,12 @@ static inline void my_time_trunc(MYSQL_TIME *ltime, uint decimals)
{ {
ltime->second_part-= my_time_fraction_remainder(ltime->second_part, decimals); ltime->second_part-= my_time_fraction_remainder(ltime->second_part, decimals);
} }
#ifdef _WIN32
#define suseconds_t long
#endif
static inline void my_timeval_trunc(struct timeval *tv, uint decimals) static inline void my_timeval_trunc(struct timeval *tv, uint decimals)
{ {
tv->tv_usec-= my_time_fraction_remainder(tv->tv_usec, decimals); tv->tv_usec-= (suseconds_t) my_time_fraction_remainder(tv->tv_usec, decimals);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment