Adding more than 20 rows in transition table for Boost::MSM

Hi,
I tried defining:
#define BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS
#define BOOST_MPL_LIMIT_VECTOR_SIZE 30 // or whatever you need
#define BOOST_MPL_LIMIT_MAP_SIZE 30 // or whatever you need
/// Boost-MSM Includes
// back-end
#include "boost/mpl/vector/vector30.hpp"
#include

I’ve been able to successfully create larger MSM state machines. Are you *absolutely* sure that the defines are before *any* inclusion of Boost? I use Visual Studio. For me, this meant I had to include these defines at the top of my precompiled header include file.
---
Steve H.
From: Yechiel Levi [mailto:yechiel@fabrixsystems.com]
Sent: Monday, September 22, 2014 12:14 AM
To: boost-users@lists.boost.org
Subject: [Boost-users] Adding more than 20 rows in transition table for Boost::MSM
Hi,
I tried defining:
#define BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS
#define BOOST_MPL_LIMIT_VECTOR_SIZE 30 // or whatever you need
#define BOOST_MPL_LIMIT_MAP_SIZE 30 // or whatever you need
/// Boost-MSM Includes
// back-end
#include "boost/mpl/vector/vector30.hpp"
#include

Hi,
It’s hard to help without code but you might need to increase fusion too if you happen to have more than 10 states, as written by Krzysztof: #define FUSION_MAX_VECTOR_SIZE 20 Can you provide a minimal code reproducing the problem? It is of course possible to have more than 20 transitions so you either have more than 10 states or your limit macro has been defined somewhere else. HTH, Christophe

You think the problem is with states? But before I defined the mpl no preprocessed header macro all compiles well except that I have 21 states which is beyond the limit When I define the no preprocessed header macro I get this weird warnings. Do I need to define those macros in my dependencies project as well? Since they use some boost.. On Sep 22, 2014 9:53 PM, "Christophe Henry" < christophe.j.henry@googlemail.com> wrote:

I have went through the code over and over.
#include "File_Meta_FSM.h" -- ( this does not have any boost includes at
all)
#define BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS
#define BOOST_MPL_LIMIT_VECTOR_SIZE 30 // or whatever you need
#define BOOST_MPL_LIMIT_MAP_SIZE 30 // or whatever you need
#define FUSION_MAX_VECTOR_SIZE 30 // or whatever you need
#include "boost/mpl/vector/vector30.hpp"
#include

I have went through the code over and over.
#include "File_Meta_FSM.h" -- ( this does not have any boost includes at all)
#define BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS
#define BOOST_MPL_LIMIT_VECTOR_SIZE 30 // or whatever you need
#define BOOST_MPL_LIMIT_MAP_SIZE 30 // or whatever you need
#define FUSION_MAX_VECTOR_SIZE 30 // or whatever you need
#include "boost/mpl/vector/vector30.hpp"
<snip> Can you provide a minimum example so that I can have a look? I also need to know which compiler and boost version you use. Thanks, Christophe
participants (5)
-
Christophe Henry
-
christophe.j.henry@gmail.com
-
Hickman, Steve (AdvTech)
-
Krzysztof Jusiak
-
Yechiel Levi