hubert-reinterpretcast wrote:

A problem with the current patch is that it does not evaluate, even in constant 
expression contexts, cases that require rounding:
```cpp
extern constexpr float onepluszeroeps = __builtin_fmaf(__FLT_EPSILON__, .0f, 
1.f);
extern constexpr float oneplushalfeps = __builtin_fmaf(__FLT_EPSILON__, .5f, 
1.f);
```

```
<stdin>:2:24: error: constexpr variable 'oneplushalfeps' must be initialized by 
a constant expression
    2 | extern constexpr float oneplushalfeps = __builtin_fmaf(__FLT_EPSILON__, 
.5f, 1.f);
      |                        ^                
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
```

https://github.com/llvm/llvm-project/pull/113020
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to