[PATCH] D67897: Fix __is_signed builtin
Richard Smith - zygoloid via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Sun Sep 22 20:40:45 PDT 2019
rsmith accepted this revision.
rsmith added a comment.
This revision is now accepted and ready to land.
In D67897#1678420 <https://reviews.llvm.org/D67897#1678420>, @zoecarver wrote:
> > (Can I interest you in fixing the misbehaviour for enumeration types too?)
>
> Certainly. You mean that `__is_signed` should return false for enumeration types?
Yes, exactly.
================
Comment at: clang/docs/LanguageExtensions.rst:1165
Note that this currently returns true for enumeration types if the underlying
- type is signed, and returns false for floating-point types, in violation of
- the requirements for ``std::is_signed``. This behavior is likely to change in
- a future version of Clang.
+ type is signed, and returns true for floating-point types.
* ``__is_standard_layout`` (C++, GNU, Microsoft, Embarcadero)
----------------
I'd just drop the second half of this sentence, and keep the "likely to change" warning for the non-conformance for enumeration types until that's fixed. (We already have an introductory sentence that says we follow the standard-specified behavior for traits marked (C++) unless otherwise specified.)
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D67897/new/
https://reviews.llvm.org/D67897
More information about the cfe-commits
mailing list