aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAvatar Ciaran McCreesh <ciaran.mccreesh@googlemail.com> 2010-07-21 20:28:40 +0100
committerAvatar Ciaran McCreesh <ciaran.mccreesh@googlemail.com> 2010-07-22 18:54:45 +0100
commit801afbbaf5570b96b4717147b3d7f6ff93454c8d (patch)
treef5f971308c9ddcc083f11f264fadded3e4d2d644
parent55420176135d83033c6411430ac665dbe4d106cf (diff)
downloadpaludis-801afbbaf5570b96b4717147b3d7f6ff93454c8d.tar.gz
paludis-801afbbaf5570b96b4717147b3d7f6ff93454c8d.tar.xz
Require c++0x variadic templates
-rw-r--r--configure.ac6
-rw-r--r--paludis/util/make_named_values.hh592
-rw-r--r--paludis/util/type_list-fwd.hh40
-rw-r--r--paludis/util/type_list.hh101
4 files changed, 7 insertions, 732 deletions
diff --git a/configure.ac b/configure.ac
index 8d015ac..959092e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -760,11 +760,9 @@ void f(const T_ & ... a)
{
}
],
- [AC_MSG_RESULT([yes])
- PALUDIS_CXXFLAGS="${PALUDIS_CXXFLAGS} -DPALUDIS_HAVE_VARIADIC_TEMPLATES=1"
- PALUDIS_PC_CFLAGS="${PALUDIS_PC_CFLAGS} -DPALUDIS_HAVE_VARIADIC_TEMPLATES=1"
- ],
+ [AC_MSG_RESULT([yes])],
[AC_MSG_RESULT([no])
+ AC_MSG_ERROR([your compiler does not support c++0x variadic templates])
])
dnl }}}
diff --git a/paludis/util/make_named_values.hh b/paludis/util/make_named_values.hh
index 0bfd584..0210576 100644
--- a/paludis/util/make_named_values.hh
+++ b/paludis/util/make_named_values.hh
@@ -1,7 +1,7 @@
/* vim: set sw=4 sts=4 et foldmethod=syntax : */
/*
- * Copyright (c) 2008, 2009 Ciaran McCreesh
+ * Copyright (c) 2008, 2009, 2010 Ciaran McCreesh
*
* This file is part of the Paludis package manager. Paludis is free software;
* you can redistribute it and/or modify it under the terms of the GNU General
@@ -30,9 +30,7 @@
namespace paludis
{
-#ifdef PALUDIS_HAVE_VARIADIC_TEMPLATES
-
-# ifdef PALUDIS_HAVE_RVALUE_REFERENCES
+#ifdef PALUDIS_HAVE_RVALUE_REFERENCES
template <typename R_, typename... T_>
R_ make_named_values(T_ && ... a)
@@ -41,7 +39,7 @@ namespace paludis
return result;
}
-# else
+#else
template <typename R_, typename... T_>
R_ make_named_values(const T_ & ... a)
@@ -50,590 +48,6 @@ namespace paludis
return result;
}
-# endif
-
-#else
-
- template <typename R_, typename T1_>
- R_ make_named_values(const T1_ & v1)
- {
- R_ result = { v1 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2)
- {
- R_ result = { v1, v2 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3)
- {
- R_ result = { v1, v2, v3 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4)
- {
- R_ result = { v1, v2, v3, v4 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5)
- {
- R_ result = { v1, v2, v3, v4, v5 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6)
- {
- R_ result = { v1, v2, v3, v4, v5, v6 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_, typename T12_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11, const T12_ & v12)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_, typename T12_, typename T13_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11, const T12_ & v12, const T13_ & v13)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_, typename T12_, typename T13_, typename T14_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11, const T12_ & v12, const T13_ & v13, const T14_ & v14)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_, typename T12_, typename T13_, typename T14_, typename T15_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11, const T12_ & v12, const T13_ & v13, const T14_ & v14, const T15_ & v15)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_, typename T12_, typename T13_, typename T14_, typename T15_,
- typename T16_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11, const T12_ & v12, const T13_ & v13, const T14_ & v14, const T15_ & v15,
- const T16_ & v16)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_, typename T12_, typename T13_, typename T14_, typename T15_,
- typename T16_, typename T17_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11, const T12_ & v12, const T13_ & v13, const T14_ & v14, const T15_ & v15,
- const T16_ & v16, const T17_ & v17)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_, typename T12_, typename T13_, typename T14_, typename T15_,
- typename T16_, typename T17_, typename T18_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11, const T12_ & v12, const T13_ & v13, const T14_ & v14, const T15_ & v15,
- const T16_ & v16, const T17_ & v17, const T18_ & v18)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_, typename T12_, typename T13_, typename T14_, typename T15_,
- typename T16_, typename T17_, typename T18_, typename T19_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11, const T12_ & v12, const T13_ & v13, const T14_ & v14, const T15_ & v15,
- const T16_ & v16, const T17_ & v17, const T18_ & v18, const T19_ & v19)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_, typename T12_, typename T13_, typename T14_, typename T15_,
- typename T16_, typename T17_, typename T18_, typename T19_, typename T20_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11, const T12_ & v12, const T13_ & v13, const T14_ & v14, const T15_ & v15,
- const T16_ & v16, const T17_ & v17, const T18_ & v18, const T19_ & v19, const T20_ & v20)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_, typename T12_, typename T13_, typename T14_, typename T15_,
- typename T16_, typename T17_, typename T18_, typename T19_, typename T20_,
- typename T21_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11, const T12_ & v12, const T13_ & v13, const T14_ & v14, const T15_ & v15,
- const T16_ & v16, const T17_ & v17, const T18_ & v18, const T19_ & v19, const T20_ & v20,
- const T21_ & v21)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20,
- v21 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_, typename T12_, typename T13_, typename T14_, typename T15_,
- typename T16_, typename T17_, typename T18_, typename T19_, typename T20_,
- typename T21_, typename T22_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11, const T12_ & v12, const T13_ & v13, const T14_ & v14, const T15_ & v15,
- const T16_ & v16, const T17_ & v17, const T18_ & v18, const T19_ & v19, const T20_ & v20,
- const T21_ & v21, const T22_ & v22)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20,
- v21, v22 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_, typename T12_, typename T13_, typename T14_, typename T15_,
- typename T16_, typename T17_, typename T18_, typename T19_, typename T20_,
- typename T21_, typename T22_, typename T23_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11, const T12_ & v12, const T13_ & v13, const T14_ & v14, const T15_ & v15,
- const T16_ & v16, const T17_ & v17, const T18_ & v18, const T19_ & v19, const T20_ & v20,
- const T21_ & v21, const T22_ & v22, const T23_ & v23)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20,
- v21, v22, v23 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_, typename T12_, typename T13_, typename T14_, typename T15_,
- typename T16_, typename T17_, typename T18_, typename T19_, typename T20_,
- typename T21_, typename T22_, typename T23_, typename T24_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11, const T12_ & v12, const T13_ & v13, const T14_ & v14, const T15_ & v15,
- const T16_ & v16, const T17_ & v17, const T18_ & v18, const T19_ & v19, const T20_ & v20,
- const T21_ & v21, const T22_ & v22, const T23_ & v23, const T24_ & v24)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20,
- v21, v22, v23, v24 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_, typename T12_, typename T13_, typename T14_, typename T15_,
- typename T16_, typename T17_, typename T18_, typename T19_, typename T20_,
- typename T21_, typename T22_, typename T23_, typename T24_, typename T25_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11, const T12_ & v12, const T13_ & v13, const T14_ & v14, const T15_ & v15,
- const T16_ & v16, const T17_ & v17, const T18_ & v18, const T19_ & v19, const T20_ & v20,
- const T21_ & v21, const T22_ & v22, const T23_ & v23, const T24_ & v24, const T25_ & v25)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20,
- v21, v22, v23, v24, v25 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_, typename T12_, typename T13_, typename T14_, typename T15_,
- typename T16_, typename T17_, typename T18_, typename T19_, typename T20_,
- typename T21_, typename T22_, typename T23_, typename T24_, typename T25_,
- typename T26_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11, const T12_ & v12, const T13_ & v13, const T14_ & v14, const T15_ & v15,
- const T16_ & v16, const T17_ & v17, const T18_ & v18, const T19_ & v19, const T20_ & v20,
- const T21_ & v21, const T22_ & v22, const T23_ & v23, const T24_ & v24, const T25_ & v25,
- const T26_ & v26)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20,
- v21, v22, v23, v24, v25, v26 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_, typename T12_, typename T13_, typename T14_, typename T15_,
- typename T16_, typename T17_, typename T18_, typename T19_, typename T20_,
- typename T21_, typename T22_, typename T23_, typename T24_, typename T25_,
- typename T26_, typename T27_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11, const T12_ & v12, const T13_ & v13, const T14_ & v14, const T15_ & v15,
- const T16_ & v16, const T17_ & v17, const T18_ & v18, const T19_ & v19, const T20_ & v20,
- const T21_ & v21, const T22_ & v22, const T23_ & v23, const T24_ & v24, const T25_ & v25,
- const T26_ & v26, const T27_ & v27)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20,
- v21, v22, v23, v24, v25, v26, v27 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_, typename T12_, typename T13_, typename T14_, typename T15_,
- typename T16_, typename T17_, typename T18_, typename T19_, typename T20_,
- typename T21_, typename T22_, typename T23_, typename T24_, typename T25_,
- typename T26_, typename T27_, typename T28_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11, const T12_ & v12, const T13_ & v13, const T14_ & v14, const T15_ & v15,
- const T16_ & v16, const T17_ & v17, const T18_ & v18, const T19_ & v19, const T20_ & v20,
- const T21_ & v21, const T22_ & v22, const T23_ & v23, const T24_ & v24, const T25_ & v25,
- const T26_ & v26, const T27_ & v27, const T28_ & v28)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20,
- v21, v22, v23, v24, v25, v26, v27, v28 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_, typename T12_, typename T13_, typename T14_, typename T15_,
- typename T16_, typename T17_, typename T18_, typename T19_, typename T20_,
- typename T21_, typename T22_, typename T23_, typename T24_, typename T25_,
- typename T26_, typename T27_, typename T28_, typename T29_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11, const T12_ & v12, const T13_ & v13, const T14_ & v14, const T15_ & v15,
- const T16_ & v16, const T17_ & v17, const T18_ & v18, const T19_ & v19, const T20_ & v20,
- const T21_ & v21, const T22_ & v22, const T23_ & v23, const T24_ & v24, const T25_ & v25,
- const T26_ & v26, const T27_ & v27, const T28_ & v28, const T29_ & v29)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20,
- v21, v22, v23, v24, v25, v26, v27, v28, v29 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_, typename T12_, typename T13_, typename T14_, typename T15_,
- typename T16_, typename T17_, typename T18_, typename T19_, typename T20_,
- typename T21_, typename T22_, typename T23_, typename T24_, typename T25_,
- typename T26_, typename T27_, typename T28_, typename T29_, typename T30_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11, const T12_ & v12, const T13_ & v13, const T14_ & v14, const T15_ & v15,
- const T16_ & v16, const T17_ & v17, const T18_ & v18, const T19_ & v19, const T20_ & v20,
- const T21_ & v21, const T22_ & v22, const T23_ & v23, const T24_ & v24, const T25_ & v25,
- const T26_ & v26, const T27_ & v27, const T28_ & v28, const T29_ & v29, const T30_ & v30)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20,
- v21, v22, v23, v24, v25, v26, v27, v28, v29, v30 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_, typename T12_, typename T13_, typename T14_, typename T15_,
- typename T16_, typename T17_, typename T18_, typename T19_, typename T20_,
- typename T21_, typename T22_, typename T23_, typename T24_, typename T25_,
- typename T26_, typename T27_, typename T28_, typename T29_, typename T30_,
- typename T31_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11, const T12_ & v12, const T13_ & v13, const T14_ & v14, const T15_ & v15,
- const T16_ & v16, const T17_ & v17, const T18_ & v18, const T19_ & v19, const T20_ & v20,
- const T21_ & v21, const T22_ & v22, const T23_ & v23, const T24_ & v24, const T25_ & v25,
- const T26_ & v26, const T27_ & v27, const T28_ & v28, const T29_ & v29, const T30_ & v30,
- const T31_ & v31)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20,
- v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_, typename T12_, typename T13_, typename T14_, typename T15_,
- typename T16_, typename T17_, typename T18_, typename T19_, typename T20_,
- typename T21_, typename T22_, typename T23_, typename T24_, typename T25_,
- typename T26_, typename T27_, typename T28_, typename T29_, typename T30_,
- typename T31_, typename T32_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11, const T12_ & v12, const T13_ & v13, const T14_ & v14, const T15_ & v15,
- const T16_ & v16, const T17_ & v17, const T18_ & v18, const T19_ & v19, const T20_ & v20,
- const T21_ & v21, const T22_ & v22, const T23_ & v23, const T24_ & v24, const T25_ & v25,
- const T26_ & v26, const T27_ & v27, const T28_ & v28, const T29_ & v29, const T30_ & v30,
- const T31_ & v31, const T32_ & v32)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20,
- v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_, typename T12_, typename T13_, typename T14_, typename T15_,
- typename T16_, typename T17_, typename T18_, typename T19_, typename T20_,
- typename T21_, typename T22_, typename T23_, typename T24_, typename T25_,
- typename T26_, typename T27_, typename T28_, typename T29_, typename T30_,
- typename T31_, typename T32_, typename T33_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11, const T12_ & v12, const T13_ & v13, const T14_ & v14, const T15_ & v15,
- const T16_ & v16, const T17_ & v17, const T18_ & v18, const T19_ & v19, const T20_ & v20,
- const T21_ & v21, const T22_ & v22, const T23_ & v23, const T24_ & v24, const T25_ & v25,
- const T26_ & v26, const T27_ & v27, const T28_ & v28, const T29_ & v29, const T30_ & v30,
- const T31_ & v31, const T32_ & v32, const T33_ & v33)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20,
- v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_, typename T12_, typename T13_, typename T14_, typename T15_,
- typename T16_, typename T17_, typename T18_, typename T19_, typename T20_,
- typename T21_, typename T22_, typename T23_, typename T24_, typename T25_,
- typename T26_, typename T27_, typename T28_, typename T29_, typename T30_,
- typename T31_, typename T32_, typename T33_, typename T34_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11, const T12_ & v12, const T13_ & v13, const T14_ & v14, const T15_ & v15,
- const T16_ & v16, const T17_ & v17, const T18_ & v18, const T19_ & v19, const T20_ & v20,
- const T21_ & v21, const T22_ & v22, const T23_ & v23, const T24_ & v24, const T25_ & v25,
- const T26_ & v26, const T27_ & v27, const T28_ & v28, const T29_ & v29, const T30_ & v30,
- const T31_ & v31, const T32_ & v32, const T33_ & v33, const T34_ & v34)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20,
- v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_, typename T12_, typename T13_, typename T14_, typename T15_,
- typename T16_, typename T17_, typename T18_, typename T19_, typename T20_,
- typename T21_, typename T22_, typename T23_, typename T24_, typename T25_,
- typename T26_, typename T27_, typename T28_, typename T29_, typename T30_,
- typename T31_, typename T32_, typename T33_, typename T34_, typename T35_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11, const T12_ & v12, const T13_ & v13, const T14_ & v14, const T15_ & v15,
- const T16_ & v16, const T17_ & v17, const T18_ & v18, const T19_ & v19, const T20_ & v20,
- const T21_ & v21, const T22_ & v22, const T23_ & v23, const T24_ & v24, const T25_ & v25,
- const T26_ & v26, const T27_ & v27, const T28_ & v28, const T29_ & v29, const T30_ & v30,
- const T31_ & v31, const T32_ & v32, const T33_ & v33, const T34_ & v34, const T35_ & v35)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20,
- v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_, typename T12_, typename T13_, typename T14_, typename T15_,
- typename T16_, typename T17_, typename T18_, typename T19_, typename T20_,
- typename T21_, typename T22_, typename T23_, typename T24_, typename T25_,
- typename T26_, typename T27_, typename T28_, typename T29_, typename T30_,
- typename T31_, typename T32_, typename T33_, typename T34_, typename T35_,
- typename T36_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11, const T12_ & v12, const T13_ & v13, const T14_ & v14, const T15_ & v15,
- const T16_ & v16, const T17_ & v17, const T18_ & v18, const T19_ & v19, const T20_ & v20,
- const T21_ & v21, const T22_ & v22, const T23_ & v23, const T24_ & v24, const T25_ & v25,
- const T26_ & v26, const T27_ & v27, const T28_ & v28, const T29_ & v29, const T30_ & v30,
- const T31_ & v31, const T32_ & v32, const T33_ & v33, const T34_ & v34, const T35_ & v35,
- const T36_ & v36)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20,
- v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_, typename T12_, typename T13_, typename T14_, typename T15_,
- typename T16_, typename T17_, typename T18_, typename T19_, typename T20_,
- typename T21_, typename T22_, typename T23_, typename T24_, typename T25_,
- typename T26_, typename T27_, typename T28_, typename T29_, typename T30_,
- typename T31_, typename T32_, typename T33_, typename T34_, typename T35_,
- typename T36_, typename T37_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11, const T12_ & v12, const T13_ & v13, const T14_ & v14, const T15_ & v15,
- const T16_ & v16, const T17_ & v17, const T18_ & v18, const T19_ & v19, const T20_ & v20,
- const T21_ & v21, const T22_ & v22, const T23_ & v23, const T24_ & v24, const T25_ & v25,
- const T26_ & v26, const T27_ & v27, const T28_ & v28, const T29_ & v29, const T30_ & v30,
- const T31_ & v31, const T32_ & v32, const T33_ & v33, const T34_ & v34, const T35_ & v35,
- const T36_ & v36, const T37_ & v37)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20,
- v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_, typename T12_, typename T13_, typename T14_, typename T15_,
- typename T16_, typename T17_, typename T18_, typename T19_, typename T20_,
- typename T21_, typename T22_, typename T23_, typename T24_, typename T25_,
- typename T26_, typename T27_, typename T28_, typename T29_, typename T30_,
- typename T31_, typename T32_, typename T33_, typename T34_, typename T35_,
- typename T36_, typename T37_, typename T38_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11, const T12_ & v12, const T13_ & v13, const T14_ & v14, const T15_ & v15,
- const T16_ & v16, const T17_ & v17, const T18_ & v18, const T19_ & v19, const T20_ & v20,
- const T21_ & v21, const T22_ & v22, const T23_ & v23, const T24_ & v24, const T25_ & v25,
- const T26_ & v26, const T27_ & v27, const T28_ & v28, const T29_ & v29, const T30_ & v30,
- const T31_ & v31, const T32_ & v32, const T33_ & v33, const T34_ & v34, const T35_ & v35,
- const T36_ & v36, const T37_ & v37, const T38_ & v38)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20,
- v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_, typename T12_, typename T13_, typename T14_, typename T15_,
- typename T16_, typename T17_, typename T18_, typename T19_, typename T20_,
- typename T21_, typename T22_, typename T23_, typename T24_, typename T25_,
- typename T26_, typename T27_, typename T28_, typename T29_, typename T30_,
- typename T31_, typename T32_, typename T33_, typename T34_, typename T35_,
- typename T36_, typename T37_, typename T38_, typename T39_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11, const T12_ & v12, const T13_ & v13, const T14_ & v14, const T15_ & v15,
- const T16_ & v16, const T17_ & v17, const T18_ & v18, const T19_ & v19, const T20_ & v20,
- const T21_ & v21, const T22_ & v22, const T23_ & v23, const T24_ & v24, const T25_ & v25,
- const T26_ & v26, const T27_ & v27, const T28_ & v28, const T29_ & v29, const T30_ & v30,
- const T31_ & v31, const T32_ & v32, const T33_ & v33, const T34_ & v34, const T35_ & v35,
- const T36_ & v36, const T37_ & v37, const T38_ & v38, const T39_ & v39)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20,
- v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39 };
- return result;
- }
-
- template <typename R_, typename T1_, typename T2_, typename T3_, typename T4_, typename T5_,
- typename T6_, typename T7_, typename T8_, typename T9_, typename T10_,
- typename T11_, typename T12_, typename T13_, typename T14_, typename T15_,
- typename T16_, typename T17_, typename T18_, typename T19_, typename T20_,
- typename T21_, typename T22_, typename T23_, typename T24_, typename T25_,
- typename T26_, typename T27_, typename T28_, typename T29_, typename T30_,
- typename T31_, typename T32_, typename T33_, typename T34_, typename T35_,
- typename T36_, typename T37_, typename T38_, typename T39_, typename T40_>
- R_ make_named_values(const T1_ & v1, const T2_ & v2, const T3_ & v3, const T4_ & v4, const T5_ & v5,
- const T6_ & v6, const T7_ & v7, const T8_ & v8, const T9_ & v9, const T10_ & v10,
- const T11_ & v11, const T12_ & v12, const T13_ & v13, const T14_ & v14, const T15_ & v15,
- const T16_ & v16, const T17_ & v17, const T18_ & v18, const T19_ & v19, const T20_ & v20,
- const T21_ & v21, const T22_ & v22, const T23_ & v23, const T24_ & v24, const T25_ & v25,
- const T26_ & v26, const T27_ & v27, const T28_ & v28, const T29_ & v29, const T30_ & v30,
- const T31_ & v31, const T32_ & v32, const T33_ & v33, const T34_ & v34, const T35_ & v35,
- const T36_ & v36, const T37_ & v37, const T38_ & v38, const T39_ & v39, const T40_ & v40)
- {
- R_ result = { v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20,
- v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40 };
- return result;
- }
-
#endif
}
diff --git a/paludis/util/type_list-fwd.hh b/paludis/util/type_list-fwd.hh
index 4da16d2..2a70b7f 100644
--- a/paludis/util/type_list-fwd.hh
+++ b/paludis/util/type_list-fwd.hh
@@ -1,7 +1,7 @@
/* vim: set sw=4 sts=4 et foldmethod=syntax : */
/*
- * Copyright (c) 2008, 2009 Ciaran McCreesh
+ * Copyright (c) 2008, 2009, 2010 Ciaran McCreesh
*
* This file is part of the Paludis package manager. Paludis is free software;
* you can redistribute it and/or modify it under the terms of the GNU General
@@ -27,8 +27,6 @@ namespace paludis
template <typename Item_, typename Tail_>
struct TypeListEntry;
-#ifdef PALUDIS_HAVE_VARIADIC_TEMPLATES
-
template <typename...>
struct MakeTypeList;
@@ -38,42 +36,6 @@ namespace paludis
template <typename H_, typename... T_>
struct MakeTypeList<H_, T_...>;
-#else
-
- template <typename Item_, typename Tail_>
- struct MakeTypeListEntry;
-
- template <
- typename T01_ = TypeListTail,
- typename T02_ = TypeListTail,
- typename T03_ = TypeListTail,
- typename T04_ = TypeListTail,
- typename T05_ = TypeListTail,
- typename T06_ = TypeListTail,
- typename T07_ = TypeListTail,
- typename T08_ = TypeListTail,
- typename T09_ = TypeListTail,
- typename T10_ = TypeListTail,
- typename T11_ = TypeListTail,
- typename T12_ = TypeListTail,
- typename T13_ = TypeListTail,
- typename T14_ = TypeListTail,
- typename T15_ = TypeListTail,
- typename T16_ = TypeListTail,
- typename T17_ = TypeListTail,
- typename T18_ = TypeListTail,
- typename T19_ = TypeListTail,
- typename T20_ = TypeListTail,
- typename T21_ = TypeListTail,
- typename T22_ = TypeListTail,
- typename T23_ = TypeListTail,
- typename T24_ = TypeListTail,
- typename T25_ = TypeListTail
- >
- struct MakeTypeList;
-
-#endif
-
template <typename TypeList_>
struct MakeTypeListConst;
diff --git a/paludis/util/type_list.hh b/paludis/util/type_list.hh
index 6281096..8070a3f 100644
--- a/paludis/util/type_list.hh
+++ b/paludis/util/type_list.hh
@@ -1,7 +1,7 @@
/* vim: set sw=4 sts=4 et foldmethod=syntax : */
/*
- * Copyright (c) 2008, 2009 Ciaran McCreesh
+ * Copyright (c) 2008, 2009, 2010 Ciaran McCreesh
*
* This file is part of the Paludis package manager. Paludis is free software;
* you can redistribute it and/or modify it under the terms of the GNU General
@@ -35,8 +35,6 @@ namespace paludis
typedef Tail_ Tail;
};
-#ifdef PALUDIS_HAVE_VARIADIC_TEMPLATES
-
template <>
struct MakeTypeList<>
{
@@ -49,103 +47,6 @@ namespace paludis
typedef TypeListEntry<H_, typename MakeTypeList<T_...>::Type> Type;
};
-#else
-
- template <typename Item_, typename Tail_>
- struct MakeTypeListEntry
- {
- typedef TypeListEntry<Item_, Tail_> Type;
- };
-
- template <typename Tail_>
- struct MakeTypeListEntry<TypeListTail, Tail_>
- {
- typedef TypeListTail Type;
- };
-
- template <
- typename T01_,
- typename T02_,
- typename T03_,
- typename T04_,
- typename T05_,
- typename T06_,
- typename T07_,
- typename T08_,
- typename T09_,
- typename T10_,
- typename T11_,
- typename T12_,
- typename T13_,
- typename T14_,
- typename T15_,
- typename T16_,
- typename T17_,
- typename T18_,
- typename T19_,
- typename T20_,
- typename T21_,
- typename T22_,
- typename T23_,
- typename T24_,
- typename T25_
- >
- struct MakeTypeList
- {
- typedef
- typename MakeTypeListEntry<T01_,
- typename MakeTypeListEntry<T02_,
- typename MakeTypeListEntry<T03_,
- typename MakeTypeListEntry<T04_,
- typename MakeTypeListEntry<T05_,
- typename MakeTypeListEntry<T06_,
- typename MakeTypeListEntry<T07_,
- typename MakeTypeListEntry<T08_,
- typename MakeTypeListEntry<T09_,
- typename MakeTypeListEntry<T10_,
- typename MakeTypeListEntry<T11_,
- typename MakeTypeListEntry<T12_,
- typename MakeTypeListEntry<T13_,
- typename MakeTypeListEntry<T14_,
- typename MakeTypeListEntry<T15_,
- typename MakeTypeListEntry<T16_,
- typename MakeTypeListEntry<T17_,
- typename MakeTypeListEntry<T18_,
- typename MakeTypeListEntry<T19_,
- typename MakeTypeListEntry<T20_,
- typename MakeTypeListEntry<T21_,
- typename MakeTypeListEntry<T22_,
- typename MakeTypeListEntry<T23_,
- typename MakeTypeListEntry<T24_,
- typename MakeTypeListEntry<T25_, TypeListTail>::Type
- >::Type
- >::Type
- >::Type
- >::Type
- >::Type
- >::Type
- >::Type
- >::Type
- >::Type
- >::Type
- >::Type
- >::Type
- >::Type
- >::Type
- >::Type
- >::Type
- >::Type
- >::Type
- >::Type
- >::Type
- >::Type
- >::Type
- >::Type
- >::Type Type;
- };
-
-#endif
-
template <>
struct MakeTypeListConstEntry<TypeListTail>
{