diff --git a/src/libCom/cxxTemplates/epicsSingleton.h b/src/libCom/cxxTemplates/epicsSingleton.h index ab18cd970..0e1d0f9db 100644 --- a/src/libCom/cxxTemplates/epicsSingleton.h +++ b/src/libCom/cxxTemplates/epicsSingleton.h @@ -24,6 +24,7 @@ #include "epicsMutex.h" #include "epicsGuard.h" #include "epicsThread.h" +#include "epicsAssert.h" #include "compilerDependencies.h" // This class exists for the purpose of avoiding file scope @@ -103,6 +104,20 @@ inline epicsSingleton::~epicsSingleton () // sorts of problems then clean up is left to other classes. } +// SUN PRO generates warnings unless it sees an implementation +#ifdef _SUNPRO_C + template < class TYPE > + inline epicsSingleton::epicsSingleton ( const epicsSingleton & ) + { + assert ( 0 ); + } + template < class TYPE > + inline epicsSingleton & epicsSingleton::operator = ( const epicsSingleton & ) + { + assert ( 0 ); + } +#endif + epicsShareFunc epicsMutex & epicsSingletonPrivateMutex (); // borland 5.5 is unable to build this function optimized if it is inline