[patch] change specific int128 -> generic intN

Jonathan Wakely jwakely@redhat.com
Sat May 17 10:19:00 GMT 2014


On 16/05/14 16:51 -0400, DJ Delorie wrote:
>
>So I'm still working on macro-izing the C++ headers, and I ran into this error:
>
>.../msp430-elf/large/libstdc++-v3/include/bits/istream.tcc:522:16: error: '__max' is not a member of '__gnu_cxx::__numeric_traits<__int20>'
>     if (__n == __gnu_cxx::__numeric_traits<streamsize>::__max
>                ^
>
>I can't figure out how to fix this.  I added __int20 to
>std::numeric_traits, and it returns true for is_integer, so it should
>act like all the other integer types, and I can't see anything in
>__gnu_cxx::__numeric_traits that has a "list of all types" to add
>__int20 to.
>
>Ideas?

The non-standard __numeric_traits uses the non-standard __is_integer
trait (which is available in C++03, unlike std::is_integer). Have you
specialized __is_integer in include/bits/cpp_type_traits.h ?



More information about the Libstdc++ mailing list