Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r58419 - sandbox/chrono/boost/chrono
From: vicente.botet_at_[hidden]
Date: 2009-12-16 14:18:51


Author: viboes
Date: 2009-12-16 14:18:50 EST (Wed, 16 Dec 2009)
New Revision: 58419
URL: http://svn.boost.org/trac/boost/changeset/58419

Log:
Boost.Chrono: Version 0.2.7, Bug fixes
* Try to correct warning C4251: 'boost::chrono::run_timer::m_format' : class 'std::basic_string<_Elem,_Traits,_Ax>' needs to have dll-interface to be used by clients of class 'boost::chrono::run_timer'
Text files modified:
   sandbox/chrono/boost/chrono/process_times.hpp | 33 ++++++++++++---------------------
   1 files changed, 12 insertions(+), 21 deletions(-)

Modified: sandbox/chrono/boost/chrono/process_times.hpp
==============================================================================
--- sandbox/chrono/boost/chrono/process_times.hpp (original)
+++ sandbox/chrono/boost/chrono/process_times.hpp 2009-12-16 14:18:50 EST (Wed, 16 Dec 2009)
@@ -99,47 +99,38 @@
 
     class BOOST_CHRONO_DECL run_timer : public process_timer
     {
+ // every function making use of inlined functions of class string are not inlined to avoid DLL issues
     public:
 
       // each constructor form has two overloads to avoid a visible default to
       // std::cout, which in turn would require including <iostream>, with its
       // high associated cost, even when the standard streams are not used.
 
- explicit run_timer( system::error_code & ec = system::throws )
- : m_places(m_default_places), m_os(m_cout()) { start(ec); }
+ explicit run_timer( system::error_code & ec = system::throws );
       explicit run_timer( std::ostream & os,
- system::error_code & ec = system::throws )
- : m_places(m_default_places), m_os(os) { start(ec); }
+ system::error_code & ec = system::throws );
 
       explicit run_timer( const std::string & format,
- system::error_code & ec = system::throws )
- : m_places(m_default_places), m_os(m_cout()), m_format(format) { start(ec); }
+ system::error_code & ec = system::throws );
       explicit run_timer( std::ostream & os, const std::string & format,
- system::error_code & ec = system::throws )
- : m_places(m_default_places), m_os(os), m_format(format) { start(ec); }
+ system::error_code & ec = system::throws );
 
       explicit run_timer( const std::string & format, int places,
- system::error_code & ec = system::throws )
- : m_places(places), m_os(m_cout()), m_format(format) { start(ec); }
+ system::error_code & ec = system::throws );
       explicit run_timer( std::ostream & os, const std::string & format,
- int places, system::error_code & ec = system::throws )
- : m_places(places), m_os(os), m_format(format) { start(ec); }
+ int places, system::error_code & ec = system::throws );
 
       explicit run_timer( int places,
- system::error_code & ec = system::throws )
- : m_places(places), m_os(m_cout()) { start(ec); }
+ system::error_code & ec = system::throws );
       explicit run_timer( std::ostream & os, int places,
- system::error_code & ec = system::throws )
- : m_places(places), m_os(os) { start(ec); }
+ system::error_code & ec = system::throws );
 
       explicit run_timer( int places, const std::string & format,
- system::error_code & ec = system::throws )
- : m_places(places), m_os(m_cout()), m_format(format) { start(ec); }
+ system::error_code & ec = system::throws );
       explicit run_timer( std::ostream & os, int places, const std::string & format,
- system::error_code & ec = system::throws )
- : m_places(places), m_os(os), m_format(format) { start(ec); }
+ system::error_code & ec = system::throws );
 
- ~run_timer() // never throws
+ ~run_timer() // never throws
       {
         system::error_code ec;
         if ( !reported() ) report( ec );


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk