Boost logo

Boost :

Subject: Re: [boost] [config] local types as template params
From: lcaminiti (lorcaminiti_at_[hidden])
Date: 2012-02-21 15:03:03


Vicente Botet wrote
>
> Le 07/01/12 11:23, Lorenzo Caminiti a écrit :
>> On Thu, Jan 5, 2012 at 1:00 PM, Mathias Gaunard
>> <mathias.gaunard@> wrote:
>>> On 01/02/2012 10:58 AM, Lorenzo Caminiti wrote:
>>>> Hello all,
>>>>
>>>> Is it possible to add a macro
>>>> BOOST_CONFIG_LOCAL_TYPES_AS_TEMPLATE_PARAMS to Boost.Config to
>>>> indicate if local types can be passed as template parameters?
>>>>
> I suggest you to follow the process (see
> http://www.boost.org/doc/libs/1_48_0/libs/config/doc/html/boost_config/guidelines_for_boost_authors.html)
>

I'm adding a Boost.Config macro for (I had to shorten the name to fit the <
30 chars file length requirement):

// MACRO: BOOST_NO_LOCALS_AS_TPARAMS
// TITLE: local types as template parameters
// DESCRIPTION: If the compiler fails to support local types as template
// parameters. Local types cannot be used as template
parameters
// in C++03. However, some C++03 compilers and C++11 accept
local
// types as template parameters.

I have a couple of questions.

1) The docs say:
cd into libs/config/test/all and run bjam MACRONAME compiler-list, where
MACRONAME is the name of the new macro, and compiler-list is a space
separated list of compilers to test with.

What compiler-list shall I specify? On my machine I only have MSVC 8 and GCC
4.5.3... should this be:

bjam BOOST_NO_LOCALS_AS_TPARAMS msvc gcc

(This doesn't work...)

2) The docs say:
Then you should:
Define the defect macro in those config headers that require it.

How do I know which config herders require the macro? I'd expect to add the
boost_no_locals_as_tparams.ipp and related .cpp to Boost.Config test suite,
commit to trunk, look at the trunk regression test results
(http://www.boost.org/development/tests/trunk/developer/config.html) and
from these results determine which compiler and therefore which Boost.Config
header needs the BOOST_NO_LOCALS_AS_TPARAMS definition... However, I don't
think that's the process (so I have committed nothing to Boost.Config in
trunk yet).

For example, how would I know if to add the macro to
boost/config/borland.hpp given that I don't have a Borland compiler to run
the BOOST_NO_LOCALS_AS_TPARAMS' test myself?

Thanks a lot.
--Lorenzo

--
View this message in context: http://boost.2283326.n4.nabble.com/config-local-types-as-template-params-tp4252880p4408133.html
Sent from the Boost - Dev mailing list archive at Nabble.com.

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk