1//////////////////////////////////////////////////////////////////////////////
2//
3// (C) Copyright Ion Gaztanaga 2015-2015. Distributed under the Boost
4// Software License, Version 1.0. (See accompanying file
5// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
6//
7// See http://www.boost.org/libs/container for documentation.
8//
9//////////////////////////////////////////////////////////////////////////////
10
11#include <boost/container/small_vector.hpp>
12
13struct empty
14{
15 friend bool operator == (const empty &, const empty &){ return true; }
16 friend bool operator < (const empty &, const empty &){ return true; }
17};
18
19template class ::boost::container::small_vector<empty, 2>;
20volatile ::boost::container::small_vector<empty, 2> dummy;
21
22#include <boost/container/allocator.hpp>
23#include "movable_int.hpp"
24#include "dummy_test_allocator.hpp"
25
26namespace boost {
27namespace container {
28
29template class small_vector<char, 0>;
30template class small_vector<char, 1>;
31template class small_vector<char, 2>;
32template class small_vector<char, 10>;
33
34template class small_vector<int, 0>;
35template class small_vector<int, 1>;
36template class small_vector<int, 2>;
37template class small_vector<int, 10>;
38
39//Explicit instantiation to detect compilation errors
40template class boost::container::small_vector
41 < test::movable_and_copyable_int
42 , 10
43 , test::simple_allocator<test::movable_and_copyable_int> >;
44
45template class boost::container::small_vector
46 < test::movable_and_copyable_int
47 , 10
48 , allocator<test::movable_and_copyable_int> >;
49
50}}
51
52
53int main()
54{
55 return 0;
56}
57

source code of boost/libs/container/test/explicit_inst_small_vector_test.cpp