================
@@ -0,0 +1,19 @@
+// RUN: %clang_cc1 -std=c++17 -fsyntax-only -verify %s
+// RUN: %clang_cc1 -std=c++17 -fsyntax-only -verify 
-fexperimental-new-constant-interpreter %s
+// expected-no-diagnostics
+
+constexpr float InfFloat = __builtin_inff();
+constexpr float NegInfFloat = -__builtin_inff();
+
----------------
hubert-reinterpretcast wrote:

> Any other tests that you would like to be added here?

The consensus for the overall constexpr cmath design in Clang from 
https://github.com/llvm/llvm-project/pull/158048#issuecomment-3313760151 was 
that the constant evaluation would fail if `FENV_ACCESS` is ` ON` and the 
context is not one where the language requires constant evaluation. That way, 
dynamic rounding modes and the setting of `FE_INEXACT` at run time are observed.

Once the logic is added, there should be a codegen test that expects the call 
to not be folded when `FENV_ACCESS` is `ON`.

https://github.com/llvm/llvm-project/pull/199808
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to