aboutsummaryrefslogtreecommitdiff
path: root/paludis/repositories/fake
diff options
context:
space:
mode:
authorAvatar Ciaran McCreesh <ciaran.mccreesh@googlemail.com> 2007-11-17 12:33:54 +0000
committerAvatar Ciaran McCreesh <ciaran.mccreesh@googlemail.com> 2007-11-17 12:33:54 +0000
commit763dc12ae16b75aed6a97b16514f6583feef6663 (patch)
treeffebfd6e8acf7c8ebaa280dde1ca1ebdde6a7141 /paludis/repositories/fake
parent34fe5458d12f8c1d7893a89e59a4d2e5f8095980 (diff)
downloadpaludis-763dc12ae16b75aed6a97b16514f6583feef6663.tar.gz
paludis-763dc12ae16b75aed6a97b16514f6583feef6663.tar.xz
Be kinder to stupid compilers: don't rely upon tr1::shared_ptr<> being callable. Don't explicitly instantiate fully specialised templates if the compielr doesn't allow it. Include -impl headers in more places to work around compilers thinking they can ignore explicit instantiations.
Diffstat (limited to 'paludis/repositories/fake')
-rw-r--r--paludis/repositories/fake/fake_package_id.cc6
1 files changed, 6 insertions, 0 deletions
diff --git a/paludis/repositories/fake/fake_package_id.cc b/paludis/repositories/fake/fake_package_id.cc
index 48de5c5f9..adef75c0e 100644
--- a/paludis/repositories/fake/fake_package_id.cc
+++ b/paludis/repositories/fake/fake_package_id.cc
@@ -46,7 +46,9 @@ using namespace paludis;
namespace paludis
{
+#ifndef PALUDIS_NO_DOUBLE_TEMPLATE
template <>
+#endif
template <typename C_>
struct Implementation<FakeMetadataCollectionKey<C_> >
{
@@ -120,7 +122,9 @@ FakeMetadataIUseSetKey::set_from_string(const std::string & s, const IUseFlagPar
namespace paludis
{
+#ifndef PALUDIS_NO_DOUBLE_TEMPLATE
template <>
+#endif
template <typename C_>
struct Implementation<FakeMetadataSpecTreeKey<C_> >
{
@@ -902,7 +906,9 @@ template class FakeMetadataSpecTreeKey<LicenseSpecTree>;
template class FakeMetadataSpecTreeKey<ProvideSpecTree>;
template class FakeMetadataSpecTreeKey<DependencySpecTree>;
template class FakeMetadataSpecTreeKey<RestrictSpecTree>;
+#ifndef PALUDIS_NO_EXPLICIT_FULLY_SPECIALISED
template class FakeMetadataSpecTreeKey<FetchableURISpecTree>;
+#endif
template class FakeMetadataSpecTreeKey<SimpleURISpecTree>;
template class FakeMetadataCollectionKey<KeywordNameSet>;