Thread: [Quickfix-developers] quickfix-1.12.4 unit test failures in SessionTestCase.cpp
Brought to you by:
orenmnero
From: Maxim Y. <max...@gm...> - 2009-04-23 10:42:34
|
Hi guys, I am building quickfix-1.12.4.tar.gz on Solaris 10 in 32-bit mode. When I use g++ 3.4.3 the unit tests run successfully: [yegorm@thsunx04:test]$ ./runut 7777 <ut> <output> .................................................................................................................................................................. </output> <results total="162" failures="0"> </results> </ut> On the other hand, when I build it using Sun Studio compiler (Sun C++ 5.9 SunOS_i386 Patch 124864-09 2008/12/16) the unit test produces the following output: [yegorm@thsunx04:test]$ ./runut 7777 <ut> <output> .....................................................................FFFF.F...FFF.FFFFFFFFFFFF..F.............................................................. </output> <results total="159" failures="21"> <failure line= "148" file= "SessionTestCase.cpp"> <test> <![CDATA[ FIX::SessionTestCase::nextLogon]]> </test> <text> <![CDATA[ assert(m_toLogon == 1)]]> </text> </failure> <failure line= "180" file= "SessionTestCase.cpp"> <test> <![CDATA[ FIX::SessionTestCase::nextLogonNoEncryptMethod]]> </test> <text> <![CDATA[ assert(m_toLogon == 1)]]> </text> </failure> <failure line= "210" file= "SessionTestCase.cpp"> <test> <![CDATA[ FIX::SessionTestCase::nextLogonResetSeqNumFlag]]> </test> <text> <![CDATA[ assert(m_toLogout == 1)]]> </text> </failure> <failure line= "225" file= "SessionTestCase.cpp"> <test> <![CDATA[ FIX::SessionTestCase::notifyResendRequest]]> </test> <text> <![CDATA[ assert(m_toResendRequest == 1)]]> </text> </failure> <failure line= "254" file= "SessionTestCase.cpp"> <test> <![CDATA[ FIX::SessionTestCase::callDisconnect]]> </test> <text> <![CDATA[ assert(m_fromHeartbeat == 1)]]> </text> </failure> <failure line= "442" file= "SessionTestCase.cpp"> <test> <![CDATA[ FIX::SessionTestCase::nextTestRequest]]> </test> <text> <![CDATA[ assert(m_fromTestRequest == 1)]]> </text> </failure> <failure line= "467" file= "SessionTestCase.cpp"> <test> <![CDATA[ FIX::SessionTestCase::outOfOrder]]> </test> <text> <![CDATA[ assert(m_fromHeartbeat == 2)]]> </text> </failure> <failure line= "478" file= "SessionTestCase.cpp"> <test> <![CDATA[ FIX::SessionTestCase::nextLogout]]> </test> <text> <![CDATA[ assert(m_toLogout == 1)]]> </text> </failure> <failure line= "514" file= "SessionTestCase.cpp"> <test> <![CDATA[ FIX::SessionTestCase::badOrigSendingTime]]> </test> <text> <![CDATA[ assert(m_toReject == 1)]]> </text> </failure> <failure line= "539" file= "SessionTestCase.cpp"> <test> <![CDATA[ FIX::SessionTestCase::noOrigSendingTime]]> </test> <text> <![CDATA[ assert(m_toReject == 1)]]> </text> </failure> <failure line= "554" file= "SessionTestCase.cpp"> <test> <![CDATA[ FIX::SessionTestCase::badCompID]]> </test> <text> <![CDATA[ assert(m_toReject == 1)]]> </text> </failure> <failure line= "569" file= "SessionTestCase.cpp"> <test> <![CDATA[ FIX::SessionTestCase::nextReject]]> </test> <text> <![CDATA[ assert(m_fromReject == 1)]]> </text> </failure> <failure line= "606" file= "SessionTestCase.cpp"> <test> <![CDATA[ FIX::SessionTestCase::badMsgType]]> </test> <text> <![CDATA[ assert(m_toReject == 1)]]> </text> </failure> <failure line= "621" file= "SessionTestCase.cpp"> <test> <![CDATA[ FIX::SessionTestCase::nextSequenceReset]]> </test> <text> <![CDATA[ assert(m_fromSequenceReset == 1)]]> </text> </failure> <failure line= "655" file= "SessionTestCase.cpp"> <test> <![CDATA[ FIX::SessionTestCase::nextGapFill]]> </test> <text> <![CDATA[ assert(m_fromSequenceReset == 1)]]> </text> </failure> <failure line= "696" file= "SessionTestCase.cpp"> <test> <![CDATA[ FIX::SessionTestCase::nextResendRequest]]> </test> <text> <![CDATA[ assert(m_toSequenceReset == 1)]]> </text> </failure> <failure line= "735" file= "SessionTestCase.cpp"> <test> <![CDATA[ FIX::SessionTestCase::nextResendRequestNoMessagePersist]]> </test> <text> <![CDATA[ assert(m_toSequenceReset == 1)]]> </text> </failure> <failure line= "774" file= "SessionTestCase.cpp"> <test> <![CDATA[ FIX::SessionTestCase::badBeginString]]> </test> <text> <![CDATA[ assert(m_toLogout == 1)]]> </text> </failure> <failure line= "792" file= "SessionTestCase.cpp"> <test> <![CDATA[ FIX::SessionTestCase::unsupportedMsgType]]> </test> <text> <![CDATA[ assert(m_toBusinessMessageReject == 1)]]> </text> </failure> <failure line= "819" file= "SessionTestCase.cpp"> <test> <![CDATA[ FIX::SessionTestCase::resetOnEndTime]]> </test> <text> <![CDATA[ assert(m_toLogout == 1)]]> </text> </failure> <failure line= "876" file= "SessionTestCase.cpp"> <test> <![CDATA[ FIX::SessionTestCase::processQueuedMessages]]> </test> <text> <![CDATA[ assert(1 == m_toResendRequest)]]> </text> </failure> </results> </ut> Any ideas why these are failing? Just for the record, I configure quickfix for Sun Studio compiler using the following script: #!/bin/bash prefix=$HOME/`uname -s`-`uname -m`/local ./configure --prefix=$prefix --libdir=$prefix/lib/32 CC='cc' CXX="CC" CFLAGS="-mt -g" CXXFLAGS="-library=stlport4 -mt -g" LDFLAGS="-g -lrt" find . -name Makefile -exec perl -pi -e 's/ -Wall -ansi -Wpointer-arith -Wwrite-strings //' {} + find . -name Makefile -exec perl -pi -e 's/ -O0 -g//' {} + In other words, I have to filter out gcc specific flags from all the makefiles to make a successful build with the Sun Studio compiler. Max |