mirror of
https://github.com/boostorg/container.git
synced 2025-08-02 22:14:26 +02:00
Use explicit instantiation for iterators defined outside the class in order to detect compilation errors.
[SVN r82815]
This commit is contained in:
@@ -116,6 +116,9 @@ template class flat_multiset
|
|||||||
, std::allocator<test::movable_and_copyable_int>
|
, std::allocator<test::movable_and_copyable_int>
|
||||||
>;
|
>;
|
||||||
|
|
||||||
|
//As flat container iterators are typedefs for vector::[const_]iterator,
|
||||||
|
//no need to explicit instantiate them
|
||||||
|
|
||||||
}} //boost::container
|
}} //boost::container
|
||||||
|
|
||||||
|
|
||||||
|
@@ -32,6 +32,15 @@ template class boost::container::list<test::movable_and_copyable_int,
|
|||||||
template class boost::container::list<test::movable_and_copyable_int,
|
template class boost::container::list<test::movable_and_copyable_int,
|
||||||
std::allocator<test::movable_and_copyable_int> >;
|
std::allocator<test::movable_and_copyable_int> >;
|
||||||
|
|
||||||
|
namespace container_detail {
|
||||||
|
|
||||||
|
template class list_const_iterator
|
||||||
|
<int, intrusive_list_type< std::allocator<int> >::container_type::iterator >;
|
||||||
|
template class list_iterator
|
||||||
|
<int, intrusive_list_type< std::allocator<int> >::container_type::iterator>;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
}}
|
}}
|
||||||
|
|
||||||
typedef list<int> MyList;
|
typedef list<int> MyList;
|
||||||
|
@@ -30,6 +30,16 @@ template class boost::container::slist<test::movable_and_copyable_int,
|
|||||||
|
|
||||||
template class boost::container::slist<test::movable_and_copyable_int,
|
template class boost::container::slist<test::movable_and_copyable_int,
|
||||||
std::allocator<test::movable_and_copyable_int> >;
|
std::allocator<test::movable_and_copyable_int> >;
|
||||||
|
|
||||||
|
namespace container_detail {
|
||||||
|
|
||||||
|
template class slist_const_iterator
|
||||||
|
<int, intrusive_slist_type< std::allocator<int> >::container_type::iterator >;
|
||||||
|
template class slist_iterator
|
||||||
|
<int, intrusive_slist_type< std::allocator<int> >::container_type::iterator>;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
}}
|
}}
|
||||||
|
|
||||||
typedef slist<int> MyList;
|
typedef slist<int> MyList;
|
||||||
|
@@ -39,6 +39,13 @@ template class stable_vector<test::movable_and_copyable_int,
|
|||||||
template class stable_vector<test::movable_and_copyable_int,
|
template class stable_vector<test::movable_and_copyable_int,
|
||||||
std::allocator<test::movable_and_copyable_int> >;
|
std::allocator<test::movable_and_copyable_int> >;
|
||||||
|
|
||||||
|
namespace stable_vector_detail{
|
||||||
|
|
||||||
|
template class iterator< int, int &, int *>;
|
||||||
|
template class iterator< int, const int &, const int *>;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
}}
|
}}
|
||||||
|
|
||||||
class recursive_vector
|
class recursive_vector
|
||||||
|
@@ -39,6 +39,13 @@ template class boost::container::vector<test::movable_and_copyable_int,
|
|||||||
template class boost::container::vector<test::movable_and_copyable_int,
|
template class boost::container::vector<test::movable_and_copyable_int,
|
||||||
std::allocator<test::movable_and_copyable_int> >;
|
std::allocator<test::movable_and_copyable_int> >;
|
||||||
|
|
||||||
|
namespace container_detail {
|
||||||
|
|
||||||
|
template class vector_const_iterator<int*>;
|
||||||
|
template class vector_iterator<int*>;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
}}
|
}}
|
||||||
|
|
||||||
int test_expand_bwd()
|
int test_expand_bwd()
|
||||||
|
Reference in New Issue
Block a user