diff options
author | 2007-11-09 11:59:52 +0000 | |
---|---|---|
committer | 2007-11-09 11:59:52 +0000 | |
commit | afefdaff0555a68488bb11d4e4c7f5e790f25917 (patch) | |
tree | afab105b0b03d95adaa12d95187e757d8cec6872 /configure.ac | |
parent | 7e95436491e6b6b496dfc9b197087cc417239c6e (diff) | |
download | paludis-afefdaff0555a68488bb11d4e4c7f5e790f25917.tar.gz paludis-afefdaff0555a68488bb11d4e4c7f5e790f25917.tar.xz |
Support compilers that think that there shouldn't be a template<> before template specialisations of templates
Diffstat (limited to 'configure.ac')
-rw-r--r-- | configure.ac | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac index c1a702eb6..90be6cc30 100644 --- a/configure.ac +++ b/configure.ac @@ -171,6 +171,20 @@ using n::r_x; AC_MSG_ERROR([Your compiler is b0rked (GCC bug 31899?)])]) dnl }}} +dnl {{{ check for whether we want an extra template<> for Implementation +AC_MSG_CHECKING([whether your compiler wants template<> for template specialisations of template classes]) +AC_COMPILE_IFELSE([ +template <typename T_> struct S; +template <typename T_> struct T; +template <> template <typename T_> struct S<T<T_> > { }; +], + [AC_MSG_RESULT([yes])], + [AC_MSG_RESULT([no]) + PALUDIS_CXXFLAGS="${PALUDIS_CXXFLAGS} -DPALUDIS_NO_DOUBLE_TEMPLATE=1" + PALUDIS_PC_CFLAGS="${PALUDIS_PC_CFLAGS} -DPALUDIS_NO_DOUBLE_TEMPLATE=1" + ]) +dnl }}} + dnl {{{ check for static_assert AC_MSG_CHECKING([for compiler support for static_assert]) AC_COMPILE_IFELSE([ @@ -566,6 +580,7 @@ if test "x${cxx_compiler_icc}" = "xyes" ; then CHECK_CXXFLAG([-wd383]) CHECK_CXXFLAG([-wd444]) CHECK_CXXFLAG([-wd488]) + CHECK_CXXFLAG([-wd810]) CHECK_CXXFLAG([-wd981]) CHECK_CXXFLAG([-wd1125]) CHECK_CXXFLAG([-wd1418]) |