Boost logo

Boost :

Subject: Re: [boost] [type_traits] Rewrite and dependency free version
From: Edward Diener (eldiener_at_[hidden])
Date: 2015-01-20 18:27:01

On 1/20/2015 12:43 PM, John Maddock wrote:
>> 1) boost::integral_constant is no longer a model of mpl's
>> integral_constant:
>> As a result all of function_types lib is broken. I guess one could
>> argue that if you want to do arithmetic on integral_constant's then one
>> should use MPL all the way through. But it's a big breaking change.
> Never mind, this one is fixed now, function_types tests should all now
> work.

The function_types test look good with gcc, clang, and msvc on Windows.

I am seeing this with type_traits Version2 compiling gcc or clang on
Windows :

// test_has_data_compile.cpp ( reduced from TTI test to show problem )

#include <boost/config.hpp>
#include <boost/type_traits/remove_const.hpp>

int main()
   return 0;

-c -x c++ -O0 -g -fno-inline -Wall -g -DBOOST_ALL_NO_LIB=1 -I"..\..\.."

In file included from test_has_data_compile.cpp:2:
..\..\..\boost/type_traits/remove_const.hpp:25:22: error: token is not a
valid binary operator in a preprocessor subexpression
#if !BOOST_WORKAROUND(__BORLANDC__, < 0x600) && !defined(__IBMCPP__) &&
1 error generated.

The error does not occur with VC++ on Windows.

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