|
Boost : |
From: Markus Schöpflin (markus.schoepflin_at_[hidden])
Date: 2002-09-26 11:41:16
Markus Schöpflin wrote:
> Björn Karlsson wrote:
>
[snip]
>> So, should we augment these ~800 BOOST_STATIC_CONSTANTs? If that's
>> what we decide to do, I'd like to wait until 1_29_0 is shipping,
>> and everything has been merged back to the trunk. And there'll be a
>> new macro (BOOST_STATIC_CONSTANT_DEFINITION, or similar) to
>> streamline usage.
>
> I just discovered something totally new to me. I posted in another
> message that (quoting myself):
>
>>The basic problem is, IBM's vacpp 5 can't do this:
>>
>>template <bool b> struct foo
>>{
>> static const bool v = b;
>>};
>>
>>template <bool b> struct bar
>>{
>> static const bool v1 = b;
>> static const bool v2 = foo<v1>::v;
>>};
>>
>>It works if you replace foo<v1>::v with foo<b>::v.
>
>
> Now I just discovered another workaround for this. It also works
> if you use enum { v1 = b } and enum { v2 = foo<v1>::v }.
>
> Which of course speaks in favour of enabling the workaround
> for this compiler despite it breaking other things.
>
> I'm just running regression tests against RC 1.29.0 to see how
> bad it really is.
>
Ok, did a test run and it isn't as bad as I feared. Mostly due to the
fact that BOOST_NO_INTEGRAL_INT64_T is defined for this configuration.
Well, maybe it's best just to change the macro back. I'll contact John
Maddock about it.
Thanks, Markus
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk