Boost logo

Boost Users :

Subject: [Boost-users] Variadic versions of all the vector200 map50 stuff
From: Michael Steinberg (michael.steinberg_at_[hidden])
Date: 2013-09-19 09:06:34

I'm currently tracking down all the slowdowns I encounter when using
boost in my Visual Studio solutions. Much of the slowdowns seem to
happen, because there's a wide inclusion-usage of
<boost/typeof/vector.hpp> throughout boost. This seems to be a replicate
of <boost/mpl/vector.hpp>, which is not as much used, but equally evil.
Inclusion of any of these headers leads to a 20MB increase in Visual
Studio IntelliSense database size.
I tested to comment out the inclusion of all the generated
<vectorXXX.hpp>. This indeed works fine and is a real relief in Visual
Studio responsiveness, because although these headers seem to be
included from everywhere, they dont seem to be actually used. Tracking
down the inclusion paths proves difficult to me, because the
Visual-Studio tool doesn't seem to be able to handle the
Preprocessor-generated include directives that boost uses extensively
(and I'm just a newbie).
With the advent of variadic-enabled compilers (Visual Studio 2013RC just
arrived), is anybody working on making this mpl-stuff variadic? That
would be a major help for almost anybody using tools like IntelliSense
or VisualAssist (the vector200.hpp is a wopping 2mb of totally redundant
template goodness...).

I think I could make the appropriate changes to my local copy, however I
have no idea how to write proper boost-worthy code or even how to file
it for inclusion. Also I'm not too sure why the different sized vectors
have different names and if the client code relies on that, etc., but I
could probably find out. Are there any
"template-instantiation-coverage"-tests included, so I could check that
my variadics are compatible in the use-cases?

Any help would be appreciated!
With Kind Regards

Boost-users list run by williamkempf at, kalb at, bjorn.karlsson at, gregod at, wekempf at