Boost logo

Boost Users :

Subject: Re: [Boost-users] Looping through variadic macro arguments
From: Edward Diener (eldiener_at_[hidden])
Date: 2016-03-31 06:27:04

On 3/31/2016 4:00 AM, Florian Lindner wrote:
> On Wed, 30 Mar 2016 14:42:41 -0400
> Edward Diener <eldiener_at_[hidden]> wrote:
>> On 3/30/2016 4:35 AM, Florian Lindner wrote:
>>> Hey,
>>> I have integrated the code in our project now and it fails to
>>> compile with some older clang version.
>>> It compiles fine with clang++ 3.7.1 and g++ 5.3.0 on my arch
>>> machine as well as g++ 4.8.4 on our ubuntu server, but fails with
>>> clang++ 3.4 on this machine as well as the travis
>>> The complete compiler messages are at
>>> it is mostly something like that:
>>> error: unknown type name 'BOOST_PP_IIF_0'
>>> assertion( reinterpret_cast<Vector&>(*this).size()==toAssign.size()
>>> );
>>> The assertions code is at
>>> as well as all other code files.
>>> If you want to give it a try, you can clone the project and use
>>> clang++ -o
>>> build/debug-nopetsc-nompi/tarch/configuration/ConfigurationRegistry.o
>>> -c -Wall -std=c++11 -fPIC -Wsign-compare -g3 -O0 -DDebug -DAsserts
>>> -I/usr/include -I/usr/include/python2.7
>>> -I/usr/include/python2.7/numpy
>>> src/tarch/configuration/ConfigurationRegistry.cpp
>>> (it's also included in the pastebin above)
>>> Do you have any idea?
>> Would you please post a complete example along with your command line
>> as a Boost bug report for the preprocessor library ? That way I am
>> more likely to take a look at it. My guess, without knowing the
>> details of your example, is just a clang-3.4 bug which has been fixed
>> in a later release but if your problem is easily reproducable I can
>> add a test to the preprocessor tests, based on your example, which
>> shows the clang-3.4 bug. Currently my preprocessor tests using
>> clang-3.4 do not show any problems so incorporating such a test
>> showing a problem will be worthwhile for me.
> Hey,
> I'm very happy to help that way.
> I was able to reproduce that bug in a small piece of code and was doing
> some tests using different versions.
> The bug is triggered using all clang versions (3.4 and 3.7.1 at least)
> if using boost 1.55, and obviously was fixed in 1.56.
> Do you still want me to open a bug report?

If the bug no longer exists in the latest Boost release then there is no
longer a reason to open a bug report. But if you can reproduce the bug
using the latest Boost release a bug report would be very helpful.

I realize many end-users do not use the latest Boost release but it is
very difficult solving problems for end-users when a bug they have
encountered has been subsequently fixed in a later Boost release than
they are using.

Boost-users list run by williamkempf at, kalb at, bjorn.karlsson at, gregod at, wekempf at