From: <ric...@us...> - 2011-09-17 02:25:49
|
Revision: 1103 http://loki-lib.svn.sourceforge.net/loki-lib/?rev=1103&view=rev Author: rich_sposato Date: 2011-09-17 02:25:43 +0000 (Sat, 17 Sep 2011) Log Message: ----------- Removed #if 0 lines because compiler choked on it. Modified Paths: -------------- trunk/test/SmartPtr/colvin_gibbons_trick.cpp Modified: trunk/test/SmartPtr/colvin_gibbons_trick.cpp =================================================================== --- trunk/test/SmartPtr/colvin_gibbons_trick.cpp 2011-09-17 02:20:19 UTC (rev 1102) +++ trunk/test/SmartPtr/colvin_gibbons_trick.cpp 2011-09-17 02:25:43 UTC (rev 1103) @@ -120,48 +120,3 @@ // ---------------------------------------------------------------------------- - -#if 0 - -https://sourceforge.net/tracker/index.php?func=detail&aid=2080889&group_id=29557&atid=396644 - -To fix the compile bug we have to disable the (const T&) ctor and use RefToValue, -the way how it is done in auto_prt. - -But I'm not sure about the consequences of such a change. - -Index: loki/SmartPtr.h -=================================================================== ---- loki/SmartPtr.h (revision 910) -+++ loki/SmartPtr.h (working copy) -@@ -1175,6 +1175,7 @@ - GetImplRef(*this) = OP::Clone(GetImplRef(rhs)); - } - -+ /* - template - < - typename T1, -@@ -1187,6 +1188,7 @@ - SmartPtr(const SmartPtr<T1, OP1, CP1, KP1, SP1, CNP1 >& rhs) - : SP(rhs), OP(rhs), KP(rhs), CP(rhs) - { GetImplRef(*this) = OP::Clone(GetImplRef(rhs)); } -+ */ - - template - < -@@ -1205,7 +1207,10 @@ - - SmartPtr(RefToValue<SmartPtr> rhs) - : SP(rhs), OP(rhs), KP(rhs), CP(rhs) -- {} -+ { -+ SmartPtr& ref = rhs; -+ GetImplRef(*this) = OP::Clone(GetImplRef(ref)); -+ } - - operator RefToValue<SmartPtr>() - { return RefToValue<SmartPtr>(*this); } - -#endif - This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |