Re: [Quickfix-developers] RE: FIX42::QuoteRequest operator=()
Brought to you by:
orenmnero
From: Oren M. <or...@qu...> - 2004-08-27 15:52:20
|
I would venture to guess that it may be a bug in the STL that comes with VC 6.0 (see earlier threads regarding its shaky implementation). Have you tried running this test with VC 6.0 and STLPort? --oren On Aug 27, 2004, at 10:40 AM, Brendan B. Boerner wrote: > QuickFIX Documentation: > http://www.quickfixengine.org/quickfix/doc/html/index.html > QuickFIX FAQ: > http://www.quickfixengine.org/wikifix/index.php?QuickFixFAQ > QuickFIX Support: http://www.quickfixengine.org/services.html > >> Using VC++ 6.0, the following copy of a FIX42::QuoteRequest causes a >> stack overflow as FIX42::Message::operator=() recursively calls >> FIX42::Message::operator=() instead of calling up to >> FIX::Message::operator=() e.g: > > ... > >> This is probably a VC++ 6.0 bug - I've also seen it when copying >> FIX41::NewOrderSingle as well. > > This does appear to be a bug in VC++ 6.0 as the following will > reproduce it: > > namespace A { > class foo > { > public: > typedef std::map <int, std::string> t_mapStr; > > t_mapStr m_mapStr; > }; /* end class foo */ > > } /* end namespace A */ > > namespace B { > class foo : public A::foo > { > public: > int m_y; > }; /* end class foo */ > > } /* end namespace B */ > > A::foo l_fooA_1; > A::foo l_fooA_2; > B::foo l_fooB_1; > B::foo l_fooB_2; > > // ok > l_fooA_1 = l_fooA_2; > > // stack overflow > l_fooB_1 = l_fooB_2; > > > Regards, > Brendan > > > ------------------------------------------------------- > This SF.Net email is sponsored by BEA Weblogic Workshop > FREE Java Enterprise J2EE developer tools! > Get your free copy of BEA WebLogic Workshop 8.1 today. > http://ads.osdn.com/?ad_id=5047&alloc_id=10808&op=click > _______________________________________________ > Quickfix-developers mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-developers > |