Ensure each container type can be explicitly instantiated

This commit is contained in:
Braden Ganetsky
2024-10-06 22:38:00 -05:00
parent 489b50bc0f
commit cfdfae0a65
11 changed files with 56 additions and 0 deletions
+4
View File
@@ -163,6 +163,10 @@ compile-fail unordered/insert_node_type_fail.cpp : <define>UNORDERED_TEST_MULTIM
compile-fail unordered/insert_node_type_fail.cpp : <define>UNORDERED_TEST_SET : insert_node_type_fail_set ;
compile-fail unordered/insert_node_type_fail.cpp : <define>UNORDERED_TEST_MULTISET : insert_node_type_fail_multiset ;
compile unordered/explicit_instantiation_tests.cpp : : fca_explicit_instantiation_tests ;
compile unordered/explicit_instantiation_tests.cpp : <define>BOOST_UNORDERED_FOA_TESTS : foa_explicit_instantiation_tests ;
compile cfoa/explicit_instantiation_tests.cpp : : cfoa_explicit_instantiation_tests ;
local FCA_EXCEPTION_TESTS =
constructor_exception_tests
copy_exception_tests
@@ -0,0 +1,15 @@
// Copyright 2024 Braden Ganetsky
// Distributed under the Boost Software License, Version 1.0.
// https://www.boost.org/LICENSE_1_0.txt
#include <boost/unordered/concurrent_flat_map.hpp>
#include <boost/unordered/concurrent_flat_set.hpp>
#include <boost/unordered/concurrent_node_map.hpp>
#include <boost/unordered/concurrent_node_set.hpp>
template class boost::concurrent_flat_map<int, int>;
template class boost::concurrent_flat_set<int>;
template class boost::concurrent_node_map<int, int>;
template class boost::concurrent_node_set<int>;
int main() { return 0; }
@@ -0,0 +1,29 @@
// Copyright 2024 Braden Ganetsky
// Distributed under the Boost Software License, Version 1.0.
// https://www.boost.org/LICENSE_1_0.txt
#ifdef BOOST_UNORDERED_FOA_TESTS
#include <boost/unordered/unordered_flat_map.hpp>
#include <boost/unordered/unordered_flat_set.hpp>
#include <boost/unordered/unordered_node_map.hpp>
#include <boost/unordered/unordered_node_set.hpp>
template class boost::unordered_flat_map<int, int>;
template class boost::unordered_flat_set<int>;
template class boost::unordered_node_map<int, int>;
template class boost::unordered_node_set<int>;
#else
#include <boost/unordered/unordered_map.hpp>
#include <boost/unordered/unordered_set.hpp>
template class boost::unordered_map<int, int>;
template class boost::unordered_multimap<int, int>;
template class boost::unordered_multiset<int>;
template class boost::unordered_set<int>;
#endif // BOOST_UNORDERED_FOA_TESTS
int main() { return 0; }