
(/opt/SUNWspro/bin/../WS6U2/bin/sparcv9/dbx) l 271 unit_test_log_t& 272 unit_test_log_t::operator<<( log::file const& f ) 273 { 274 assign_op( s_log_impl().m_entry_data.m_file, f.m_file_name, 0 ); 275 276 // normalize file name 277 std::transform( s_log_impl().m_entry_data.m_file.begin(), s_log_impl().m_entry_data.m_file.end(), 278 s_log_impl().m_entry_data.m_file.begin(), 279 &set_unix_slash ); 280
But s_log_impl().m_entry_data.m_file is not equal to f.m_file_name as it should be
As you could see f.m_file_name is assigned to s_log_impl().m_entry_data.m_file in line 274. So the only possible explanation is that 2 threads entered this function simultaneously. Gennadiy