[patch] libstdc++/60326 make_signed/make_unsigned for wide char types

Jonathan Wakely jwakely@redhat.com
Thu May 15 12:31:00 GMT 2014


We are missing specializations for wchar_t, char16_t and char32_t.

The preprocessor condition I've added at the top of <type_traits> is
to avoid needing to #include <cstdint>, which drops names in the
global namespace. GCC defines __UINT_LEAST16_TYPE__ and
__UINT_LEAST32_TYPE__ so we can use them, but other compilers may not
(Clang doesn't) so just #include <cstdint> and accept that <stdint.h>
might put its contents in the global namespace.

Tested x86_64-linux, committed to trunk. I'd like to put this on the
branch for 4.9.1 too, but will wait a while.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: patch.txt
Type: text/x-patch
Size: 7676 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20140515/d1cb72b2/attachment.bin>


More information about the Gcc-patches mailing list