https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61319
--- Comment #11 from Jakub Jelinek <jakub at gcc dot gnu.org> --- (In reply to Marek Polacek from comment #10) > Ah. I hope the following will help: > > --- a/gcc/testsuite/c-c++-common/ubsan/float-cast-overflow-1.c > +++ b/gcc/testsuite/c-c++-common/ubsan/float-cast-overflow-1.c > @@ -5,6 +5,16 @@ > #include <limits.h> > #include "float-cast.h" > > +#if !defined LLONG_MAX && defined __LONG_LONG_MAX__ > +# define LLONG_MAX __LONG_LONG_MAX__ > +#endif > +#if !defined LLONG_MIN && defined __LONG_LONG_MAX__ > +# define LLONG_MIN (-__LONG_LONG_MAX__ - 1LL) > +#endif > +#if !defined ULLONG_MAX && defined __LONG_LONG_MAX__ > +# define ULLONG_MAX (__LONG_LONG_MAX__ * 2ULL + 1ULL) > +#endif > + > int > main (void) > { __LONG_LONG_MAX__ is always defined, no need to test for that.