Subject: [Boost-bugs] [Boost C++ Libraries] #5060: MSM deferred events do not work with g++ 4.2
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2011-01-11 09:28:29
#5060: MSM deferred events do not work with g++ 4.2
----------------------------------+-----------------------------------------
Reporter: voictor.judin@⦠| Owner:
Type: Bugs | Status: new
Milestone: To Be Determined | Component: None
Version: Boost 1.45.0 | Severity: Problem
Keywords: MSM |
----------------------------------+-----------------------------------------
When cbuilt with the g++, the deferred events either loop endlessly or
result in a crash due to the stack overflow. I've changed the sample
Orthogonal-Defered2.cpp
void test()
{
player p;
// needed to start the highest-level SM. This will call on_entry
and mark the start of the SM
p.start();
// test deferred event
// deferred in Empty and Open, will be handled only after event
cd_detected
p.process_event(play());
// tests some flags
std::cout << "CDLoaded active:" << std::boolalpha <<
p.is_flag_active<CDLoaded>() << std::endl; //=> false (no CD yet)
// go to Open, call on_exit on Empty, then action, then on_entry
on Open
// LINES ADDED
cout << "--------------------" << endl;
p.process_event(open_close()); pstate(p);
p.process_event( play() ); pstate(p);
cout << "--------------------" << endl;
// ...etc
and got a core ( Solaris 10 )
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/5060> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:05 UTC