Index: boost/logging/ts/ts_boost.hpp =================================================================== --- boost/logging/ts/ts_boost.hpp (Revision 40602) +++ boost/logging/ts/ts_boost.hpp (Arbeitskopie) @@ -29,7 +29,8 @@ namespace threading { typedef boost::mutex mutex_boost; - typedef typename mutex::scoped_lock scoped_lock_boost; + // boost/logging/ts/ts_boost.hpp|32| error: using 'typename' outside of template + typedef mutex::scoped_lock scoped_lock_boost; } }} Index: boost/logging/format/destination/shared_memory.hpp =================================================================== --- boost/logging/format/destination/shared_memory.hpp (Revision 40602) +++ boost/logging/format/destination/shared_memory.hpp (Arbeitskopie) @@ -22,7 +22,7 @@ #endif #include -#include +//#include namespace boost { namespace logging { namespace destination { @@ -40,7 +40,8 @@ long * occupied_size; // the shared memory char_type * memory; - boost::shmem::named_shared_object segment; + // error: 'boost::shmem' has not been declared + //boost::shmem::named_shared_object segment; std::size_t mem_size; }; Index: boost/logging/format/destination/rolling_file.hpp =================================================================== --- boost/logging/format/destination/rolling_file.hpp (Revision 40602) +++ boost/logging/format/destination/rolling_file.hpp (Arbeitskopie) @@ -103,7 +103,8 @@ template void write( const msg_type& msg) { convert_dest::write(msg, (*m_out) ); - if ( m_out->ftellg() > m_flags.max_size_bytes()) { + // error: 'struct std::basic_ofstream >' has no member named 'ftellg' + if (false) { m_cur_idx = (m_cur_idx + 1) % m_flags.file_count(); recreate_file(); } @@ -134,14 +135,16 @@ @param flags [optional] extra settings to pass to the rolling file. See rolling_file_settings. */ - rolling_file_t(const std::string & name_prefix, rolling_file_settings flags = rolling_file_settings() ) : non_const_context_base(name_prefix, flags) {} + // error: class 'boost::logging::destination::rolling_file_t' does not have any field named 'non_const_context_base' + rolling_file_t(const std::string & name_prefix, rolling_file_settings flags = rolling_file_settings() ) : non_const_context >(name_prefix, flags) {} template void operator()( const msg_type & msg) const { - non_const_context::context().write(msg); + // error: 'template struct boost::logging::manipulator::non_const_context' used without template parameters + non_const_context >::context().write(msg); } bool operator==(const rolling_file_t & other) const { - return non_const_context_base::context().m_name_prefix == other.context().m_name_prefix; + return non_const_context >::context().m_name_prefix == other.context().m_name_prefix; } }; Index: boost/logging/format/formatter/time.hpp =================================================================== --- boost/logging/format/formatter/time.hpp (Revision 40602) +++ boost/logging/format/formatter/time.hpp (Arbeitskopie) @@ -88,11 +88,13 @@ if ( month_idx != hold_string_type::npos) indexes.push_back( index_info(month_idx, &m_month) ); - if ( yy_idx != hold_string_type::npos || yyyy_idx != hold_string_type::npos) + // boost/logging/format/formatter/time.hpp|91| warning: suggest explicit braces to avoid ambiguous 'else' + if ( yy_idx != hold_string_type::npos || yyyy_idx != hold_string_type::npos) { if ( yyyy_idx != hold_string_type::npos) indexes.push_back( index_info(yyyy_idx, &m_yyyy, 4) ); else indexes.push_back( index_info(yy_idx, &m_yy) ); + } if ( hour_idx != hold_string_type::npos) indexes.push_back( index_info(hour_idx, &m_hour ) ); Index: boost/logging/format/formatter/convert_format.hpp =================================================================== --- boost/logging/format/formatter/convert_format.hpp (Revision 40602) +++ boost/logging/format/formatter/convert_format.hpp (Arbeitskopie) @@ -52,7 +52,8 @@ namespace prepend { inline void write(const char_type * src, string_type & dest ) { const char_type * end = src; - for ( ; *end; ++end); + // boost/logging/format/formatter/convert_format.hpp|55| warning: suggest a space before ';' or explicit braces around empty body in 'for' statement + for ( ; *end; ++end) {} dest.insert( dest.begin(), src, end); } inline void write(const string_type & src, string_type & dest) { Index: boost/logging/format/op_equal.hpp =================================================================== --- boost/logging/format/op_equal.hpp (Revision 40602) +++ boost/logging/format/op_equal.hpp (Arbeitskopie) @@ -39,6 +39,8 @@ protected: same_type_op_equal_top() {} same_type_op_equal_top(const same_type_op_equal_top&) {} + // g++ 4.1: warning: ‘struct boost::logging::op_equal::same_type_op_equal_top’ has virtual functions but non-virtual destructor + virtual ~same_type_op_equal_top() {} }; inline bool operator ==(const same_type_op_equal_top& a, const same_type_op_equal_top&b) { return a.equals(b); } Index: boost/logging/detail/manipulator.hpp =================================================================== --- boost/logging/detail/manipulator.hpp (Revision 40602) +++ boost/logging/detail/manipulator.hpp (Arbeitskopie) @@ -305,7 +305,8 @@ @brief When you implement your manipulator class, how is operator== to be implemented? */ struct implement_op_equal { - typedef enum type { + // boost/logging/detail/manipulator.hpp|313| warning: 'typedef' was ignored in this declaration + enum type { /// manipulator has no context - that is, any two values of this type are considered equal (operator== will automatically return true) no_context, /// manipulator has context - that is, you have to implement operator== in your manipulator class Index: boost/logging/detail/log_keeper.hpp =================================================================== --- boost/logging/detail/log_keeper.hpp (Revision 40602) +++ boost/logging/detail/log_keeper.hpp (Arbeitskopie) @@ -50,7 +50,8 @@ struct fake_using_log { template fake_using_log( type & log) { - long long ignore = reinterpret_cast(&log); + // error: ISO C++ does not support 'long long' + long ignore = reinterpret_cast(&log); // we need to force the compiler to force creation of the log if ( time(0) < 0) if ( time(0) < ignore) { Index: boost/logging/writer/ts_write.hpp =================================================================== --- boost/logging/writer/ts_write.hpp (Revision 40602) +++ boost/logging/writer/ts_write.hpp (Arbeitskopie) @@ -70,7 +70,10 @@ @sa on_dedicated_thread */ - template struct ts_write : base_type, non_const_context { + + // boost/logging/writer/ts_write.hpp|74| error: expected template-name before '<' token + // error still exists! + template struct ts_write : base_type, non_const_context { BOOST_LOGGING_FORWARD_CONSTRUCTOR(ts_write,base_type) template void operator()(msg_type msg) const { @@ -79,7 +82,8 @@ base_type::operator()(msg); } - }; + // boost/logging/writer/ts_write.hpp|83| error: extra ';' + } }}} Index: boost/logging/format.hpp =================================================================== --- boost/logging/format.hpp (Revision 40602) +++ boost/logging/format.hpp (Arbeitskopie) @@ -385,7 +385,8 @@ */ class route { friend class with_route; - typedef enum type { + // boost/logging/format.hpp|390| warning: 'typedef' was ignored in this declaration + enum type { is_fmt, is_dest, is_clear }; struct item {