From: Gennadiy Rozental (gennadiy.rozental_at_[hidden])
Date: 2005-05-01 12:28:07


Hi,

Ever since I fixed bug with locale/manipulators handling (particularly I
added std::locate-support to the list of requirements in Jamfile for
Boost.Test libs) all cw-8_3 tests seems to be crashing at runtime. From what
I see it's somewhere in iostream implementation. Also I noticed following in
build log:

### mwld Linker Warning:
# Multiply defined symbol: std::ios_base::ios_base(void)
(??0ios_base_at_std@@IAE_at_XZ) in
# files test_tools.obj (libboost_test_exec_monitor.lib),
MSL_All-DLL80_x86_D.dll (MSL_All-DLL_x86_D.lib), keeping definition in
MSL_All-DLL80_x86_D.dll
### mwld Linker Warning:
# Multiply defined symbol: long std::ios_base::precision(long)
(?precision_at_ios_base_at_std@@QAEJJ_at_Z) in
# files test_tools.obj (libboost_test_exec_monitor.lib),
MSL_All-DLL80_x86_D.dll (MSL_All-DLL_x86_D.lib), keeping definition in
MSL_All-DLL80_x86_D.dll
### mwld Linker Warning:
# Multiply defined symbol: void std::ios_base::setstate(enum
std::ios_base::iostate) (?setstate_at_ios_base_at_std@@QAEXW1iostate_at_12@@Z) in
# files test_tools.obj (libboost_test_exec_monitor.lib),
MSL_All-DLL80_x86_D.dll (MSL_All-DLL_x86_D.lib), keeping definition in
MSL_All-DLL80_x86_D.dll
### mwld Linker Warning:
# Multiply defined symbol: long std::ios_base::width(long)
(?width_at_ios_base_at_std@@QAEJJ_at_Z) in
# files test_tools.obj (libboost_test_exec_monitor.lib),
MSL_All-DLL80_x86_D.dll (MSL_All-DLL_x86_D.lib), keeping definition in
MSL_All-DLL80_x86_D.dll
### mwld Linker Warning:
# Multiply defined symbol: bool std::ios_base::fail(void) const
(?fail_at_ios_base_at_std@@QBE_NXZ) in
# files test_tools.obj (libboost_test_exec_monitor.lib),
MSL_All-DLL80_x86_D.dll (MSL_All-DLL_x86_D.lib), keeping definition in
MSL_All-DLL80_x86_D.dll
### mwld Linker Warning:
# Multiply defined symbol: enum std::ios_base::fmtflags
std::ios_base::flags(void) const
(?flags_at_ios_base_at_std@@QBE?AW3fmtflags_at_12@XZ) in
# files test_tools.obj (libboost_test_exec_monitor.lib),
MSL_All-DLL80_x86_D.dll (MSL_All-DLL_x86_D.lib), keeping definition in
MSL_All-DLL80_x86_D.dll
### mwld Linker Warning:
# Multiply defined symbol: void * std::ios_base::rdbuf(void) const
(?rdbuf_at_ios_base_at_std@@QBEPAXXZ) in
# files test_tools.obj (libboost_test_exec_monitor.lib),
MSL_All-DLL80_x86_D.dll (MSL_All-DLL_x86_D.lib), keeping definition in
MSL_All-DLL80_x86_D.dll
### mwld Linker Warning:
# Multiply defined symbol: enum std::ios_base::iostate &
std::ios_base::state(void) (?state_at_ios_base_at_std@@IAEAAW1iostate_at_12@XZ) in
# files test_tools.obj (libboost_test_exec_monitor.lib),
MSL_All-DLL80_x86_D.dll (MSL_All-DLL_x86_D.lib), keeping definition in
MSL_All-DLL80_x86_D.dll
### mwld Linker Warning:
# Multiply defined symbol: enum std::ios_base::iostate
std::ios_base::exceptions(void) const
(?exceptions_at_ios_base_at_std@@QBE?AW1iostate_at_12@XZ) in
# files test_tools.obj (libboost_test_exec_monitor.lib),
MSL_All-DLL80_x86_D.dll (MSL_All-DLL_x86_D.lib), keeping definition in
MSL_All-DLL80_x86_D.dll
### mwld Linker Warning:
# Multiply defined symbol: long std::ios_base::width(void) const
(?width_at_ios_base_at_std@@QBEJXZ) in
# files test_tools.obj (libboost_test_exec_monitor.lib),
MSL_All-DLL80_x86_D.dll (MSL_All-DLL_x86_D.lib), keeping definition in
MSL_All-DLL80_x86_D.dll
### mwld Linker Warning:
# Multiply defined symbol: bool std::ios_base::good(void) const
(?good_at_ios_base_at_std@@QBE_NXZ) in
# files test_tools.obj (libboost_test_exec_monitor.lib),
MSL_All-DLL80_x86_D.dll (MSL_All-DLL_x86_D.lib), keeping definition in
MSL_All-DLL80_x86_D.dll
### mwld Linker Warning:
# Multiply defined symbol: enum std::ios_base::iostate
std::ios_base::rdstate(void) const
(?rdstate_at_ios_base_at_std@@QBE?AW1iostate_at_12@XZ) in
# files test_tools.obj (libboost_test_exec_monitor.lib),
MSL_All-DLL80_x86_D.dll (MSL_All-DLL_x86_D.lib), keeping definition in
MSL_All-DLL80_x86_D.dll
### mwld Linker Note:
# Including default library "MSL_All_x86.lib"
### mwld Linker Warning:
# Multiply defined section: std::__nInit::__nInit(void)
(??0__nInit_at_std@@QAE_at_XZ) in
# files iostream.obj (MSL_All_x86.lib), MSL_All-DLL80_x86_D.dll
(MSL_All-DLL_x86_D.lib), keeping definition in MSL_All-DLL80_x86_D.dll
### mwld Linker Warning:
# Multiply defined section: std::__nInit::~__nInit(void)
(??1__nInit_at_std@@QAE_at_XZ) in
# files iostream.obj (MSL_All_x86.lib), MSL_All-DLL80_x86_D.dll
(MSL_All-DLL_x86_D.lib), keeping definition in MSL_All-DLL80_x86_D.dll
### mwld Linker Warning:
# Multiply defined section: std::__wInit::__wInit(void)
(??0__wInit_at_std@@QAE_at_XZ) in
# files iostream.obj (MSL_All_x86.lib), MSL_All-DLL80_x86_D.dll
(MSL_All-DLL_x86_D.lib), keeping definition in MSL_All-DLL80_x86_D.dll
### mwld Linker Warning:
# Multiply defined section: std::__wInit::~__wInit(void)
(??1__wInit_at_std@@QAE_at_XZ) in
# files iostream.obj (MSL_All_x86.lib), MSL_All-DLL80_x86_D.dll
(MSL_All-DLL_x86_D.lib), keeping definition in MSL_All-DLL80_x86_D.dll
### mwld Linker Warning:
# Multiply defined section: __CRTStartup in
# files startup.win32.obj (MSL_All_x86.lib), MSL_All-DLL80_x86_D.dll
(MSL_All-DLL_x86_D.lib), keeping definition in MSL_All-DLL80_x86_D.dll
### mwld Linker Warning:
# Multiply defined section: __CleanUpMSL in
# files startup.win32.obj (MSL_All_x86.lib), MSL_All-DLL80_x86_D.dll
(MSL_All-DLL_x86_D.lib), keeping definition in MSL_All-DLL80_x86_D.dll
### mwld Linker Warning:
# Multiply defined section: _fclose in
# files file_io.obj (MSL_All_x86.lib), MSL_All-DLL80_x86_D.dll
(MSL_All-DLL_x86_D.lib), keeping definition in MSL_All-DLL80_x86_D.dll
### mwld Linker Warning:
# Multiply defined section: _fflush in
# files file_io.obj (MSL_All_x86.lib), MSL_All-DLL80_x86_D.dll
(MSL_All-DLL_x86_D.lib), keeping definition in MSL_All-DLL80_x86_D.dll
# Too many warnings printed, suppressing warnings for current file

Is there any way to address this?

Gennadiy