mirror of
https://github.com/boostorg/iterator.git
synced 2025-05-09 23:23:54 +00:00
This is a temporary workaround until Boost.Range is fixed by: https://github.com/boostorg/range/pull/154
32 lines
1.0 KiB
C++
32 lines
1.0 KiB
C++
// Copyright (C) 2018 Andrey Semashev
|
|
//
|
|
// Distributed under the Boost Software License, Version 1.0.
|
|
// (See accompanying file LICENSE_1_0.txt or copy at
|
|
// http://www.boost.org/LICENSE_1_0.txt)
|
|
|
|
// The following Boost.MPL includes are needed to mitigate the missing includes in Boost.Range.
|
|
// They can be removed once https://github.com/boostorg/range/pull/154 is merged.
|
|
// -- Begin workaround includes
|
|
#include <boost/mpl/assert.hpp>
|
|
#include <boost/mpl/eval_if.hpp>
|
|
#include <boost/mpl/and.hpp>
|
|
#include <boost/mpl/identity.hpp>
|
|
// -- End of workaround includes
|
|
|
|
#include <boost/range/distance.hpp>
|
|
#include <boost/range/iterator_range_core.hpp>
|
|
#include <boost/iterator/distance.hpp>
|
|
|
|
int main()
|
|
{
|
|
// Test that boost::distance from Boost.Range works with boost::distance from Boost.Iterator
|
|
// (https://github.com/boostorg/iterator/commit/b844c8df530c474ec1856870b9b0de5f487b84d4#commitcomment-30603668)
|
|
|
|
typedef boost::iterator_range<const char*> range_type;
|
|
range_type range;
|
|
|
|
(void)boost::distance(range);
|
|
|
|
return 0;
|
|
}
|