[libcxx-commits] [libcxx] [libcxx] applies integer-like changes from [P2393R1] (PR #74161)
Louis Dionne via libcxx-commits
libcxx-commits at lists.llvm.org
Wed Dec 6 08:25:38 PST 2023
https://github.com/ldionne commented:
Thanks for the patch!
Can we add some tests for this change? I think this amounts to asking which integer-class types (if any) we support in libc++ / Clang. IIUC, we have the following integer-class types in Clang: `__int128_t`, `__uint128_t` and `_BitInt(N)` -- are there more? Do we "support" them, and if so, in what places? It seems like `std::atomic` intentionally doesn't support `_BitInt`, see https://github.com/llvm/llvm-project/blob/main/libcxx/test/libcxx/atomics/bit-int.verify.cpp#L11, but I don't know about other classes.
If the answer is "yes, those are integer-class types, we support them and they should work in Ranges", then I think we should add some tests with those types to lock down the intent of `P2393R1`. We might not end up testing exactly the diff in this patch because of conversion behavior which might not strictly require those casts, but I think it would be important to make sure that they work before claiming support for `P2393R1`. WDYT?
https://github.com/llvm/llvm-project/pull/74161
More information about the libcxx-commits
mailing list