[Boost-bugs] [Boost C++ Libraries] #5060: MSM deferred events do not work with g++ 4.2

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