Boost logo

Boost :

Subject: [boost] [exception][range] boost/range/size_type.hpp + unexpected dependenciies Exeception -> Units -> Algorithms -> Range -> Concepts
From: Vicente J. Botet Escriba (vicente.botet_at_[hidden])
Date: 2013-09-17 16:08:42


Hi,

The regression test signal this error

Test output: MinGW-w64-4.5 jc-bell.com - thread - async__async_p /
gcc-mingw-4.5.4
Rev 85699 / Mon, 16 Sep 2013 13:58:07 +0000
Compile [2013-09-16 17:53:55 UTC]:fail

     "g++" -ftemplate-depth-128 -O0 -fno-inline -Wall -pedantic -g -mthreads -Wextra -Wno-long-long -Wno-variadic-macros -Wunused-function -pedantic -DBOOST_ALL_NO_LIB=1 -DBOOST_CHRONO_DYN_LINK=1 -DBOOST_SYSTEM_DYN_LINK=1 -DBOOST_SYSTEM_NO_DEPRECATED -DBOOST_THREAD_BUILD_DLL=1 -DBOOST_THREAD_THROW_IF_PRECONDITION_NOT_SATISFIED -DBOOST_THREAD_USE_DLL=1 -I".." -c -o "F:\boost\GCC\trunk\results\boost\bin.v2\libs\thread\test\async__async_p.test\gcc-mingw-4.5.4\debug\threading-multi\sync\futures\async\async_pass.o" "..\libs\thread\test\sync\futures\async\async_pass.cpp"

In file included from ../boost/range/size.hpp:21:0,
                  from ../boost/range/functions.hpp:20,
                  from ../boost/range/iterator_range_core.hpp:28,
                  from ../boost/range/iterator_range.hpp:13,
                  from ../boost/algorithm/string/replace.hpp:16,
                  from ../boost/units/detail/utility.hpp:25,
                  from ../boost/exception/detail/type_info.hpp:19,
                  from ../boost/exception/detail/object_hex_dump.hpp:15,
                  from ../boost/exception/to_string_stub.hpp:16,
                  from ../boost/exception/info.hpp:16,
                  from ../boost/exception/detail/exception_ptr.hpp:20,
                  from ../boost/exception_ptr.hpp:9,
                  from ../boost/thread/future.hpp:28,
                  from ..\libs\thread\test\sync\futures\async\async_pass.cpp:29:
../boost/range/size_type.hpp:80:5: error: expected ';' before '}' token
../boost/range/size_type.hpp:80:5: error: expected ';' before '}' token
../boost/range/size_type.hpp:87:5: error: expected ';' before '}' token
../boost/range/size_type.hpp:87:5: error: expected ';' before '}' token

BOOST_RANGE_CONCEPT_ASSERT((boost::SinglePassRangeConcept<T>))

This is surely due to a changeset on Boost.Range (85690?).
Maybe an inclusion to Concepts is missing. Could the maintainer take a look?

What is more surprising is the chain of dependencies the inclusion of

boost/exception_ptr.hpp conveys.

Exeception -> Units -> Algorithms -> Range -> Concepts.

Is there a way to break these dependencies?

Best,
Vicente


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