From 6fd9fb3066393eeec1b532d6325e2bd02f765a7e Mon Sep 17 00:00:00 2001 From: Andrew Johnson Date: Fri, 16 Nov 2012 16:14:13 -0600 Subject: [PATCH] libCom: Removed epicsSingleton workaround This undoes commit 11565, "workaround for archaic T202 g++ bug" which doesn't actually seem to be necessary for T202 compilation. It also replaces 'typename' with 'class', for another compiler. Modification provided by Dirk Zimoch. --- src/libCom/cxxTemplates/epicsSingleton.h | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/src/libCom/cxxTemplates/epicsSingleton.h b/src/libCom/cxxTemplates/epicsSingleton.h index b97c82b8c..cf273d1ec 100644 --- a/src/libCom/cxxTemplates/epicsSingleton.h +++ b/src/libCom/cxxTemplates/epicsSingleton.h @@ -51,11 +51,7 @@ public: reference ( epicsSingleton & ); reference ( const reference & ); ~reference (); - // this somewhat convoluted reference of the return - // type ref through the epicsSingleton template is - // required for the archaic Tornado gnu compiler - typename epicsSingleton < TYPE > :: reference & - operator = ( const reference & ); + reference & operator = ( const reference & ); TYPE * operator -> (); const TYPE * operator -> () const; TYPE & operator * (); @@ -106,7 +102,7 @@ inline epicsSingleton < TYPE > :: reference :: } template < class TYPE > -typename epicsSingleton < TYPE > :: reference & +class epicsSingleton < TYPE > :: reference & epicsSingleton < TYPE > :: reference :: operator = ( const reference & ref ) { @@ -199,14 +195,14 @@ void epicsSingleton < TYPE > :: } template < class TYPE > -inline typename epicsSingleton < TYPE > :: reference +inline class epicsSingleton < TYPE > :: reference epicsSingleton < TYPE > :: getReference () { return reference ( * this ); } template < class TYPE > -inline const typename epicsSingleton < TYPE > :: reference +inline const class epicsSingleton < TYPE > :: reference epicsSingleton < TYPE > :: getReference () const { epicsSingleton < TYPE > * pConstCastAway =