Boost logo

Boost Users :

Subject: Re: [Boost-users] [mpl] [msm] wrong number of template arguments (120, should be at least 0)
From: Deniz Bahadir (dbahadir_at_[hidden])
Date: 2017-07-09 21:37:34


Am 07.07.2017 um 16:57 schrieb Alessandro Marzialetti via Boost-users:
> Hello,
>
>
> I'm working on a msm with a big transition table (120 elements)

This probably needs a lot of RAM when compiling... That is the reason
why I am currently switching from Boost.MSM to
(to-be-proposed-)Boost.SML. (You can find it at:
https://github.com/boost-experimental/sml)

> I already tried with
> #define BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS
> then
> #define BOOST_MPL_LIMIT_LIST_SIZE <custom value>
> But I can't go over a size of 50 (including "boost/mpl/vector/vector50.hpp")
>
> Any idea on how I can make a bigger table?

You must increase the size of the pre-processed mpl::vectors.
For that there exists a python-script in "libs/mpl/preprocessed". It is
called "boost_mpl_preprocess.py".

Calling that script with the "--help" command should give you some hints
on how to call it.
You probably need to call it like this:

python boost_mpl_preprocess.py --num-elements 120

Possibly, it would be enough to only increase the size of preprocessed
mpl::vector. Then you could use the additional options "--no-list",
"--no-set" and "--no-map" and thereby leave the size of the preprocessed
mpl::list, mpl::set and mpl::map as is.

For further background-information you might find this StackOverflow
entry, and the conversation on the boost-mailing-list interesting:

https://stackoverflow.com/questions/19493630/boostmpl-how-to-generate-pre-generated-header-files-for-lists-with-more-than

http://boost.2283326.n4.nabble.com/MPL-Config-Can-no-longer-pre-generate-headers-for-MPL-containers-with-more-than-50-elements-td4674350.html

>
> Thanks,
> Alessandro
>
>
> <http://www.boost.org/doc/libs/1_63_0/libs/mpl/doc/refmanual/cfg-no-preprocessed-headers.html>
>
>

Hope that helps,
Deniz


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net