Opened 12 years ago
Closed 12 years ago
#5117 closed Bugs (fixed)
back/state_machine.hpp doesn`t compile with gcc 4.0.x version
Reported by: | anonymous | Owned by: | Christophe Henry |
---|---|---|---|
Milestone: | Boost 1.47.0 | Component: | msm |
Version: | Boost 1.45.0 | Severity: | Problem |
Keywords: | Cc: |
Description
Here is small patch that resolve problem.
Compilation errors look like following:
/home/esuitebuild/boost_1_45_0/boost/msm/back/state_machine.hpp:2192: error: 'template<class StateType> typename boost::enable_if<typename boost::msm::back::is_no_message_queue<StateType>:\ :type, void>::type boost::msm::back::state_machine::process_message_queue(StateType*) [with StateType = StateType, Derived = net2::proto::a2s::client::machine_fe_t::st_connected_, HistoryP\ olicy = boost::msm::back::NoHistory, CompilePolicy = boost::msm::back::favor_runtime_speed]' cannot be overloaded /home/esuitebuild/boost_1_45_0/boost/msm/back/state_machine.hpp:2181: error: with 'template<class StateType> typename boost::disable_if<typename boost::msm::back::is_no_message_queue<State\ Type>::type, void>::type boost::msm::back::state_machine::process_message_queue(StateType*) [with StateType = StateType, Derived = net2::proto::a2s::client::machine_fe_t::st_connected_, Hi\ storyPolicy = boost::msm::back::NoHistory, CompilePolicy = boost::msm::back::favor_runtime_speed]' /home/esuitebuild/boost_1_45_0/boost/msm/back/state_machine.hpp: In instantiation of 'boost::msm::back::state_machine<net2::proto::a2s::client::machine_fe_t, boost::msm::back::NoHistory, b\ oost::msm::back::favor_runtime_speed>': /home/esuitebuild/boost_1_45_0/boost/msm/back/state_machine.hpp:2192: error: 'template<class StateType> typename boost::enable_if<typename boost::msm::back::is_no_message_queue<StateType>:\ :type, void>::type boost::msm::back::state_machine::process_message_queue(StateType*) [with StateType = StateType, Derived = net2::proto::a2s::client::machine_fe_t, HistoryPolicy = boost::\ msm::back::NoHistory, CompilePolicy = boost::msm::back::favor_runtime_speed]' cannot be overloaded /home/esuitebuild/boost_1_45_0/boost/msm/back/state_machine.hpp:2181: error: with 'template<class StateType> typename boost::disable_if<typename boost::msm::back::is_no_message_queue<State\ Type>::type, void>::type boost::msm::back::state_machine::process_message_queue(StateType*) [with StateType = StateType, Derived = net2::proto::a2s::client::machine_fe_t, HistoryPolicy = b\ oost::msm::back::NoHistory, CompilePolicy = boost::msm::back::favor_runtime_speed]'
Attachments (2)
Change History (5)
by , 12 years ago
Attachment: | 02-msm-gcc402-compile-fix.patch added |
---|
by , 12 years ago
Attachment: | 02-msm-gcc402-compile-fix.2.patch added |
---|
comment:1 by , 12 years ago
comment:2 by , 12 years ago
Ah, this is interesting. Here the link to the corresponding previous discussion: http://lists.boost.org/Archives/boost/2010/09/171281.php
It seems that the problem is not limited to Apple. What OS are you using?
Will be fixed for 1.47 (1.46 is closed). Fixed in trunk (rev 68535).
Thanks, Christophe
comment:3 by , 12 years ago
Milestone: | To Be Determined → Boost 1.47.0 |
---|---|
Resolution: | → fixed |
Status: | new → closed |
I can`t attach patch file, may be some problems with traq. Post it here diff -rub boost_1_45_0_old/boost/msm/back/state_machine.hpp boost_1_45_0/boost/msm/back/state_machine.hpp --- boost_1_45_0_old/boost/msm/back/state_machine.hpp 2010-12-03 17:04:12.000000000 +0300 +++ boost_1_45_0/boost/msm/back/state_machine.hpp 2011-01-25 13:36:43.000000000 +0300 @@ -1775,7 +1775,7 @@
@@ -1784,7 +1784,7 @@
@@ -2177,8 +2177,7 @@
+ void process_message_queue(StateType*, typename ::boost::disable_if<typename is_no_message_queue<StateType>::type,void >::type* = 0)
@@ -2188,8 +2187,7 @@
+ void process_message_queue(StateType*, typename ::boost::enable_if<typename is_no_message_queue<StateType>::type,void >::type* = 0)