[libcxx-commits] [PATCH] D97283: [libcxx][type_traits] is_unsigned is false for enum types

Mark de Wever via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Tue Feb 23 09:42:37 PST 2021


Mordante added a comment.

In D97283#2582244 <https://reviews.llvm.org/D97283#2582244>, @tmatheson wrote:

> In D97283#2582217 <https://reviews.llvm.org/D97283#2582217>, @Mordante wrote:
>
>> Why doesn't `is_signed` be updated in the same way? I see the builds on buildkite passing, but the difference between `is_unsigned` and `is_signed` look very odd to me.
>
> `is_signed` is based on the `__is_signed` builtin, which unlike `__is_unsigned` is not broken for enums since clang 9 (according to the comment on the `is_signed` implementation).

I read that for comment for `is_signed` and assumed it was a bug before clang 9 and only in `__is_signed`. But assumptions... seems not to be fixed for `__is_unsigned` yet.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D97283/new/

https://reviews.llvm.org/D97283



More information about the libcxx-commits mailing list