diff --git a/ChangeLog b/ChangeLog index 222bf1555..2ea75e25c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2012-01-12 Alexandre Duret-Lutz + + Do use of tr1::unordered_map with G++ 4.0.0. + + * m4/stl.m4 (AC_HEADER_TR1_UNORDERED_MAP): Add some code so + we don't pick a broken tr1::unordered_map. + 2012-01-06 Alexandre Duret-Lutz * lrde-upload.sh: Retrieve the package version from configure.ac. diff --git a/m4/stl.m4 b/m4/stl.m4 index 439630edd..5888b5b59 100644 --- a/m4/stl.m4 +++ b/m4/stl.m4 @@ -23,7 +23,11 @@ AC_DEFUN([AC_HEADER_TR1_UNORDERED_MAP], [ AC_LANG_CPLUSPLUS ac_save_CXXFLAGS="$CXXFLAGS" CXXFLAGS="$CXXFLAGS -Werror" - AC_TRY_COMPILE([#include ], [using std::tr1::unordered_map;], +# GCC 4.0.0 has tr1/unordered_map, but it fails to compile the following code + AC_TRY_COMPILE([#include ], + [using std::tr1::unordered_map; + const unordered_map t; + return t.find(42) == t.end();], [ac_cv_cxx_tr1_unordered_map=yes], [ac_cv_cxx_tr1_unordered_map=no]) CXXFLAGS="$ac_save_CXXFLAGS" AC_LANG_RESTORE