On Wed, 1 Jan 2014, Paolo Bolzoni wrote:
[Please put me in CC since I am not part of this list] Dear list, I was playing around with g++ when I got this weird behavior: % cat a.cpp #include <iostream> #include <limits> int main() { } % g++ a.cpp % g++ -m32 a.cpp In file included from a.cpp:2:0: /usr/include/c++/4.8.2/limits:1405:35: error: template argument 1 is invalid struct numeric_limits<__int128> ^ /usr/include/c++/4.8.2/limits:1479:44: error: template argument 1 is invalid struct numeric_limits<unsigned __int128> ^ % Compiling with -m32 breaks programs which include <limits>. Is that a bug? Is there a work-around? Thanks.
Compile with the -v flag and compare the include search paths for -m64 and for -m32. g++ is using the wrong bits/c++config.h with -m32, probably because of some variable in your environment.
-- Marc Glisse