Boost logo

Boost :

From: David Abrahams (dave_at_[hidden])
Date: 2005-04-27 08:46:09

"Arkadiy Vertleyb" <vertleyb_at_[hidden]> writes:

> Typeof uses only numbered (or
> what is the correct name for it?) versions of the mpl::vector.
> Setting BOOST_TYPEOF_LIMIT_SIZE to, e.g., 15 means that vector15 is
> used to store the encoded type, and numbered versions up to vector15
> are used to build it, regardless what the value of
> BOOST_MPL_LIMIT_VECTOR_SIZE is. If typeof limit happens to exceed
> the mpl limit, additional numbered MPL vector definitions are built
> with PP lib, as suggested by Aleksey some time ago.

Okay, as long as Aleksey is coordinating with you on this I feel fine
about it.

> To add a little to the confusion, by default I don't use
> mpl::vector. Instead I use my own very simple MPL-compatible vector
> definition, which allows me to avoid the gcc-mpl::vector performance
> problem discussed some time ago. To really use MPL,
> BOOST_TYPEOF_USE_MPL_VECTOR has to be defined. This may be
> reconsidered after the MPL problem is fixed.

It now is, IIUC.

> Most of the time you wouldn't have to change BOOST_TYPEOF_LIMIT_SIZE
> either. I would use BOOST_MPL_LIMIT_VECTOR_SIZE as a convenient
> default, but I think it's currently 10 (?) and too low for typeof...
> Do you have a better name in mind or is it enough to just put the
> above description somewhere in the document?

I don't have a better name in mind, and I'm not sure what belongs in
the document. I just wanted not to inadvertently encourage people to

Dave Abrahams
Boost Consulting

Boost list run by bdawes at, gregod at, cpdaniel at, john at