[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
Fri Mar 5 08:40:20 PST 2021
Mordante added a comment.
In D97283#2606794 <https://reviews.llvm.org/D97283#2606794>, @tmatheson wrote:
>> make libc++ conditionally use just `__is_unsigned` or a combination of `__is_unsigned && !__is_enum` based on the version of Clang
> - Since this is marked as an Embarcadero builtin, it might break whatever that is and I'm not sure who to ask about it
`__is_signed` is also as an Embarcadero builtin and we modified that builtin.
> - Keep the patch small
I'm in favour of that too.
> If this is the preferred approach though and the above are not concerns, I can also change the builtin and add the extra `#ifdef`.
I also prefer to fix Clang. I thought we could first land this patch and then fix Clang. But I don't object against fixing Clang first.
I think we can make two separate patches and first process the Clang fix and then the libc++ part.
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
More information about the libcxx-commits