[libcxx-commits] [libcxx] [libc++][hardening] Always enable all checks during constant evaluation (PR #107713)

Mital Ashok via libcxx-commits libcxx-commits at lists.llvm.org
Sat Sep 7 14:38:06 PDT 2024


================
@@ -40,11 +40,11 @@ struct __simd_storage<_Tp, simd_abi::__vec_ext<_Np>> {
   _Tp __data __attribute__((__vector_size__(std::__bit_ceil((sizeof(_Tp) * _Np)))));
----------------
MitalAshok wrote:

There are a bunch of errors on the GCC 14 test runner on this line like:

```
/home/runner/_work/llvm-project/llvm-project/build/generic-gcc/libcxx/test-suite-install/include/c++/v1/experimental/__simd/vec_ext.h:40:7: error: ‘vector_size’ attribute argument value ‘std::__1::__bit_ceil<long unsigned int>((sizeof (char) * 16))’ is not an integer constant
   40 |   _Tp __data __attribute__((__vector_size__(std::__bit_ceil((sizeof(_Tp) * _Np)))));
      |       ^~~~~~
```

I cannot reproduce this locally with gcc-15 (HEAD), so I'll investigate if this is a GCC bug or if some of the assertions in __bit_ceil are wrong

https://github.com/llvm/llvm-project/pull/107713


More information about the libcxx-commits mailing list