aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAvatar Ciaran McCreesh <ciaran.mccreesh@googlemail.com> 2006-09-30 14:35:12 +0000
committerAvatar Ciaran McCreesh <ciaran.mccreesh@googlemail.com> 2006-09-30 14:35:12 +0000
commit17db83f4c7ac6215ae486111bf38a1f5c441c643 (patch)
tree343349d204c6e709d338b9189fef195cc96f6039
parentfedb25c70a49859cc7eba4b552ac29e10a4392c2 (diff)
downloadpaludis-17db83f4c7ac6215ae486111bf38a1f5c441c643.tar.gz
paludis-17db83f4c7ac6215ae486111bf38a1f5c441c643.tar.xz
Make visibility less likely to do weird things
-rw-r--r--paludis/util/instantiation_policy.hh10
-rw-r--r--paludis/util/log.hh4
-rw-r--r--paludis/util/virtual_constructor.hh2
3 files changed, 9 insertions, 7 deletions
diff --git a/paludis/util/instantiation_policy.hh b/paludis/util/instantiation_policy.hh
index 060b2df..65625ba 100644
--- a/paludis/util/instantiation_policy.hh
+++ b/paludis/util/instantiation_policy.hh
@@ -20,6 +20,8 @@
#ifndef PALUDIS_GUARD_PALUDIS_INSTANTIATION_POLICY_HH
#define PALUDIS_GUARD_PALUDIS_INSTANTIATION_POLICY_HH 1
+#include <paludis/util/attributes.hh>
+
/** \file
* InstantiationPolicy patterns.
*
@@ -88,7 +90,7 @@ namespace paludis
* \ingroup grpinstance
*/
template<typename OurType_>
- class InstantiationPolicy<OurType_, instantiation_method::NonCopyableTag>
+ class PALUDIS_VISIBLE InstantiationPolicy<OurType_, instantiation_method::NonCopyableTag>
{
private:
InstantiationPolicy(const InstantiationPolicy &);
@@ -148,7 +150,7 @@ namespace paludis
* \ingroup grpinstance
*/
template<typename OurType_>
- class InstantiationPolicy<OurType_, instantiation_method::SingletonAtStartupTag>
+ class PALUDIS_VISIBLE InstantiationPolicy<OurType_, instantiation_method::SingletonAtStartupTag>
{
private:
InstantiationPolicy(const InstantiationPolicy &);
@@ -194,7 +196,7 @@ namespace paludis
* \ingroup grpinstance
*/
template<typename OurType_>
- class InstantiationPolicy<OurType_, instantiation_method::SingletonAsNeededTag>
+ class PALUDIS_VISIBLE InstantiationPolicy<OurType_, instantiation_method::SingletonAsNeededTag>
{
private:
InstantiationPolicy(const InstantiationPolicy &);
@@ -211,7 +213,7 @@ namespace paludis
delete p;
}
- class DeleteOnDestruction
+ class PALUDIS_VISIBLE DeleteOnDestruction
{
private:
OurType_ * * const _ptr;
diff --git a/paludis/util/log.hh b/paludis/util/log.hh
index 87edc3f..a101105 100644
--- a/paludis/util/log.hh
+++ b/paludis/util/log.hh
@@ -71,7 +71,7 @@ namespace paludis
*
* \ingroup grplog
*/
- class Log :
+ class PALUDIS_VISIBLE Log :
public InstantiationPolicy<Log, instantiation_method::SingletonAsNeededTag>,
private PrivateImplementationPattern<Log>
{
@@ -113,7 +113,7 @@ namespace paludis
};
std::ostream &
- operator<< (std::ostream &, const LogLevel &);
+ operator<< (std::ostream &, const LogLevel &) PALUDIS_VISIBLE;
}
#endif
diff --git a/paludis/util/virtual_constructor.hh b/paludis/util/virtual_constructor.hh
index a4aa6f8..ab4f88f 100644
--- a/paludis/util/virtual_constructor.hh
+++ b/paludis/util/virtual_constructor.hh
@@ -119,7 +119,7 @@ namespace paludis
* \ingroup grpvc
*/
template <typename KeyType_, typename ValueType_, typename NotFoundBehaviour_>
- class VirtualConstructor :
+ class PALUDIS_VISIBLE VirtualConstructor :
public NotFoundBehaviour_::template Parent<KeyType_, ValueType_>,
public InstantiationPolicy<VirtualConstructor<KeyType_, ValueType_, NotFoundBehaviour_>,
instantiation_method::SingletonAsNeededTag>