Boost logo

Boost :

Subject: Re: [boost] [type_traits] Big changes in develop
From: John Maddock (jz.maddock_at_[hidden])
Date: 2015-05-27 08:50:26


On 27/05/2015 07:11, Vicente J. Botet Escriba wrote:
> Le 26/05/15 23:46, Aparna Kumta a écrit :
>> On 05/22/15 05:22, John Maddock wrote:
>>> A heads up that the "Version2" rewrite of type traits is now in
>>> develop.
>>>
>>> There's still lots to do - more PR's will happen over the coming
>>> weeks to remove obsoleted code from other libraries (and quash the
>>> warnings that they'd otherwise generate). The docs also need a
>>> major update.
>>>
>>> In the mean time please do shout loudly if there are any regressions
>>> caused by this change.
>> I am seeing several test failures for Oracle Solaris Studio runs on
>> develop branch as follows:
>> http://www.boost.org/development/tests/develop/developer/output/oracle-sparc-S2-stlport4-boost-bin-v2-libs-type_traits-test-common_type_2_test-test-sun-stlport4-release-threading-multi.html
>>
>>
>> "CC" -compat=5 -library=stlport4 -xO4 -mt -erroff=%none -errwarn -m32
>> -KPIC -DBOOST_ALL_NO_LIB=1 -DNDEBUG -I".."
>> -I"../libs/type_traits/test/libs/tt2/light/include" -c -o
>> "/export/home/sstrunk-tester/boost_regression/boost_sparc-S2_stlport4/results/boost/bin.v2/libs/type_traits/test/common_type_2_test.test/sun-stlport4/release/threading-multi/common_type_2_test.o"
>> "../libs/type_traits/test/common_type_2_test.cpp"
>>
>> "../boost/type_traits/common_type.hpp", line 116: Error:
>> detail_type_traits_common_type is not defined.
>> "../boost/type_traits/common_type.hpp", line 116: Error: A
>> declaration does not specify a tag or an identifier.
>> "../boost/type_traits/common_type.hpp", line 116: Error: Use ";" to
>> terminate declarations.
>> "../boost/type_traits/common_type.hpp", line 116: Error: "}" expected
>> instead of"<".
>>
Will Investigate, thanks for the report.
> Thanks for the report. I don't see where the error could be. Do you
> mind to provide the result of the preprocessor on a simple example?
>> In boost/type_traits/common_type.hpp , lines #15- #17,
>> 15 #if defined(__SUNPRO_CC) &&
>> !defined(BOOST_COMMON_TYPE_DONT_USE_TYPEOF)
>> 16 # define BOOST_COMMON_TYPE_DONT_USE_TYPEOF
>> 17 #endif
>>
>> However, __typeof__ is supported and this file needs to be modified
>> to reflect that.
>>
>>
>
> We will need a patch that works for the versions of SunPro providing
> __typeof__. But shouldn't this be part of Boost.Typeof?
> Could you provide such a patch?

Yes Boost.Typeof needs patching as well, but note that since one goal of
the rewrite is to reduce the libraries dependencies, Boost.Typeof is
used as a last resort in common_type, and typeof is used directly when
available.

John.


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