aboutsummaryrefslogtreecommitdiff
path: root/configure.ac
diff options
context:
space:
mode:
authorAvatar Ciaran McCreesh <ciaran.mccreesh@googlemail.com> 2007-11-09 11:59:52 +0000
committerAvatar Ciaran McCreesh <ciaran.mccreesh@googlemail.com> 2007-11-09 11:59:52 +0000
commitafefdaff0555a68488bb11d4e4c7f5e790f25917 (patch)
treeafab105b0b03d95adaa12d95187e757d8cec6872 /configure.ac
parent7e95436491e6b6b496dfc9b197087cc417239c6e (diff)
downloadpaludis-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.ac15
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])