diff --git a/lib/include_/bitutil.h b/lib/include_/bitutil.h index 53990d3..f5664bd 100644 --- a/lib/include_/bitutil.h +++ b/lib/include_/bitutil.h @@ -145,7 +145,14 @@ void bitzdec(unsigned char *in, unsigned n, unsigned esize); //------- Lossy floating point transform: pad the trailing mantissa bits with zeros according to the error e (ex. e=0.00001) // must include float.h to use _Float16 (see icapp.c) - #if defined(FLT16_MAX) +#if defined(__clang__) && defined(__is_identifier) + #if !__is_identifier(_Float16) + #undef FLT16_BUILTIN + #endif +#elif defined(FLT16_MAX) +#define FLT16_BUILTIN +#endif + #ifdef FLT16_BUILTIN _Float16 _fprazor16(_Float16 d, float e, int lg2e); void fprazor16(_Float16 *in, unsigned n, _Float16 *out, float e); #endif