Hi again,
just little more details:
I'm currently blocked by the following issue. If I try to compile,
with -std=gnu++98 (the default for C++) and -pedantic-errors:
template<typename T>
struct limits;
template<>
struct limits<__int128> { };
template<>
struct limits<unsigned __int128> { };
I get:
a.cc:8:26: error: ISO C++ does not support ‘__int128’ for ‘type name’
[-pedantic]
a.cc:8:10: error: redefinition of ‘struct limits<__int128>’
a.cc:5:10: error: previous definition of ‘struct limits<__int128>’
If I remove the second specialization:
template<typename T>
struct limits;
template<>
struct limits<__int128> { };
then it compiles just fine, with -pedantic and -pedantic-errors too.
Thus, it looks like something is definitely wrong here. Well, the first
and second line of the error message above - wrongly talking about
__int128 instead of unsigned __int128, should also be an hint...
Thanks again,
Paolo.