1// Boost.Range library
2//
3// Copyright Neil Groves 2014. Use, modification and distribution is subject
4// to the Boost Software License, Version 1.0. (See accompanying file
5// LICENSE_1_0.txt or copy at
6// http://www.boost.org/LICENSE_1_0.txt)
7//
8// For more information, see http://www.boost.org/libs/range
9//
10
11#include "mock_range.hpp"
12#include <boost/iterator/iterator_categories.hpp>
13#include <boost/range/adaptor/copied.hpp>
14
15int main(int, const char**)
16{
17 using boost::range::unit_test::mock_range;
18 using boost::adaptors::copied;
19
20 // This next line should fail when Boost.Range concept checking is
21 // enabled since the adaptor takes at least a RandomAccessRange.
22 return (mock_range<boost::bidirectional_traversal_tag>() |
23 copied(0,1)).front();
24}
25

source code of boost/libs/range/test/compile_fail/adaptor/copied_concept.cpp