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

Tomas Matheson via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Tue Feb 23 09:21:55 PST 2021


tmatheson marked an inline comment as done.
tmatheson added a comment.

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).

You made me realise that I was missing a test that checks enums with signed and unsigned underlying types, so I have added those now.


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