================ @@ -0,0 +1,38 @@ +// RUN: %clang_cc1 -DWIN -verify -std=c++23 -fsyntax-only %s +// RUN: %clang_cc1 -verify -std=c++23 -fsyntax-only %s + +// expected-no-diagnostics + + +#ifdef WIN +#define INFINITY ((float)(1e+300 * 1e+300)) +#define NAN (-(float)(INFINITY * 0.0F)) +#else +#define NAN (__builtin_nanf("")) +#define INFINITY (__builtin_inff()) +#endif + +int main() { + int i; + + // fmin + static_assert(__builtin_fmin(15.24, 1.3) == 1.3, ""); + static_assert(__builtin_fmin(-0.0, +0.0) == -0.0, ""); + static_assert(__builtin_fmin(+0.0, -0.0) == -0.0, ""); ---------------- hubert-reinterpretcast wrote:
... also, optional `static_assert` message should be removed if not used in a helpful manner. Example (please apply to other lines too): ```suggestion static_assert(is_same_val<__builtin_fmin(-0.0, +0.0), -0.0>); static_assert(is_same_val<__builtin_fmin(+0.0, -0.0), -0.0>); ``` https://github.com/llvm/llvm-project/pull/88978 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits